Root Schema : CustomPageMetadata
Type: object
The custom page metadata provides information for the Developer portal framework about how to load and render a custom page.
Show Source
-
anonymousAccess(optional):
boolean
Specifies whether the page is visible when the Developer Portal is accessed without authentication. Defaults to false.
-
button:
object button
Controls the appearance of the custom page's Navigation Bar button.
-
homePage(optional):
string
Specifies whether the page should be used as the landing (home) page of the Developer Portal. The property can take the following values:
- Never: the page is not used as home page. This is the default
- Always: the page is used as the home page.
- Authenticated: the page is used as home page only if a user is logged in.
- Unauthenticated: the page is used as home page only if the Developer Portal is accessed anonymously.
-
module:
object module
The custom page is added to the Developer Portal as a dynamically loaded module. This parameter sepcifies various properties of the module.
{
"type":"object",
"required":[
"button",
"module"
],
"properties":{
"anonymousAccess":{
"type":"boolean",
"description":"Specifies whether the page is visible when the Developer Portal is accessed without authentication. Defaults to <strong>false</strong>."
},
"button":{
"type":"object",
"description":"Controls the appearance of the custom page's Navigation Bar button.",
"properties":{
"icon":{
"type":"object",
"description":"Icon data for the custom button.",
"properties":{
"image":{
"type":"string",
"description":"The data URL of the icon."
}
},
"required":[
"image"
]
},
"text":{
"type":"object",
"description":"Specifies the text of the Navigation Bar button.",
"properties":{
"{{language-id}}":{
"type":"string",
"description":"The button text in the specified language."
},
"root":{
"type":"string",
"description":"The default (English) button text."
}
},
"required":[
"root"
]
},
"order":{
"type":"integer",
"description":"Controls the position of the button in the Navigation Bar. The numbering of the built-in buttons starts from 1000 and grows in 1000 increments."
}
},
"required":[
"order",
"text"
]
},
"module":{
"type":"object",
"description":"The custom page is added to the Developer Portal as a dynamically loaded module. This parameter sepcifies various properties of the module.",
"properties":{
"documentationUrl":{
"type":"string",
"description":"Defines the Help link for the custom page. The Help button will open the specified page in a new tab. If not defined, the start page of the standard Developer Portal documentation will be displayed."
},
"urlScheme":{
"type":"array",
"description":"Defines the URL path(s) associated with the module. This path will be appended to "/developers/" when you navigate to the page."
},
"implementation":{
"type":"object",
"description":"<p>Configures parameters for the Developer Portal on how the page should be loaded. All file names specified by properties in this object must be relative to the zipped content you uploaded for the page.</p><p>Your page is typically built from HTML, CSS and JS files. The <strong>implementation</strong> object controls how these files get loaded into the Developer Portal.</p>",
"properties":{
"css":{
"type":"array",
"description":"The CSS files listed here will be loaded by adding <link> tags to the <head> element of the Developer portal page."
},
"document":{
"type":"string",
"description":"The name of the HTML file that renders your page. This should not be a full HTML document, just an HTML segment (typically a <div> tag) that gets embedded into the Developer Portal's HTML DOM."
},
"js":{
"type":"array",
"description":"The JS files listed here will be loaded by adding <script> tags to the <head> element of the Developer portal page."
},
"requirejs":{
"type":"object",
"description":"The Developer Portal is a RequireJS-based application and the recommended way of implementing a custom page is to write it as RequireJS modules.",
"properties":{
"path":{
"type":"string",
"description":"If the custom page consists of multiple RequireJS modules, the root location of the page file hierarchy must be specified for RequireJS. This property represents an alias name for the root location, which the Developer adds to the RequireJS path configuration. The custom page's RequireJS modules can then reference other modules by using the "<alias>/..." references in their dependency list."
},
"start":{
"type":"string",
"description":"<p>Specifies the start module of the page. Since it will be loaded through RequireJS, the .js extension must be omitted.</p><p>The define() method of the start module should return an object with an init() method. When the module is loaded and the init() method exists, the Developer portal calls it with two parameters:</p><ul><li><strong>container</strong>: A container object the properties and methods of which the custom page can access the overall Developer Portal environment.</li><li><strong>element</strong>: The parent HTMLElement into which the HTML of the page is embedded.</li></ul>"
}
},
"required":[
"start"
]
}
},
"required":[
"document"
]
}
},
"required":[
"implementation",
"urlScheme"
]
},
"homePage":{
"type":"string",
"description":"Specifies whether the page should be used as the landing (home) page of the Developer Portal. The property can take the following values:<ul><li><strong>Never</strong>: the page is not used as home page. This is the default</li><li><strong>Always</strong>: the page is used as the home page.</li><li><strong>Authenticated</strong>: the page is used as home page only if a user is logged in.</li><li><strong>Unauthenticated</strong>: the page is used as home page only if the Developer Portal is accessed anonymously.</li></ul>"
}
},
"description":"The custom page metadata provides information for the Developer portal framework about how to load and render a custom page."
}
Nested Schema : button
Type: object
Controls the appearance of the custom page's Navigation Bar button.
Show Source
-
icon(optional):
object icon
Icon data for the custom button.
-
order:
integer
Controls the position of the button in the Navigation Bar. The numbering of the built-in buttons starts from 1000 and grows in 1000 increments.
-
text:
object text
Specifies the text of the Navigation Bar button.
{
"type":"object",
"description":"Controls the appearance of the custom page's Navigation Bar button.",
"properties":{
"icon":{
"type":"object",
"description":"Icon data for the custom button.",
"properties":{
"image":{
"type":"string",
"description":"The data URL of the icon."
}
},
"required":[
"image"
]
},
"text":{
"type":"object",
"description":"Specifies the text of the Navigation Bar button.",
"properties":{
"{{language-id}}":{
"type":"string",
"description":"The button text in the specified language."
},
"root":{
"type":"string",
"description":"The default (English) button text."
}
},
"required":[
"root"
]
},
"order":{
"type":"integer",
"description":"Controls the position of the button in the Navigation Bar. The numbering of the built-in buttons starts from 1000 and grows in 1000 increments."
}
},
"required":[
"order",
"text"
]
}
Nested Schema : module
Type: object
The custom page is added to the Developer Portal as a dynamically loaded module. This parameter sepcifies various properties of the module.
Show Source
-
documentationUrl(optional):
string
Defines the Help link for the custom page. The Help button will open the specified page in a new tab. If not defined, the start page of the standard Developer Portal documentation will be displayed.
-
implementation:
object implementation
Configures parameters for the Developer Portal on how the page should be loaded. All file names specified by properties in this object must be relative to the zipped content you uploaded for the page.
Your page is typically built from HTML, CSS and JS files. The implementation object controls how these files get loaded into the Developer Portal.
-
urlScheme:
array urlScheme
Defines the URL path(s) associated with the module. This path will be appended to "/developers/" when you navigate to the page.
{
"type":"object",
"description":"The custom page is added to the Developer Portal as a dynamically loaded module. This parameter sepcifies various properties of the module.",
"properties":{
"documentationUrl":{
"type":"string",
"description":"Defines the Help link for the custom page. The Help button will open the specified page in a new tab. If not defined, the start page of the standard Developer Portal documentation will be displayed."
},
"urlScheme":{
"type":"array",
"description":"Defines the URL path(s) associated with the module. This path will be appended to "/developers/" when you navigate to the page."
},
"implementation":{
"type":"object",
"description":"<p>Configures parameters for the Developer Portal on how the page should be loaded. All file names specified by properties in this object must be relative to the zipped content you uploaded for the page.</p><p>Your page is typically built from HTML, CSS and JS files. The <strong>implementation</strong> object controls how these files get loaded into the Developer Portal.</p>",
"properties":{
"css":{
"type":"array",
"description":"The CSS files listed here will be loaded by adding <link> tags to the <head> element of the Developer portal page."
},
"document":{
"type":"string",
"description":"The name of the HTML file that renders your page. This should not be a full HTML document, just an HTML segment (typically a <div> tag) that gets embedded into the Developer Portal's HTML DOM."
},
"js":{
"type":"array",
"description":"The JS files listed here will be loaded by adding <script> tags to the <head> element of the Developer portal page."
},
"requirejs":{
"type":"object",
"description":"The Developer Portal is a RequireJS-based application and the recommended way of implementing a custom page is to write it as RequireJS modules.",
"properties":{
"path":{
"type":"string",
"description":"If the custom page consists of multiple RequireJS modules, the root location of the page file hierarchy must be specified for RequireJS. This property represents an alias name for the root location, which the Developer adds to the RequireJS path configuration. The custom page's RequireJS modules can then reference other modules by using the "<alias>/..." references in their dependency list."
},
"start":{
"type":"string",
"description":"<p>Specifies the start module of the page. Since it will be loaded through RequireJS, the .js extension must be omitted.</p><p>The define() method of the start module should return an object with an init() method. When the module is loaded and the init() method exists, the Developer portal calls it with two parameters:</p><ul><li><strong>container</strong>: A container object the properties and methods of which the custom page can access the overall Developer Portal environment.</li><li><strong>element</strong>: The parent HTMLElement into which the HTML of the page is embedded.</li></ul>"
}
},
"required":[
"start"
]
}
},
"required":[
"document"
]
}
},
"required":[
"implementation",
"urlScheme"
]
}
Nested Schema : icon
Type: object
Icon data for the custom button.
Show Source
{
"type":"object",
"description":"Icon data for the custom button.",
"properties":{
"image":{
"type":"string",
"description":"The data URL of the icon."
}
},
"required":[
"image"
]
}
Nested Schema : text
Type: object
Specifies the text of the Navigation Bar button.
Show Source
{
"type":"object",
"description":"Specifies the text of the Navigation Bar button.",
"properties":{
"{{language-id}}":{
"type":"string",
"description":"The button text in the specified language."
},
"root":{
"type":"string",
"description":"The default (English) button text."
}
},
"required":[
"root"
]
}
Nested Schema : implementation
Type: object
Configures parameters for the Developer Portal on how the page should be loaded. All file names specified by properties in this object must be relative to the zipped content you uploaded for the page.
Your page is typically built from HTML, CSS and JS files. The implementation object controls how these files get loaded into the Developer Portal.
Show Source
-
css(optional):
array css
The CSS files listed here will be loaded by adding <link> tags to the <head> element of the Developer portal page.
-
document:
string
The name of the HTML file that renders your page. This should not be a full HTML document, just an HTML segment (typically a <div> tag) that gets embedded into the Developer Portal's HTML DOM.
-
js(optional):
array js
The JS files listed here will be loaded by adding <script> tags to the <head> element of the Developer portal page.
-
requirejs(optional):
object requirejs
The Developer Portal is a RequireJS-based application and the recommended way of implementing a custom page is to write it as RequireJS modules.
{
"type":"object",
"description":"<p>Configures parameters for the Developer Portal on how the page should be loaded. All file names specified by properties in this object must be relative to the zipped content you uploaded for the page.</p><p>Your page is typically built from HTML, CSS and JS files. The <strong>implementation</strong> object controls how these files get loaded into the Developer Portal.</p>",
"properties":{
"css":{
"type":"array",
"description":"The CSS files listed here will be loaded by adding <link> tags to the <head> element of the Developer portal page."
},
"document":{
"type":"string",
"description":"The name of the HTML file that renders your page. This should not be a full HTML document, just an HTML segment (typically a <div> tag) that gets embedded into the Developer Portal's HTML DOM."
},
"js":{
"type":"array",
"description":"The JS files listed here will be loaded by adding <script> tags to the <head> element of the Developer portal page."
},
"requirejs":{
"type":"object",
"description":"The Developer Portal is a RequireJS-based application and the recommended way of implementing a custom page is to write it as RequireJS modules.",
"properties":{
"path":{
"type":"string",
"description":"If the custom page consists of multiple RequireJS modules, the root location of the page file hierarchy must be specified for RequireJS. This property represents an alias name for the root location, which the Developer adds to the RequireJS path configuration. The custom page's RequireJS modules can then reference other modules by using the "<alias>/..." references in their dependency list."
},
"start":{
"type":"string",
"description":"<p>Specifies the start module of the page. Since it will be loaded through RequireJS, the .js extension must be omitted.</p><p>The define() method of the start module should return an object with an init() method. When the module is loaded and the init() method exists, the Developer portal calls it with two parameters:</p><ul><li><strong>container</strong>: A container object the properties and methods of which the custom page can access the overall Developer Portal environment.</li><li><strong>element</strong>: The parent HTMLElement into which the HTML of the page is embedded.</li></ul>"
}
},
"required":[
"start"
]
}
},
"required":[
"document"
]
}
Nested Schema : urlScheme
Type: array
Defines the URL path(s) associated with the module. This path will be appended to "/developers/" when you navigate to the page.
Nested Schema : css
Type: array
The CSS files listed here will be loaded by adding <link> tags to the <head> element of the Developer portal page.
Nested Schema : js
Type: array
The JS files listed here will be loaded by adding <script> tags to the <head> element of the Developer portal page.
Nested Schema : requirejs
Type: object
The Developer Portal is a RequireJS-based application and the recommended way of implementing a custom page is to write it as RequireJS modules.
Show Source
-
path(optional):
string
If the custom page consists of multiple RequireJS modules, the root location of the page file hierarchy must be specified for RequireJS. This property represents an alias name for the root location, which the Developer adds to the RequireJS path configuration. The custom page's RequireJS modules can then reference other modules by using the "<alias>/..." references in their dependency list.
-
start:
string
Specifies the start module of the page. Since it will be loaded through RequireJS, the .js extension must be omitted.
The define() method of the start module should return an object with an init() method. When the module is loaded and the init() method exists, the Developer portal calls it with two parameters:
- container: A container object the properties and methods of which the custom page can access the overall Developer Portal environment.
- element: The parent HTMLElement into which the HTML of the page is embedded.
{
"type":"object",
"description":"The Developer Portal is a RequireJS-based application and the recommended way of implementing a custom page is to write it as RequireJS modules.",
"properties":{
"path":{
"type":"string",
"description":"If the custom page consists of multiple RequireJS modules, the root location of the page file hierarchy must be specified for RequireJS. This property represents an alias name for the root location, which the Developer adds to the RequireJS path configuration. The custom page's RequireJS modules can then reference other modules by using the "<alias>/..." references in their dependency list."
},
"start":{
"type":"string",
"description":"<p>Specifies the start module of the page. Since it will be loaded through RequireJS, the .js extension must be omitted.</p><p>The define() method of the start module should return an object with an init() method. When the module is loaded and the init() method exists, the Developer portal calls it with two parameters:</p><ul><li><strong>container</strong>: A container object the properties and methods of which the custom page can access the overall Developer Portal environment.</li><li><strong>element</strong>: The parent HTMLElement into which the HTML of the page is embedded.</li></ul>"
}
},
"required":[
"start"
]
}