This chapter describes the resource model for SOA as a Service (SOAaS) APIs and OSB as a Service (OSBaaS) APIs and their responses.
In particular, this chapter contain the following topics:
This section lists the APIs for PaaS Infrastructure zone and Middleware pool.
The following table shows an example of a GET operation on the Resource providers URI to return its representation.
The following table shows an example of a POST operation on the Resource providers URI to create a PaaS infrastructure zone.
Table 54-2 POST Request Configuration for Creating a PaaS Infrastructure Zone
Feature | Description |
---|---|
URI |
/em/websvcs/restful/extws/cloudservices/admin/cfw/v2/resourceproviders |
Request headers |
Authorization: Basic c3lzbWFuOnN5c21hbg== |
Body |
{ "useExistingTarget" : false, "name": "WlaaS_Zone1","type": "self_service_zone", "credentials": [ {"name":"normal_credential_guid","description":"This is description frpm the REST method","value": "AIME_CLOUD_CRED"}], "memberTargetType": "host", "members":["slc05tgu.example.com","slc02pog.example.com"], "placementConstraints":[{"name":"MAX_CPU_UTILIZATION","value":["80"]},{"name":"MAX_MEMORY_ALLOCATION","value":["80"]}], "characteristics":[{"name":"ORACLE.SYSMAN.CFW.SELF_SERVICE_ZONE","value":["70F61D030338B79AFEC42E008AF6F6B7"]}, {"name":"ORACLE.SYSMAN.CFW.ORCL_GTP_CONTACT","value":["123456789"]}, {"name":"ORACLE.SYSMAN.CFW.ORCL_GTP_COST_CENTER","value":["IDC.LEX"]}, {"name":"ORACLE.SYSMAN.CFW.ORCL_GTP_DEPARTMENT","value":["FMW"]}, {"name":"ORACLE.SYSMAN.CFW.ORCL_GTP_LIFECYCLE_STATUS","value":["Test"]}, {"name":"ORACLE.SYSMAN.CFW.ORCL_GTP_LINE_OF_BUS","value":["ST"]}, {"name":"ORACLE.SYSMAN.CFW.ORCL_GTP_LOCATION","value":["IDC"]}], "roles":["MWAS_SSA_USER_ROLE1"] } |
Request method |
POST |
The following table shows an example of a POST operation on the Resource providers URI to create a Middleware pool.
Table 54-3 POST Request Configuration for Creating a Middleware Pool
Feature | Description |
---|---|
URI |
/em/websvcs/restful/extws/cloudservices/admin/cfw/v2/resourceproviders |
Request headers |
Authorization: Basic c3lzbWFuOnN5c21hbg== |
Body |
{"useExistingTarget":"false", "name":"WlaaS_Pool1","type":"mwaas_zone","description":"This is a Windows Pool for WLAAS testing", "memberTargetType":"host", "members":["slc05tgu.example.com","slc02pog.example.com"], "parentResourceProviderId":"1", "placementConstraints":[{"name":"MAX_INSTANCES","value":"10"}], "memberConstraints":[{"name":"ORACLE.SYSMAN.EMAS.MWC.WLAAS.PLATFORM","value":"226"}], "characteristics":[{"name":"ORACLE.SYSMAN.CFW.ORCL_GTP_COST_CENTER","value":"IDC"}] } |
Request method |
POST |
The following table shows an example of a PUT operation to update the PaaS infrastructure zone.
Table 54-4 PUT Request Configuration for Updating a PaaS Infrastructure Zone
Feature | Description |
---|---|
URI |
/em/websvcs/restful/extws/cloudservices/admin/cfw/v2/resourceproviders/1 |
Request headers |
Authorization: Basic c3lzbWFuOnN5c21hbg== |
Body |
{"description":"This is description from the REST PUT method", "placementConstraints":[{"name":"MAX_CPU_UTILIZATION","value":["90"]}, {"name":"MAX_MEMORY_ALLOCATION","value":["90"]} ] } |
Request method |
PUT |
The following table shows an example of a PUT operation to update a Middleware pool.
Table 54-5 PUT Request Configuration for Updating a Middleware Pool
Feature | Description |
---|---|
URI |
/em/websvcs/restful/extws/cloudservices/admin/cfw/v2/resourceproviders/2 |
Request headers |
Authorization: Basic c3lzbWFuOnN5c21hbg== |
Body |
{ "placementConstraints":[{"name":"NUMBER_OF_INSTANCES","value":["15"]}] } |
Request method |
PUT |
The following table shows an example of a DELETE operation to delete a PaaS Infrastructure zone or Middleware pool.
This section lists the SOA/OSB APIs for Quotas.
The following table shows an example of a GET operation on the quotas URI to return its representation. This operation returns quota settings for all the SSA user roles for MWaaS.
Table 54-7 GET Request Configuration for Viewing Details of Quota Settings
Feature | Description |
---|---|
URI |
em/websvcs/restful/extws/cloudservices/admin/wlaas/v2/quotas |
Request headers |
Authorization: Basic c3lzbWFuOnN5c21hbg== |
Body |
None |
Request method |
GET |
A sample of the response received is shown below.
{ name: "Middleware Cloud Quotas" description: "Middleware Cloud Quotas per SSA User Role" quotas: [1] 0: { roleName: "SSA_USER_ROLE" memory: "4" javaServersCount: "10" }- - selfLink: "https://slc06ekg.us.example.com:5416/em/websvcs/restful/extws/cloudservices/admin/wlaas/v2/quotas" }
The following table shows an example of a POST operation on the quotas URI to create a quota for the SSA user role.
Table 54-8 POST Request Configuration for Creating a Quota Setting for a SSA User Role
Feature | Description |
---|---|
URI |
em/websvcs/restful/extws/cloudservices/admin/wlaas/v2/quotas |
Request headers |
Authorization: Basic c3lzbWFuOnN5c21hbg== |
Body |
{ "roleName": "SSA_ROLE" "memory": "5" "javaServersCount": "10" } |
Request method |
POST |
The following table shows an example of a PUT operation to update a quota for the SSA user role.
Table 54-9 PUT Request Configuration for Updating a Quota Setting for a SSA User Role
Feature | Description |
---|---|
URI |
em/websvcs/restful/extws/cloudservices/admin/wlaas/v2/quotas |
Request headers |
Authorization: Basic c3lzbWFuOnN5c21hbg== |
Body |
{ "roleName": "SSA_ROLE" "memory": "10" "javaServersCount": "5" } |
Request method |
PUT |
The following table shows an example of a DELETE operation to delete a quota for a SSA user role.
This section lists the APIs for Service Templates,
The following table shows an example of a GET operation on the service templates URI to return its representation.
The following table shows an example of a GET operation on a specific service template URI to return its representation.
The following table shows an example of a DELETE operation to delete a service template.
The table below lists the POST request configuration for creating SOA/OSB service templates.
The following table shows an example of a GET operation on the service template type URI to return its representation.
The following is an example of a POST operation on the Service Template URI to update the Service template metadata information.
Table 54-15 POST Request Configuration for Getting Service Template Metadata Details
Feature | Description |
---|---|
URI |
em/websvcs/restful/extws/cloudservices/admin/cfw/v2/servicetemplates/metadata |
Request headers |
Authorization: Basic c3lzbWFuOnN5c21hbg== |
Body |
{ "serviceType":"OSB_SERVICE", "serviceTemplateTypeId":"21" } |
Request method |
POST |
The following is an example of a POST operation on the Service Template URI to create the resource providers.
Table 54-16 POST Request Configuration for Getting the Resource Provider Characteristics
Feature | Description |
---|---|
URI |
/em/websvcs/restful/extws/cloudservices/admin/cfw/v2/servicetemplates/resourceProviders |
Request headers |
Authorization: Basic c3lzbWFuOnN5c21hbg== |
Body |
{ "serviceType": "OSB_SERVICE", "serviceTemplateTypeId": "21", "rscProvAssocOption": [ "byRscLookupChars" ], "selectedExecutableName": { "name": "MW_OSBAAS_CREATE_INSTANCE", "type": "STRING", "value": "SOAaaSOuterDP", "defaultValue": "SOAaaSOuterDP", "required": true, "secret": false }, "payloads": [ { "name": "Profile for OSB", "value": "<user_input>", "required": true } ], "characteristics": [] } |
Request method |
POST |
The following is an example of a POST operation on the Service Template URI to create the service template configuration.
Table 54-17 POST Request Configuration for Creating the Resource Providers
Feature | Description |
---|---|
URI |
/em/websvcs/restful/extws/cloudservices/admin/cfw/v2/servicetemplates/configurations |
Request headers |
Authorization: Basic c3lzbWFuOnN5c21hbg== |
Body |
Payload: Use b,c responses. { "serviceType":"OSB_SERVICE", "serviceTemplateTypeId":"21", "rscProvAssocOption":["byRscLookupChars"], "payloads":[ { "name":"Profile for OSB", "value":"oracle:defaultService:em:provisioning:1:cmp:COMP_Component:SUB_FMWBundle:0792B0CF52D06888E053AC75B10A17C8:0.1" } ], "resourceProvider": { "lookupCharacteristics": [ { "characteristics": [ { "name": "ORACLE.SYSMAN.EMAS.MWAAS_ZONE", "values":["C5E76791838043BC71F5D6B70886F13B"] } ], "purposeId": 1 } ] } } |
Request method |
POST |
The following is an example of a POST operation on the Service Template URI to create the service templates using the responses received.
Table 54-18 POST Request Configuration for Creating the Resource Providers
Feature | Description |
---|---|
URI |
/em/websvcs/restful/extws/cloudservices/admin/cfw/v2/servicetemplates |
Request headers |
Authorization: Basic c3lzbWFuOnN5c21hbg== |
Body |
{ "name": "OSB_ST1", "displayName": "OSB_ST1", "serviceType": "OSB_SERVICE", "serviceTemplateTypeId": "21", "rscProvAssocOption":["byRscProvInst"], "roles": [ "SSA_USER1" ], "payloads": [ { "name": "Profile for OSB", "value": "oracle:defaultService:em:provisioning:1:cmp:COMP_Component:SUB_FMWBundle:0792B0CF52D06888E053AC75B10A17C8:0.1", "required": null } ], "selectedExecutableName": [ { "name": "MW_OSBAAS_CREATE_INSTANCE", "value": "SOAaaSOuterDP" } ], "resourceProvider": { "lookupCharacteristics": [ { "characteristics": [ { "name": "ORACLE.SYSMAN.EMAS.MWAAS_ZONE", "values":["C5E76791838043BC71F5D6B70886F13B"] } ], "purposeId": 1 } ] }, "configurations": [ { "name": "postScriptForInstanceCreation", "type": "SWLIB", "description": "Script that is invoked after service instance creation", "required": false, "secret": false, "value":"<URN of Script>" }, { "name": "portRangeStart", "type": "STRING", "description": "Port Range Start", "value": "1024", "required": true, "secret": false }, |
{ "name": "preScriptForInstanceCreation", "type": "SWLIB", "description": "Script that is invoked before service instance creation", "required": false, "secret": false, "value":"<URN of Script>" }, { "name": "destinationFmwBase", "type": "STRING", "description": "Middleware Base Location", "value": "/scratch/osb_mid1", "required": true, "secret": false }, { "name": "workDir", "type": "STRING", "description": "Work Directory", "value": "$MIDDLEWARE_HOME/work", "required": true, "secret": false }, { "name": "wlsUserName", "type": "STRING", "description": "Weblogic Admin UserName", "value": "weblogic", "required": true, "secret": false }, { "name": "startupArguments", "type": "STRING", "description": "Server Startup Arguments", "value" : "", "required": true, "secret": false }, { "name": "namedCredforHostList", "type": "STRING", "description": "Enter the EM Named Credentials to be used for the above hosts in the 'Host for Executing Scripts' field", "required": false, "secret": false, "value":"CredName:CredOwner" }, { "name": "destinationAdminServerPassword", "type": "STRING", "description": "Password for the WebLogic Server", "value" : "welcome1" "required": true, "secret": true }, |
|
{ "name": "computedCpuUsagePerServer", "type": "STRING", "description": "Avg CPU Usage", "value": "1.0", "required": true, "secret": false }, { "name": "portRangeEnd", "type": "STRING", "description": "Port Range End", "value": "65535", "required": true, "secret": false }, { "name": "jdkHome", "type": "STRING", "description": "Jdk Home", "value": "/usr/local/packages/jdk6", "required": true, "secret": false }, { "name": "computedMemoryUsagePerServer", "type": "STRING", "description": "Max Heap", "value": "0.45", "required": true, "secret": false }, { "name": "enableLoadBalancer", "type": "STRING", "description": "Is LBR", "value": "0", "required": true, "secret": false }, { "name": "preScriptForInstanceDeletion", "type": "SWLIB", "description": "Script that is invoked before service instance deletion", "required": false, "secret": false }, { "name": "isScriptExecuteOnManagedServers", "type": "STRING", "description": "Is Script Executable On Managed Server Hosts", "value": "0", "required": true, "secret": false }, |
|
{ "name": "hostListForScripts", "type": "STRING", "description": "Use ',' to separate multiple target hosts", "required": false, "secret": false, "value":"host1,host2" }, { "name": "postScriptForInstanceDeletion", "type": "SWLIB", "description": "Script that is invoked after service instance deletion", "required": false, "secret": false }, { "name": "isScriptExecuteOnAdminServer", "type": "STRING", "description": "Is Script Executable On Admin Server", "value": "0", "required": true, "secret": false }, { "name": "destinationDomainHome", "type": "STRING", "description": "Domain Home", "value": "$MIDDLEWARE_HOME/domains", "required": true, "secret": false } ] } |
|
Request method |
POST |
This section explains the API examples related to the Load Balancer Configuration.
Viewing Details of all the Load Balancer Configuration Resource
Viewing Details of the specified Load Balancer Configuration
The table below lists the GET request configuration.
The table below lists the GET request configuration for viewing details of the specified Load Balancer Configuration.
The following is an example of a POST operation on the Load Balancer URI to create the load balancer configuration.
Table 54-21 POST Request Configuration for Creating the Load Balancer Providers
Feature | Description |
---|---|
URI |
/em/websvcs/restful/extws/cloudservices/admin/wlaas/v2/lbrconfigs |
Request headers |
Authorization :Basic c3lzbWFuOnN5c21hbg== |
Body |
{ "name": "lbr1", "description": "desc by rest", "type": "OHS", "host": "slc06ekg.example.com", "agentTargetName": "slc06ekg.example.com:1838", "credential": "NC_HOST_2014-11-06-070337", "instanceHome": "/scratch/PS5_OHS/instance_home", "properties":{ "items": [ {"name":"HTTP_PORT_RANGE", "value":"8000-9000"}, {"name":"OHS_ROUTING_PROTOCOL", "value": "HTTP"}, {"name":"COMPONENT_NAME", "value": "ohs1"} ] }, "poolTargets": [ "0FC6D3F6A9FB2456422C1094DA5D14A9" ] } |
Request method |
POST |
The table below lists the PUT request configuration for editing the Load Balancer Configuration.
Table 54-22 PUT Request Configuration for Editing the Load Balancer Configuration
Feature | Description |
---|---|
URI |
/em/websvcs/restful/extws/cloudservices/admin/wlaas/v2/lbrconfigs |
Request headers |
Authorization :Basic c3lzbWFuOnN5c21hbg== |
Body |
{ "name": "lbr1", "description": "desc by rest", "type": "OHS", "id":1004, "host": "slc06ekg.example.com", "agentTargetName": "slc06ekg.example.com:1838", "credential": "NC_HOST_2014-11-06-070337", "instanceHome": "/scratch/PS5_OHS/instance_home", "properties":{ "items": [ {"name":"HTTP_PORT_RANGE", "value":"8000-9000"}, {"name":"OHS_ROUTING_PROTOCOL", "value": "HTTP"}, {"name":"COMPONENT_NAME", "value": "ohs1"} ] }, "poolTargets": [ "0FC6D3F6A9FB2456422C1094DA5D14A9" ] } |
Request method |
PUT |
The table below lists the POST request configuration for deleting a Load Balancer Configuration.
The following API examples are described in this section:
The following table shows an example of a GET operation to view all the service templates.
The following table shows an example of a GET operation to view all the service instances.
The following table shows an example of a GET operation to view all the service instances with UP
status.
The following table shows an example of a GET operation to view the service offering metadata
The following table shows an example of a POST operation to request a service instance.
Table 54-28 POST Request Configuration for Creating a Service Instance Request
Feature | Description |
---|---|
URI |
em/websvcs/restful/extws/cloudservices/ssa/cfw/v2/services |
Request headers |
Authorization: Basic c3NhX3VzZXIxOndlbGNvbWUx |
Body |
{ "offeringId":"080C47B7F8EA20ECE053AC75B10A50E3", "name":"rest_inst01","instanceName":"rest_inst01", "characteristics": [ { "name": "ORACLE.SYSMAN.EMAS.MWAAS_ZONE", "value": "98EB4ECCB01F91E40AA45708112E3920" ] } ], "configurations": [ { "name": "wlsNewPassword", "type": "STRING", "description": "New Admin password", "required": true, "secret": true, "value" : "password" }, { "name": "destinationDBTargetName", "type": "STRING", "description": "SOA Database Service Instance Name", "required": true, "secret": false, "value":"SOADB" }, { "name": "soaTokens", "type": "VECTOR", "description": "SOA Tokens", "values": [ "port=80", "host=www.aol.com" ], "required": false, "secret": false }, { "name": "destinationDBTargetType", "type": "STRING", "description": "SOA Database Service Instance Target Type", "required": true, "secret": false, "value":" oracle_database" }, { "name": "destinationSchemaPassword", "type": "STRING", "description": "SOA Database Schema Password", "required": true, "secret": true, "value":"DBPassword" }, |
{ "name": "startupArguments", "type": "STRING", "description": "Server Startup Arguments", "value": "", "required": true, "secret": false }, { "name": "wlsNewUserName", "type": "STRING", "description": "New Admin User Name", "required": true, "secret": false, "value":"weblogic_user" } ] } |
|
Request method |
POST |
The following table shows an example of a GET operation to perform an action on the service instance based on the action id.
The following table shows an example of a PUT operation to stop a service instance.
The following table shows an example of a PUT operation to start a service instance.
The following table shows an example of a PUT operation to delete a service instance.
The following table shows an example of a PUT operation to scale up a service instance.
Table 54-33 PUT Request Configuration for Scaling Up a Service Instance
Feature | Description |
---|---|
URI |
/em/websvcs/restful/extws/cloudservices/ssa/cfw/v2/serviceinstances/21324EF5A81B4D8ECA7F835A209B857E |
Request headers |
None |
Body |
{"actionId":29, "configurations": [{"name": "numberOfServers","value": "2"}] } |
Request method |
PUT |
A sample of the response received is shown below.
{ "requests":[{"id":"621", "actionName":"SCALE_UP", "canonicalLink":{"href":"https://xyxy.example.com:11040/em/websvcs/restful/extws/cloudservices/ssa/cfw/v2/servicerequests/621"} }] }