Customize the Look and Feel of the Developer Portal
You must be assigned the Administrator role to customize the look and feel of the Developer Portal.
See Sample Developer Portal Configuration File for a sample configuration file. The recommended method to customize the portal is to download the JSON file and change only the objects that you want to modify. The result will be a subset of the original configuration file that you can post to the REST service. The Developer Portal merges your definitions on top of the original configuration file at run-time and modifies the configuration. You can also post a partial JSON file as long as it retains the same structure as the original configuration file.
See Set configuration in the REST API for the Consumer Service for details about what each line in the configuration file does. You can find this REST API under Portal > Customization > Developer Portal Configuration.
Only users assigned the Administrator role can post a configuration file using the REST API.
Sample Developer Portal Configuration File
The sample is the default Developer Portal configuration file included in a fresh Oracle API Platform Cloud Service deployment.
{
"language": "en",
"resources": "oap/core/i18n/resources/",
"branding": {
"vendor": "${i18n.branding.vendor}",
"product": "${i18n.branding.product}",
"product_short": "${i18n.branding.product_short}",
"title": "${i18n.branding.title}",
"logo": {
"url": "oap/css/images/login/OracleLogoBLK.png",
"width": "auto",
"height": "17px",
"alignment": "baseline"
},
"login": {
"logo": {
"url": "oap/css/images/login/OracleLogoBLK.png",
"width": "137px"
},
"productLogo": "oap/css/images/login/productLogo.png",
"background": {
"desktop": "oap/css/images/login/Desktop.jpg",
"tablet": {
"portrait": "oap/css/images/login/TabletPT.jpg",
"landscape": "oap/css/images/login/TabletLS.jpg"
},
"mobile": {
"portrait": "oap/css/images/login/MobilePT.jpg",
"landscape": "oap/css/images/login/MobileLS.jpg"
}
},
"css": {
}
},
"icon": {
"url": "oap/css/images/general/favicon.ico",
"type": "image/x-icon"
},
"about": {
"body": [
"${i18n.oap.navbar.about.paragraph1}",
"${i18n.oap.navbar.about.paragraph2}"
],
"links": [
{
"text": "${i18n.oap.navbar.about.links.aboutOracle}",
"url": "http://www.oracle.com/us/corporate/index.html#menu-about"
},
{
"text": "${i18n.oap.navbar.about.links.contactUs}",
"url": "http://www.oracle.com/us/corporate/contact/index.html"
},
{
"text": "${i18n.oap.navbar.about.links.legalNotices}",
"url": "http://www.oracle.com/us/legal/index.html"
},
{
"text": "${i18n.oap.navbar.about.links.termsOfUse}",
"url": "http://www.oracle.com/us/legal/terms/index.html"
},
{
"text": "${i18n.oap.navbar.about.links.privacyRights}",
"url": "http://www.oracle.com/us/legal/privacy/index.html"
}
]
},
"copyright": "${i18n.branding.copyright}"
},
"css": {
"*": {
"font-family": "\"Helvetica Neue\",Helvetica,Arial,sans-serif",
"font-size": "14px"
}
},
"services": {
"portal": "services/portal/v1/",
"manager": "services/management/v1/",
"analytics": "services/analytics/v1/",
"administration": "services/administration/v1/",
"console": "console/"
},
"session": {
"logout": "${documentBaseUri}/logout",
"timeout": "${documentBaseUri}/logout?session"
},
"modules": {
"base": "oap/modules/",
"inventory": {
"header": {
"path": "header/",
"css": {
"*": {
"font-size": "1.5em",
"background-color": "#f0f0f0"
}
}
},
"navbar": {
"path": "navbar/",
"documentationUrl": "http://www.oracle.com/pls/topic/lookup?ctx=cloud&id=api-platform-cloud-dev-tasks"
},
"messaging": {
"path": "messaging/"
},
"error": {
"path": "error/"
},
"login": {
"path": "login/",
"urlScheme": "login",
"loadIndicator": false,
"fullScreen": "full-height,no-viewport-scaling"
},
"api.catalog": {
"path": "api/catalog/",
"urlScheme": "apis",
"pageId": {
"root": "EB69C5B6-3B51-48E1-91CF-B4E8996A1973"
}
},
"api.details": {
"path": "api/details/",
"urlScheme": [
"apis/{vanityName}",
"apis/{vanityName}/{iteration:published|current}",
"apis/{vanityName}/{section:overview|documentation}",
"apis/{vanityName}/{section:overview|documentation}/{iteration:published|current}",
"apis/{vanityName}/{iteration:published|current}/{section:overview|documentation}"
],
"title": "${api.name} - ${config.branding.title}",
"pageId": {
"root": "AA9E8B29-E37D-48A3-A497-45FD5150C722",
"deep": {
"documentation": "BECD3CE5-3945-4A24-AF14-D703A43BC62F"
}
},
"domain": "api.catalog",
"data": {
"apiaryTheme": {
"tableOfContents": {
"section": {
"color": "#0572ce",
"fontFamily": "arial, helvetica, sans serif",
"fontWeight": "normal",
"paddingBottom": "10px",
"title": {
"padding": "2px 0px",
"$hover": {
"backgroundColor": "#e4f0fa",
"text": {
}
}
},
"item": {
"paddingLeft": "16px",
"borderLeft": "3px solid transparent",
"text": {
"margin": "2px 0px 1px 0px"
},
"$hover": {
"backgroundColor": "#e4f0fa",
"text": {
}
},
"$selected": {
"borderLeft": "3px solid #0572ce",
"text": {
}
},
"subitems": {
"subitem": {
"borderLeft": "2px solid transparent",
"$hover": {
"text": {
}
},
"$selected": {
"borderLeft": "2px solid #0572ce",
"text": {
}
}
}
}
}
}
},
"humanColumn": {
"content": {
"fontFamily": "arial, helvetica, sans serif",
"apiName": {
"color": "black",
"fontSize": "36px",
"fontWeight": "normal"
},
"section": {
"marginBottom": "20px",
"title": {
"text": {
"color": "#ed813e"
}
},
"apiDescription": {
"p": {
"color": "black",
"fontSize": "15px",
"lineHeight": "1.1em"
}
},
"resourceGroups": {
"resourceGroup": {
"marginTop": "0px",
"name": {
"color": "black",
"fontSize": "24px",
"fontWeight": "normal",
"marginBottom": "10px"
},
"resources": {
"resource": {
"name": {
"color": "black",
"fontSize": "28px",
"fontWeight": "normal"
},
"description": {
"p": {
"color": "black",
"fontSize": "15px",
"lineHeight": "1.1em"
}
},
"actions": {
"action": {
"paddingLeft": "0px",
"description": {
"p": {
"color": "black",
"fontSize": "15px",
"lineHeight": "1.1em"
}
},
"invitation": {
"$hover": {
"backgroundColor": "#e4f0fa"
},
"$selected": {
"backgroundColor": "#0572ce"
},
"$selected$hover": {
"backgroundColor": "#0572ce"
},
"tag": {
"$get": {
"backgroundColor": "#267db3"
},
"$post": {
"backgroundColor": "#68c182"
},
"$put": {
"backgroundColor": "#fad55c"
},
"$delete": {
"backgroundColor": "#ed6647"
},
"$patch": {
"backgroundColor": "#8561c8"
},
"$head": {
"backgroundColor": "#6ddbdb"
},
"$options": {
"backgroundColor": "#ffb54d"
}
}
}
}
}
}
},
"description": {
"color": "black",
"fontSize": "15px",
"lineHeight": "1.1em"
}
}
}
}
}
},
"machineColumn": {
"header": {
},
"content": {
"destination": {
"container": {
"uriTemplate": {
"container": {
"variable": {
"color": "#0572ce"
}
}
},
"method": {
"color": "white",
"border-radius": "0px",
"border": "1px solid #ccc",
"$get": {
"color": "white",
"backgroundColor": "#267db3"
},
"$post": {
"color": "white",
"backgroundColor": "#68c182"
},
"$put": {
"color": "black",
"backgroundColor": "#fad55c"
},
"$delete": {
"color": "white",
"backgroundColor": "#ed6647"
},
"$patch": {
"color": "white",
"backgroundColor": "#8561c8"
},
"$head": {
"color": "black",
"backgroundColor": "#6ddbdb"
},
"$options": {
"color": "black",
"backgroundColor": "#ffb54d"
}
}
}
},
"parameters": {
"list": {
"parameter": {
"key": {
"color": "#0572ce"
}
}
}
}
},
"console": {
"breadcrumbs": {
"font-size": "15px",
"color": "#999",
"backgroundColor": "#e4f0fa",
"borderTop": "0px",
"borderBottom": "0px",
"height": "32px",
"action": {
"color": "#666"
}
},
"form": {
"tabs": {
"buttonGroup": {
"borderRadius": "2px",
"border": "1px solid #c4ced7",
"height": "28px",
"item": {
"backgroundColor": "#e4e8ea",
"color": "black",
"$selected": {
"backgroundColor": "#0572ce",
"color": "white",
"fontWeight": "normal"
}
}
}
},
"headers": {
"addHeaderButton": {
"p": {
"color": "#0572ce"
}
}
},
"destination": {
"container": {
"uriTemplate": {
"container": {
"variable": {
"color": "#0572ce"
}
}
},
"method": {
"border-radius": "0px",
"border": "1px solid #ccc",
"$get": {
"color": "white",
"backgroundColor": "#267db3"
},
"$post": {
"color": "white",
"backgroundColor": "#68c182"
},
"$put": {
"color": "black",
"backgroundColor": "#fad55c"
},
"$delete": {
"color": "white",
"backgroundColor": "#ed6647"
},
"$patch": {
"color": "white",
"backgroundColor": "#8561c8"
},
"$head": {
"color": "black",
"backgroundColor": "#6ddbdb"
},
"$options": {
"color": "black",
"backgroundColor": "#ffb54d"
}
}
}
},
"parameters": {
"list": {
"parameter": {
"name": {
"color": "#0572ce"
}
}
}
},
"buttons": {
"submit": {
"button": {
"backgroundColor": "#009c38",
"text": {
"color": "white"
}
}
},
"reset": {
"button": {
"backgroundColor": "#e4e8ea",
"text": {
"color": "black"
}
}
}
}
}
}
}
}
}
},
"api.register": {
"path": "api/register/",
"urlScheme": "apis/{vanityName}/register",
"title": "${api.name} - ${config.branding.title}",
"domain": "api.catalog",
"pageId": {
"root": "982267B8-72E1-4468-BE46-E24D78301665"
}
},
"api.embeddeddoc": {
"path": "api/embeddeddoc/"
},
"application.catalog": {
"path": "application/catalog/",
"urlScheme": "applications",
"pageId": {
"root": "DE7D5CC2-7FD2-47E0-90A3-84D86B74203C",
"deep": {
"create": "8B5CF77F-8C0A-4B72-A295-E96808B2907A"
}
}
},
"application.details": {
"path": "application/details/",
"urlScheme": [
"applications/{id:number}",
"applications/{id:number}/{section:overview|registeredapis|analytics|users}"
],
"domain": "application.catalog",
"pageId": {
"root": "792268FC-FCA1-435F-A199-AA4E545C650E",
"deep": {
"apis": "ED226B19-251B-4676-82AC-E7E610325059",
"grants": "43610297-84FA-425D-9F7E-37886D692C18"
}
}
},
"application.edit": {
"path": "application/edit/"
},
"application.analytics": {
"path": "application/analytics/",
"data": {
"refreshFrequency": 15,
"ranges": {
"default": "last24hours",
"main": {
"today": {
"order": 1,
"title": "${i18n.oap.application.analytics.label.today}",
"range": {
"from": "day.floor(now)",
"to": "day.offset(from,1)"
},
"granularity": {
"unit": "minute",
"length": 30
}
},
"last24hours": {
"order": 2,
"title": "${i18n.oap.application.analytics.label.last24hours}",
"range": {
"from": "day.offset(now,-1)",
"to": "now"
},
"granularity": {
"unit": "minute",
"length": 30
}
}
},
"other": {
"currentHour": {
"order": 1,
"title": "${i18n.oap.application.analytics.timecontrol.currentHour}",
"range": {
"from": "hour.floor(now)",
"to": "hour.offset(from,1)"
},
"granularity": {
"unit": "minute",
"length": 1
}
},
"currentWeek": {
"order": 2,
"title": "${i18n.oap.application.analytics.timecontrol.currentWeek}",
"range": {
"from": "week.floor(now)",
"to": "week.offset(from,1)"
},
"granularity": {
"unit": "hour",
"length": 6
}
},
"month": {
"order": 3,
"title": "${i18n.oap.application.analytics.timecontrol.month}",
"items": {
"current": {
"order": 1,
"title": "${i18n.oap.application.analytics.timecontrol.current}",
"range": {
"from": "month.floor(now)",
"to": "month.offset(from,1)"
},
"granularity": {
"unit": "day",
"length": 1
}
},
"january": {
"order": 2,
"title": "${i18n.oap.commonui.months.january}",
"range": {
"from": "year.last(date(now.year,1,1))",
"to": "month.offset(from,1)"
},
"granularity": {
"unit": "day",
"length": 1
}
},
"february": {
"order": 3,
"title": "${i18n.oap.commonui.months.february}",
"range": {
"from": "year.last(date(now.year,2,1))",
"to": "month.offset(from,1)"
},
"granularity": {
"unit": "day",
"length": 1
}
},
"march": {
"order": 4,
"title": "${i18n.oap.commonui.months.march}",
"range": {
"from": "year.last(date(now.year,3,1))",
"to": "month.offset(from,1)"
},
"granularity": {
"unit": "day",
"length": 1
}
},
"april": {
"order": 5,
"title": "${i18n.oap.commonui.months.april}",
"range": {
"from": "year.last(date(now.year,4,1))",
"to": "month.offset(from,1)"
},
"granularity": {
"unit": "day",
"length": 1
}
},
"may": {
"order": 6,
"title": "${i18n.oap.commonui.months.may}",
"range": {
"from": "year.last(date(now.year,5,1))",
"to": "month.offset(from,1)"
},
"granularity": {
"unit": "day",
"length": 1
}
},
"june": {
"order": 7,
"title": "${i18n.oap.commonui.months.june}",
"range": {
"from": "year.last(date(now.year,6,1))",
"to": "month.offset(from,1)"
},
"granularity": {
"unit": "day",
"length": 1
}
},
"july": {
"order": 8,
"title": "${i18n.oap.commonui.months.july}",
"range": {
"from": "year.last(date(now.year,7,1))",
"to": "month.offset(from,1)"
},
"granularity": {
"unit": "day",
"length": 1
}
},
"august": {
"order": 9,
"title": "${i18n.oap.commonui.months.august}",
"range": {
"from": "year.last(date(now.year,8,1))",
"to": "month.offset(from,1)"
},
"granularity": {
"unit": "day",
"length": 1
}
},
"september": {
"order": 10,
"title": "${i18n.oap.commonui.months.september}",
"range": {
"from": "year.last(date(now.year,9,1))",
"to": "month.offset(from,1)"
},
"granularity": {
"unit": "day",
"length": 1
}
},
"october": {
"order": 11,
"title": "${i18n.oap.commonui.months.october}",
"range": {
"from": "year.last(date(now.year,10,1))",
"to": "month.offset(from,1)"
},
"granularity": {
"unit": "day",
"length": 1
}
},
"november": {
"order": 12,
"title": "${i18n.oap.commonui.months.november}",
"range": {
"from": "year.last(date(now.year,11,1))",
"to": "month.offset(from,1)"
},
"granularity": {
"unit": "day",
"length": 1
}
},
"december": {
"order": 13,
"title": "${i18n.oap.commonui.months.december}",
"range": {
"from": "year.last(date(now.year,12,1))",
"to": "month.offset(from,1)"
},
"granularity": {
"unit": "day",
"length": 1
}
}
}
},
"year": {
"order": 4,
"title": "${i18n.oap.application.analytics.timecontrol.year}",
"items": {
"2016": {
"order": 1,
"title": "2016",
"range": {
"from": "date(2016,1,1)",
"to": "year.offset(from,1)"
},
"granularity": {
"unit": "week",
"length": 1
}
},
"2015": {
"order": 2,
"title": "2015",
"range": {
"from": "date(2015,1,1)",
"to": "year.offset(from,1)"
},
"granularity": {
"unit": "week",
"length": 1
}
},
"2014": {
"order": 3,
"title": "2014",
"range": {
"from": "date(2014,1,1)",
"to": "year.offset(from,1)"
},
"granularity": {
"unit": "week",
"length": 1
}
}
}
},
"last": {
"order": 5,
"title": "${i18n.oap.application.analytics.timecontrol.last}",
"items": {
"last15minutes": {
"order": 1,
"title": "${i18n.oap.application.analytics.timecontrol.last15minutes}",
"range": {
"from": "minute.offset(now,-14)",
"to": "now"
},
"granularity": {
"unit": "minute",
"length": 1
}
},
"last60minutes": {
"order": 2,
"title": "${i18n.oap.application.analytics.timecontrol.last60minutes}",
"range": {
"from": "hour.offset(now,-1)",
"to": "now"
},
"granularity": {
"unit": "minute",
"length": 1
}
},
"last24hours": {
"order": 3,
"title": "${i18n.oap.application.analytics.timecontrol.last24hours}",
"range": {
"from": "day.offset(now,-1)",
"to": "now"
},
"granularity": {
"unit": "minute",
"length": 30
}
},
"last7days": {
"order": 4,
"title": "${i18n.oap.application.analytics.timecontrol.last7days}",
"range": {
"from": "day.offset(day.floor(now),-6)",
"to": "day.ceil(now)"
},
"granularity": {
"unit": "hour",
"length": 6
}
},
"last30days": {
"order": 5,
"title": "${i18n.oap.application.analytics.timecontrol.last30days}",
"range": {
"from": "day.offset(day.floor(now),-29)",
"to": "day.ceil(now)"
},
"granularity": {
"unit": "day",
"length": 1
}
},
"last365days": {
"order": 6,
"title": "${i18n.oap.application.analytics.timecontrol.last365days}",
"range": {
"from": "day.offset(day.floor(now),-364)",
"to": "day.ceil(now)"
},
"granularity": {
"unit": "week",
"length": 1
}
}
}
}
}
}
},
"pageId": {
"deep": {
"general": "CBD80181-7B89-4B34-AEF9-65833F9736CD",
"errors": "83BB0064-6774-4F39-8B31-4D3CEC84B1E9"
}
}
}
},
"redirect": {
}
},
"layout": {
"home": {
"module": "api.catalog"
},
"panels": {
"header": {
"selector": "header",
"module": "header"
},
"main": {
"selector": "main",
"module": "${window.location.pathname}",
"options": {
"loadIndicator": true,
"updatePageTitle": true
}
},
"messages": {
"selector": "main .oap-messaging",
"module": "messaging"
}
},
"navigation": {
"panel": "main",
"trackHistory": true
}
},
"documentation": {
"url": "http://www.oracle.com/pls/topic/lookup?ctx=cloud&id=APFDV-GUID-${pageId}"
},
"tracers": {
"i18n": "Error",
"services": "Error",
"applications": "Error",
"apis": "Error"
}
}