A API Management REST-based API

This appendix describes the RESTful API interface that Oracle Communications Services Gatekeeper uses to manage APIs and create the Services Gatekeeper PRM GUI tools. You can use this API for manage APIs, or to extend or replace the default Services Gatekeeper GUI tools.

Understanding the Partner Relationship Management API

You use the API Management API to:

  • Manage APIs within Services Gatekeeper

  • Modify or replace these GUI tools:

    • The API and Partner Manager Portal

    • Partner Manager Portal

    • Network Service Supplier Portal

The API Management API is the interface for creating, changing, and deleting the objects that define APIs, PRM partners and groups, and so on. Like any RESTful API, the API Management API makes its services available to client applications through simple HTTP requests. However, secure HTTP (HTTPs) is required for all operations in this API.

The Services Gatekeeper servers must be up and running to access this API.

Several types of clients connect to Services Gatekeeper, including the Administration Console client process and the portal GUIs. Services Gatekeeper listens for API Management API at the port configured for client HTTP access. Before using this API, ensure that the managed server is configured to accept web requests.

Creating and Updating Objects

To add partners, groups, and APIs, you use the API Management API to create the data objects that represent the entities you want to add.

The body of PUT or POST requests should contain JSON or XML-formatted data that describes the entity, such as a partner's name and contact information.

To update an object, specify the new value for a parameter in the body of the PUT or POST request. You only need to supply the new or changing parameter values to modify and not for the entire object.

The message body is either JSON or XML object depending on the Content-Type header field setting.

Understanding API Management API Error Handling

When an API operation succeeds, it returns a response with HTTP status code 200.

If an error occurs, these operations return a response that has an HTTP code reflecting the nature of the error. These error codes include:

  • 400 - Request not accepted because a request value is not acceptable. Details are in the response body.

  • 401 - Username or password incorrect.

  • 404 - Resource/URL does not exist.

  • 405 - Method not allowed.

  • 406 - Request method not supported by the URL.

  • 500 - Internal system error.

  • 503 - Service unavailable.

API Management API Operations

The following sections list the RESTful operations of the API Management API.

API and Partner Manager Portal Operations

The API and Partner Manager Portal GUI uses the operations listed in this section.

API Management Operations

These operations manage your APIs:

Group Management Operations

These operations manage both your groups and accounts:

Partner Management Operations

These operations manage your partners:

Application Management Operations

These operations manage your applications:

System Configuration Operations

These operations manage the configuration settings:

Partner Portal Operations

The Partner Manager Portal GUI uses the operations listed in this section.

Account Management Operations

These operations manage your GUIs.

Application Management Operations

These operations manage your applications:

Network Service Supplier Portal Operations

The Network Service Supplier GUI uses these operations.

Network Interface Management Operations

These operations manage your network interfaces:

Understanding the API Management API Objects

Table A-1 Lists the apiObject parameters, which Services Gatekeeper uses to define an API.

Table A-1 apiObject Parameters

Parameter Type Description

apiId

String

The objects unique identifier generated by Services Gatekeeper.

apiName

String

A unique name for the object. A combination of the objects name and API version.

apiVersion

String

 

status

String

The object's status. Can be: CREATED, PUBLISHED, SUSPENDED, DEPRECATED, or RETIRED.

accessUrl

URI

The URI used to access the object.

apiInterfaces

apiInterface Object

API interface field list. See Table A-2, "apiInterface Parameters" for details.

description

String

An informal description of the API

facade

String

Either REST or SOAP.

serviceType

String

One of:

  • by-url - Uses and existing URL

  • by-file - Uses a WSDL or WADL file

  • by-registered - Uses an existing registered network service.

  • by-ocsg-cs - Uses an existing Services Gatekeeper communication services.

protocol

String

Usually the network URL. If the serviceType value is by-registered, then us the network interface ID.

privilege

Integer

One of:

  • 0 - Specifies a public API which can be used by all groups.

  • 1 - Specifies a private API which can only be used by specific partners.

link

String

A link to the API documentation.

accessType

String

One of:

  • HTTP

  • HTTPS

  • BOTH

authType

String

The application-facing authentication type. One of:

  • NONE

  • TEXT

  • OAUTH

groups

String List

If the value for the privilege parameter is 1 (private API), returns a list of the groups allowed. The syntax is: ["group1","group2"]

wadlfiles

WADL file

The WADL fileName and fileContent strings for network-facing WADL files.

northBoundWadlFiles

WADL file

The WADL fileName and fileContent strings for application-facing WADL files

direction

String

One of:

  • AOMT - Application Originated Mobile Terminated

  • MOAT - Mobile Originated Application Terminated

networkAuthorizationURI

URL

The network-facing authorization server URL.

networkTokenk URI

URL

The network-facing token URL.

networkClientRedirectionURI

URL

The network-facing client redirection URL.


Table A-2 lists the apiInterface object parameters.

Table A-2 apiInterface Parameters

Parameter Type Description

name

String

The interface name

displayName

String

The display name.

fileLocation

String

The URL of the file.

apiMethods

apiMethod object

A list of the apiMethod parameters. See Table A-3, "apiMethod Parameters" for details.


Table A-3 lists the apiMethod object parameters.

Table A-3 apiMethod Parameters

Parameter Type Description

name

String

The resource name.

path

URL

The path to the application resource.

httpVerb

String

For application-facing REST requests, one of: HEAD, GET, POST, PUT, DELETE, TRACE, OPTIONS, CONNECT, PATCH. For application-facing SOAP messages, the SOAP method name.

servicePath

String

The path to the network service.

serviceHttpVerb

String

For network-facing REST messages, one of: HEAD, GET, POST, PUT, DELETE, TRACE, OPTIONS, CONNECT, PATCH. For network-facing SOAP requests, the SOAP method name.

expose

Boolean

True if the resource should be exposed, and false if not.


getAPIs

Retrieve a list of apiObjects which represent APIs.

Authorization

Partner Manager Administrator

HTTP Method

GET

URI

/prm_pm_rest/services/prm_pm/services/partner_manager/api/PartnerManagerApi/getAPIs

Request Body

This operation does not use any request parameters.

Response Body

This operation returns these parameters:

Examples

Example A-1 getAPIs Request Example

GET /prm_pm_rest/services/prm_pm/services/partner_manager/api/PartnerManagerApi/getAPIs

Example A-2 getAPIs Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)
{"getAPIsResponse": {"return": [{"apiId":
"32d03e51-1d57-43e2-9077-37cef5712750","apiName": "0919-1","apiVersion": "1","status": "CREATED","accessUrl":
"https://localhost:8001/daf/0919-1/1","apiInterfaces": [{"name":
"Payment-v1.1","displayName": "Payment-v1.1","fileLocation":
"https://doc.payment.access.url/v11"}],"description": "api description","facade":
"REST","seviceType": "by-registered","protocol":
"b421bded-0974-4045-81cf-0cfb8a01c538","privilege": 0,"link": "https://1.com",
"accessType": "HTTP","authType": "TEXT","authToken": "jack:apache","direction":
"AOMT"}]}} 

getAPI

Retrieve an API object based on it's apiId parameter.

Authorization

Partner Manager Administrator

HTTP Method

GET

URI

/prm_pm_rest/services/prm_pm/services/partner_manager/api/PartnerManagerApi/getAPI/apiName

Request Body

This operation uses these request parameters:

Response Body

This operation returns these parameters:

Examples

Example A-3 getAPI Request Example

GET https://10.182.98.78:9001/apis
/prm_pm_rest/services/prm_pm/services/partner_manager/api/PartnerManagerApi/getAPI/
{"apiId": "d7f1068b-906f-4a8f-829a-2e7858ed07c9"

Example A-4 getAPI Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)
{"getAPIResponse": {"return": {"apiId":
 "d7f1068b-906f-4a8f-829a-2e7858ed07c9","apiName": "pjhweather","apiVersion":
"1","status": "DEPRECATED","accessUrl":
 "https://127.0.0.1/pjhweather/1","apiInterfaces": [{ "name": "pjhweather-v1",
"apiMethods": [{ "name": "weather", "displayName": "weather", "path": "weather",
 "httpVerb": "GET", "servicePath": "forecastrss", "serviceHttpVerb": "GET",
"expose": true }], "displayName": "pjhweather-v1", "fileLocation":
 "https://www.pjh.com/weather" }],"description": "pjh weather","facade":
"REST","seviceType": "by-url","protocol":
 "https://weather.yahooapis.com/","privilege": 1,"link":
"https://www.pjh.com/weather","accessType": "HTTP","authType": "NONE","groups":
["default_sp_group"],"direction": "AOMT"}}} 

createAPI

Create a new API object for use with Services Gatekeeper.

Authorization

Partner Manager Administrator

HTTP Method

POST

URI

/prm_pm_rest/services/prm_pm/services/partner_manager/api/PartnerManagerApi/createAPI

Request Body

This operation uses these request parameters:

Response Body

This operation does use any response parameters.

Example

Example A-5 createAPIs Request Example

POST https://10.182.98.78:9001/apis 
/prm_pm_rest/services/prm_pm/services/partner_manager/api/PartnerManagerApi/createAPI
{"createAPI":{"apiObject":{"apiName": "api-0919-12","apiVersion":
"1","accessUrl": "https://localhost:8081/api-0919-11/1","apiInterfaces": [{"name":
"OneAPI SMS-v1.1","apiMethods": [{"name": "createOutboundMessage","displayName":
"createOutboundMessage","path": "/outbound/{senderAddress}/requests","httpVerb":
"POST","servicePath": "/outbound/{senderAddress}/requests","serviceHttpVerb":
"POST","expose": true}, {"name": "createOutboundSubscription","displayName":
"createOutboundSubscription","path":
"/outbound/{senderAddress}/subscriptions","httpVerb": "POST","servicePath":
"/outbound/{senderAddress}/subscriptions","serviceHttpVerb": "POST","expose":
false}, {"name": "deleteOutboundSubscriptionById","displayName":
"deleteOutboundSubscriptionById","path":
"/outbound/subscriptions/{subscriptionId}","httpVerb": "DELETE","servicePath":
"/outbound/subscriptions/{subscriptionId}","serviceHttpVerb": "DELETE","expose":
false}, {"name": "getOutboundMessageDeliveryInfoById","displayName":
"getOutboundMessageDeliveryInfoById","path":
"/outbound/{senderAddress}/requests/{requestId}/deliveryInfos","httpVerb":
"GET","servicePath":
"/outbound/{senderAddress}/requests/{requestId}/deliveryInfos","serviceHttpVerb":
"GET","expose": false}],"displayName": "OneAPI SMS-v1.1"}],"description":
"kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk","facade": "REST","seviceType":
"by-registered","protocol": "af4b3707-e4e3-4836-bf6d-df7f8bcd2e12","privilege":
1,"link": "https://1.com","accessType": "HTTP","authType": "TEXT","authToken":
"jack:apache","groups": ["aaaa"],"direction": "AOMT","networkAuthorizationURI":
"authuri","networkTokenURI": "tokenuri","networkClientRedirectURI":
"redirect","icon":
"icon","wadlFiles":[{"fileName":"aaaa","fileContent":"aaaa"},{"fileName":"bbbb",
"fileContent":"bbbb"}],"northBoundWadlFiles":[{"fileName":"north-aaaa",
"fileContent":"north-aaaa"},{"fileName":"north-bbbb","fileContent":"north-bbbb"}]}}} 

Example A-6 createAPI Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

editAPI

Change fields on an apiObject object.

Authorization

Partner Manager Administrator

HTTP Method

POST

URI

/prm_pm_rest/services/prm_pm/services/partner_manager/api/PartnerManagerApi/editAPI

Request Body

This operation uses these request parameters:

Response Body

This operation does not use any response parameters.

Examples

Example A-7 editAPIs Request Example

POST https://10.182.98.78:9001/apis 
/prm_pm_rest/services/prm_pm/services/partner_manager/api/PartnerManagerApi/editAPI
{"editAPI":{"apiObject":{"apiId":"ba32cbb8-d97e-4d87-bf7c-0ca1bdd1d3e7",
"apiName":"api-0925-1","apiVersion":"1","accessUrl":"https://localhost:
8081/daf/api-0925-1/1","apiInterfaces":[{"name":"api-0925-1-v1","apiMethods":
[{"name":"getLocation","displayName":"getLocation","path":"/getLocation/
{subscriber}","httpVerb":"GET","servicePath":"/getLocation/{subscriber}",
"serviceHttpVerb":"GET","expose":true}],"displayName":"api-0925-1-v1",
"fileLocation":"https://1.com"}],"wadlFiles":[],"northBoundWadlFiles":[],
"description":"api-0925-1 description hahahaha","facade":"REST",
"direction":"AOMT","seviceType":"by-url","protocol":"","privilege":0,"link":
"https://1.com","accessType":"HTTP","authType":"NONE","authToken":"","n

Example A-8 editAPIs Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

deleteAPI

Delete an apiObject object.

Authorization

Partner Manager Administrator

HTTP Method

DELETE

URI

/prm_pm_rest/services/prm_pm/services/partner_manager/api/PartnerManagerApi/deleteAPI/apiName

Request Body

This operation uses these request parameters:

Response Body

This operation does use any response parameters.

Examples

Example A-9 deleteAPIs Request Example

DELETE https://10.182.98.78:9001/apis
/prm_pm_rest/services/prm_pm/services/partner_manager/api/PartnerManagerApi/deleteAPI/
{"deleteAPI":{"apiName":"8cdc8cdc-61e0-4ec2-9fc1-c9e71c1821e8"}}

Example A-10 deleteAPIs Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

updateAPIStatus

Change the status parameter of an apiObject. See Table A-1, "apiObject Parameters" for a list of the values allowed for the status parameter.

Authorization

Partner Manager Administrator

HTTP Method

POST

URI

/prm_pm_rest/services/prm_pm/services/partner_manager/api/PartnerManagerApi/updateApiStatus

Request Body

This operation uses these request parameters:

  • apiName (String) Mandatory. The apiName parameter of the apiObject.

  • apiVersion (String) Mandatory. The apiVersion parameter of the apiObject object.

  • status (String) Mandatory. The new status parameter to apply to the apiObject. See Table A-1, "apiObject Parameters" for a list of the values allowed for the status parameter.

Response Body

This operation does not return any parameters.

Examples

Example A-11 updateAPIStatus Request Example

POST https://10.182.98.78:9001/apis
/prm_pm_rest/services/prm_pm/services/partner_manager/api/PartnerManagerApi/updateApiStatus
{"updateApiStatus":{"apiName":"8cdc8cdc-61e0-4ec2-9fc1-c9e71c1821e8",
"apiVersion":"1","status":"PUBLISHED"}}

Example A-12 updateAPIStatus Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

listApplicationsForAPI

List all applications using an API.

Authorization

Partner Manager Administrator

HTTP Method

GET

URI

/prm_pm_rest/services/prm_pm/services/partner_manager/api/PartnerManagerApi/listApplicationsForAPI/apiName

Request Body

This operation uses these request parameters:

  • apiName (String) Mandatory. The apiName parameter from an apiObject. Identifies the API you want a list of applications for.

Response Body

This operation returns these parameters:

  • ListApplicationsForAPIResponse (application list). A list of the applications currently using the API.

Examples

Example A-13 listApplicationsForAPI Request Example

GET https://10.182.98.78:9001/apis
/prm_pm_rest/services/prm_pm/services/partner_manager/api/PartnerManagerApi/listApplicationsForAPI/apiName
{"apiName":"8cdc8cdc-61e0-4ec2-9fc1-c9e71c1821e8"}

Example A-14 listApplicationsForAPI Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)
{"ListApplicationsForAPI":{"return":[{"applicationID":"fa0183a3-1a57-4acb-
9aac-1846b54cb18b","applicationName":"app-0828-1","partnerName":"guest1",
"partnerCompany":"oracle","description":"app-0828-1app-0828-1app-0828-1app-
0828-1app-0828-1app-0828-1app-0828-1app-0828-1","applicationAPIs":[{"apiName":
"api-0825-1","accessURL":"https://localhost:8001/api-0825-1/1","apiVersion":"1",
"apiDescription":"api-0825-1api-0825-1api-0825-1api-0825-1",
"applicationMethodSLAs":[{"methodName":"","interfaceName":
"9380cdb2-c584-42ca-929f-761f216f0e69","quota":{"days":0,"limitExceedOK":
false,"qtaLimit":0},"rate":{"reqLimit":0,"timePeriod":0},"methodGuarantee":
{"reqLimitGuarantee":0,"timePeriodGuarantee":0}}],"needReadContract":false}],
"trafficUser":"rotterzeng_app-0828-1","trafficPassword":"guest1_
app-0828-1","submitDate":"2014-08-28+08:00","effectiveFrom":"2014-08-01+08:00",
"effectiveTo":"2014-08-31+08:00","status":"ACTIVE","lockStatus":"UNLOCKED",
"quota":{"days":1,"limitExceedOK":true,"qtaLimit":1},"rate":{
"reqLimit":1,"timePeriod":1}}]}

listAPILifeCycle

List the API life cycle for an API.

Authorization

Partner Manager Administrator

HTTP Method

GET

URI

/prm_pm_rest/services/prm_pm/services/partner_manager/api/PartnerManagerApi/listAPILifeCycle/apiName/apiVersion

Request Body

This operation uses these request parameters:

Response Body

This operation uses these response parameters:

  • id (String). A valid record ID value of an apiObject.

  • apiName (String). A valid apiName value of an apiObject.

  • apiVersion (String). A valid apiVersion for the apiObject.

  • operator (String). The name of the operator who last updated the apiObject status.

  • date (String). The date when the status was last updated.

  • content (String). The value for the status that was changed.

Examples

Example A-15 listAPILifeCycle Request Example

GET https://10.182.98.78:9001/apis 
/prm_pm_rest/services/prm_pm/services/partner_manager/api/PartnerManagerApi/listAPILifeCycle/
{"listAPILifeCycle":{"apiName":"8cdc8cdc-61e0-4ec2-9fc1-c9e71c1821e8",
"apiVersion":"1","status":"PUBLISHED"}}

Example A-16 listAPILifeCycle Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)
{"ListAPILifeCycleResponse":{"return":[{"id":"9471f463-8c74-42c0-9832-
a73ebb060404","apiName":"api-0925-1","apiVersion":"1","operator":"op",
"date":"09/25/2014 16:59:37","content":"Created"},
{"id":"8c97e48b-3251-45d8-8b6e-dd1b16fbd369","apiName":"api-0925-1","apiVersion"
:"1","operator":"op","date":"09/25/2014 16:44:31","content":"Created"}]}} 

listAllGroups

This operations returns a list of all serviceProviderGroup objects.

Authorization

Partner Manager Administrator

HTTP Method

GET

URI

/prm_pm_rest/services/partner_manager/group/PartnerManagerSlaGroup/listAllGroups

Request Body

This operation does not use any request parameters.

Response Body

This operation returns a serviceProviderGroup object and the associated quota and rate objects. Table A-4, "serviceProviderGroup Object Parameters" lists the serviceProviderGroup object parameters.

Table A-4 serviceProviderGroup Object Parameters

Parameter Data Type Description

group

string

The group name.

quota

quota object

Defines the maximum number of messages that a subscriber can send during a quota period. Table A-5, "quota Object Parameters" lists the quota object parameters.

rate

rate object

Defines the maximum number of messages allowed during the quota period. Table A-6, "rate Object Parameters" lists the rate object parameters.

totalPartners

Integer

The number of partners that belong to the group.


Table A-5 quota Object Parameters

Parameter Data Type Descriptions

days

Integer

The number of days the quota is valid.

limitExceedOK

Boolean

Whether the user can exceed the quota.

qtaLimit

Integer

The maximum number of messages allowed during the quota.


Table A-6 rate Object Parameters

Parameter Data Type Description

reqLimit

Integer

The maximum number of messages allowed furing the quota period.

timePeriod

Integer

The time period in seconds.


Examples

Example A-17 listAllGroups Request Example

GET https://10.182.98.78:9001/groups 
/prm_pm_rest/services/partner_manager/group/PartnerManagerSlaGroup/listAllGroups

Example A-18 listAllGroups Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)
{"listAllGroupsResponse":{"return":[{"group":"0903-1","quota":{"days":1,
"limitExceedOK":false,"qtaLimit":1},"rate":{"reqLimit":1,"timePeriod":1000},
"totalPartners":0},{"group":"0903-2","quota":{"days":1,"limitExceedOK":false,
"qtaLimit":1},"rate":{"reqLimit":1,"timePeriod":1000},"totalPartners":0},
{"group":"aaaa","quota":{"days":1,"limitExceedOK":false,"qtaLimit":1},"rate":
{"reqLimit":1,"timePeriod":1000},"totalPartners":0},{"group":"default_sp_
group","quota":{"days":0,"limitExceedOK":false,"qtaLimit":0},"rate":
{"reqLimit":0,"timePeriod":0},"totalPartners":1},{"group":"group0903",
"quota":{"days":1,"limitExceedOK":false,"qtaLimit":1},"rate":{"reqLimit":1,
"timePeriod":1000},"totalPartners":0},{"group":"sxg_test",
"quota":{"days":1,"limitExceedOK":false,"qtaLimit":50},"rate":{"reqLimit":10,
"timePeriod":1},"totalPartners":0},{"group":"sxh","quota":{"days":7,
"limitExceedOK":false,"qtaLimit":20000},"rate":{"reqLimit":1000,"timePeriod":
1000},"totalPartners":1},{"group":"sysdefault_sp_group",
"quota":{"days":0,"limitExceedOK":false,"qtaLimit":0},"rate":{"reqLimit":0,
"timePeriod":0},"totalPartners":0}]}}

createServiceProviderGroup

Creates a service provider group.

Authorization

Partner Manager Administrator

HTTP Method

POST

URI

/prm_pm_rest/services/partner_manager/group/PartnerManagerSlaGroup/createServiceProviderGroup

Request Body

This operation uses these request parameters:

  • groupName (String) required. The name of the group to create.

  • rate (rate object) required. The maximum number of messages allowed during a quota period. Table A-5, "quota Object Parameters" lists the rate object parameters.

  • quota (quota object) required. The maximum number of messages allowed during the quota period. Table A-6, "rate Object Parameters" lists the quota object parameters.

Response Body

This operation does not return any parameters:

Examples

Example A-19 createServiceProviderGroup Request Example

GET https://10.182.98.78:9001/apis
{"createServiceProviderGroup":{"groupName":"VIP","rate":{"reqLimit":
"10000","timePeriod":1000},"quota":{"qtaLimit":"1000000","days":"5"}}} 

Example A-20 createServiceProviderGroup Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

deleteGroup

Deletes a service provider group.

Authorization

Partner Manager Administrator

HTTP Method

DELETE

URI

/prm_pm_rest/services/partner_manager/group/PartnerManagerSlaGroup/deleteGroup/groupName

Request Body

This operation uses these request parameters:

  • groupName (String) Required. The name of the group object to delete.

Response Body

This operation does not return any parameters.

Examples

Example A-21 deleteGroup Request Example

DELETE https://10.182.98.78:9001/apis
/prm_pm_rest/services/partner_manager/group/
PartnerManagerSlaGroup/deleteGroup/testgroup1

Example A-22 deleteGroup Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

confirmMovePartnerToGroup

Assigns a partner to a group.

Authorization

Partner Manager Administrator

HTTP Method

POST

URI

/prm_pm_rest/services/partner_manager/group/PartnerManagerSlaGroup/confirmMovePartnerToGroup

Request Body

This operation uses these request parameters:

  • partnerName (String) Required. The name of the partner to associate with the group.

  • newGroupName (String) Required. The new group name.

  • action (String) Required. An action. Either CHANGE_APP or EXPAND_SLA.

Response Body

This operation does not return any parameters.

Examples

Example A-23 confirmMovePartnerToGroup Request Example

POST https://10.182.98.78:9001/apis
{"confirmMovePartnerToGroup":{"partnerName":"joechin33","newGroupName":
"VIP","action":"EXPAND_SLA"}} 

Example A-24 confirmMovePartnerToGroup Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

getUsers

Retrieves the userInfo object parameter for all partners.

Authorization

Partner Manager Administrator

HTTP Method

GET

URI

/prm_pm_rest/services/accountmanage/AccountManagement/getUsers

Request Body

This operation does not send any request parameters.

Response Body

This operation returns these parameters:

Examples

Example A-25 getUsers Request Example

GET https://10.182.98.78:9001/apis
/prm_pm_rest/services/accountmanage/AccountManagement/getUsers

Example A-26 getUsers Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)
{"getUsersResponse":{"return":[{"company":"Oracle","companyURL":"www.oracle.com","
emailAddr":"demouser@oracle.com","financial":{},"firstName":"Demo","lastName":
"User","password":"demouser","phone":"12345678","secureityAnswer":"Attention",
"secureityAnswerChoice":"0","status":2,"userName":"demouser","userType":
"PRM_SP"},{"city":"bj","company":"oracle","companyURL":
"https://www.oracle.com","contacts":[{"city":"","contactTimeFrom":"",
"contactTimeTo":"","country":"","emailAddress":"","firstName":"","lastName":""},
{"city":"","contactTimeFrom":"3:0:0","contactTimeTo":"6:0:0","country":"China",
"emailAddress":"helen@oracle.com","firstName":"","lastName":""}]}}

getUserByName

Retrieves the details for a single partner.

Authorization

Partner Manager Administrator

HTTP Method

GET

URI

/prm_pm_rest/services/accountmanage/AccountManagement/getUsers/userName

Request Body

This operation uses these request parameters:

  • userName (String) Required. The name of the user to retrieve information for.

Response Body

This operation returns the userInfo object for the user. Table A-7, "userInfo Object Parameters" lists the userInfo parameters.

Examples

Example A-27 getUserByName Request Example

GET https://10.182.98.78:9001/users
/prm_pm_rest/services/accountmanage/AccountManagement/getUsers/testuser1

Example A-28 getUserByName Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)
{"getUserByNameResponse":{"return":{"company":"Oracle","companyURL":
"www.oracle.com","emailAddr":"demouser@oracle.com","financial":{},"firstName":
"Demo","lastName":"User","password":"demouser","phone":"12345678",
"secureityAnswer":"Attention","secureityAnswerChoice":"0","status":2,
"userName":"demouser","userType":"PRM_SP"}}}

approve

Approves a partner registration. When a partner or network service supplier successfully registers, a notification is sent to the partner manager for approval. This operation approves the registration.

Authorization

Partner Manager Administrator

HTTP Method

POST

URI

/prm_pm_rest/services/accountmanage/AccountManagement/approve

Request Body

This operation uses these request parameters:

Response Body

This operation does not return any parameters.

Examples

Example A-29 approve Request Example

POST https://10.182.98.78:9001/users
/prm_pm_rest/services/accountmanage/AccountManagement/approve
{"approve":{"userInfo":{"city":"bj","company":"oracle","companyURL":"https://
www.oracle.com","country":"China","emailAddr":"testuser@oracle.com","financial":
{"bankAccountNumber":"","bankAddress":"","bankName":"","bankRoutingNumber":"",
"city":"","country":"","invoiceTo":"","referenceAccount":"","stateOrProvince":
"","taxID":"","zipOrPostalCode":""},"firstName":"test","lastName":"test",
"password":"weblogic123","phone":"1-1-12345678","secureityAnswer":"testuser",
"secureityAnswerChoice":"0","status":0,"userName":"testuser","userType":
"PRM_SP","notificationId":"874add7a-9474-4698-b9a8-84440f64a7da"}}} 

Example A-30 approve Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

reject

Rejects a partner registration.

Authorization

Partner Manager Administrator

HTTP Method

POST

URI

/prm_pm_rest/services/accountmanage/AccountManagement/reject

Request Body

This operation uses these request parameters:

Response Body

This operation does not return any parameters.

Examples

Example A-31 reject Request Example

GET https://10.182.98.78:9001/users
/prm_pm_rest/services/accountmanage/AccountManagement/reject
{"reject":{"userInfo":{"city":"bj","company":"oracle","companyURL":"https:
//www.oracle.com","country":"China","emailAddr":"testuser1@oracle.com",
"financial":{"bankAccountNumber":"","bankAddress":"","bankName":"",
"bankRoutingNumber":"","city":"","country":"","invoiceTo":"","referenceAccount":
"","stateOrProvince":"","taxID":"","zipOrPostalCode":""},"firstName":"test",
"lastName":"test","password":"weblogic123","phone":"1-1-12345678",
"secureityAnswer":"testuser","secureityAnswerChoice":"0","status":0,"userName":
"testuser1","userType":"PRM_SP"}}} 

Example A-32 reject Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

deleteUser

Deletes a user's userInfo object.

Authorization

Partner Manager Administrator

HTTP Method

DELETE

URI

/accountmanage/AccountManagement/deleteUser/userName

Request Body

This operation uses these request parameters:

  • userName (String) Required. The userName parameter of the userInfo object to delete. Table A-7 lists the userInfo object parameters.

Response Body

This operation does not return any parameters.

Examples

Example A-33 deleteUser Request Example

DELETE https://10.182.98.78:9001/users
/accountmanage/AccountManagement/deleteUser/{userName}
{"deleteUser":{userInfo":{userName":"testuser1"}}}

Example A-34 deleteUser Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

createUser

Creates a partner.

Authorization

Partner Manager Administrator

HTTP Method

POST

URI

services/accountmanage/AccountManagement/createUser

Request Body

This operation uses these request parameters:

Table A-7 userInfo Object Parameters

Parameter Data Type Description

city

String

The city where the user lives.

company

String

The company the user works for.

companyURL

URL

A URL for the company

contacts

contact object

Contact information. Table A-8, "contact Object Parameters" lists the contact parameters.

country

String

The country where the user lives.

emailAddr

String

An email address in xxx@xxx.xx format.

firstName

String

The user's first name.

lastName

String

The user's last name.

password

String

The user's password.

phone

String

The user's phone number in \+?[0-9][0-9,\-,\s]{2,} format.

securityAnsswer

String

The answer to a security question.

securiytAnswerChoice

String

The user's choice of security questions.

stateOrProvince

String

The state or province where the user lives.

status

String

The user's status. Can be one of active or registered.

streetAddress

String

The user's street address

userName

String

The user's online username.

zipOrPostalCode

String

The user's zip code or other postal code.

slaGroup

String

The user's SLA group.

userType

String

The user type. Can be one of: PRM_SP, PRM_SS, or PRM_OP.


Table A-8 contact Object Parameters

Parameter Data Type Description

address

String

The street address for the contact.

city

String

The contact city.

contactTimeFrom

String

A time of day start time after which the contact can be contacted in HH:MM:SS format.

contactTimeTo

String

And time of day end time end time for the contact in HH:MM:SS format.

contactType

STring

A contact type value.

country

String

The contact's country.

emailAddress

String

The contact's email address

firstName

String

The contact's first name.

lastName

String

The contact's last name.

phone

phone list

The contact phone list.

preferredLanguage

String

The language the user wishes to use.

stateOrProvince

String

The contact state or province

title

String

A title for the contact.

zipOrPostalCode

String

A postal code for the contact


Response Body

This operation does not return any parameters.

Examples

Example A-35 createUser Request Example

POST https://10.182.98.78:9001/users
services/accountmanage/AccountManagement/createUser
{"createUser":{"userInfo":{"userName":"sxh_nss","userType":
"PRM_SS","password":"weblogic123","emailAddr":"sxh_nss@oracle.com","phone":"1234567890",
"secureityAnswerChoice":0,"secureityAnswer":
"2","firstName":"rotter","lastName":"zeng","company":"oracle","companyURL":"https:
//123.com","stateOrProvince":"bj","zipOrPostalCode":"","streetAddress":"a","city":
"a","country":"Afghanistan","contacts":[{"city":"","country":"Afghanistan",
"emailAddress":"testuser@oracle.com","firstName":"","lastName":""},{"city":
"","country":"Afghanistan","emailAddress":"","firstName":"","lastName":""}]}}} 

Example A-36 createUser Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

listApplications

Retrieve a list of all application objects.

Authorization

Partner Manager Administrator

HTTP Method

GET

URI

/prm_pm_rest/services/partner_manager/application/PartnerManagerApplication/listApplications

Request Body

This operation does not use any request parameters.

Response Body

This operation returns these parameters:

Table A-9 application Object Parameters

Parameter Data Type Description

applicationID

String

A unique ID used to identify the object.

applicationName

String

The application's name

partnerName

String

The name of the partner that the application belongs to.

description

String

An informal description of the object.

applicationAPIs

applicationAPI object

The applicationAPI object that defines the API. Table A-10, "applicationAPI Object Parameters" lists the applicationAPI object parameters.

trafficUser

String

The traffic user, used for authentication.

trafficPassword

String

A password to authenticate traffic. Minimum length is 8 characters.

submitDate

Date

The date the application was submitted in YYYY-MM-DD+HH:mm format

effectiveFrom

Date

The date the application starts being effective, in YYYY-MM-DD+HH:mm format.

effectiveTo

Date

That date that the application expires, in YYYY-MM-DD+HH:mm format.

applicationStatus

String

One of:

  • CREATE PENDING APPROVAL

  • DELETE PENDING APPROVAL

  • UPDATE PENDING APPROVAL

  • PASSWORD RESET

  • ACTIVE

  • DENY

  • UNKNOWN

  • SUSPENDED

lockStatus

String

One of: LOCKED, UNLOCKED.

quota

quota object

Table A-5, "quota Object Parameters" lists the quota parameters.

rate

rate object

Table A-6, "rate Object Parameters" lists the rate parameters

icon

String

The path to an icon to use. Used to specify custom graphics.


Table A-10 applicationAPI Object Parameters

Parameter Data Type Description

apiName

String

The API name.

accessURL

URL

The URl used to access the API.

apiVersion

String

The API version number

apiDescription

String

An informal description for the API

applicationMethodSLAs

applicationmethodSLA object

The applicationMethodSLA object that defines rate and quota information for the API. Table A-11, "applicationMethodSLA Object Parameters" lists the applicationMethodSLA parameters.


Table A-11 applicationMethodSLA Object Parameters

Parameter Data Type Description

methodName

String

The name of the method given SLA restrictions.

inerfaceName

String

The name of the interface the method uses.

quota

quota object

Table A-5, "quota Object Parameters" lists the quota object parameters.

rate

rate object

Table A-6, "rate Object Parameters" lists the rate object parameters.


Examples

Example A-37 listApplications Request Example

GET https://10.182.98.78:9001/apps
/prm_pm_rest/services/partner_manager/application/PartnerManagerApplication/listApplications

Example A-38 listApplications Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)
{"listApplicationsResponse":{"return":[{"applicationID":
"07c02413-0eeb-4a73-8920-ba7b8cbb97de","applicationName":"app-04","partnerName":
"rotterzeng","partnerCompany":"oracle","description":"aaaaaaaaaaaaaaaaaaaaaaaaaa",
"applicationAPIs":[{"apiName":"api-0918-1","accessURL":"https://localhost:8001/
daf/api-0918-1/1","apiVersion":"1","apiDescription":
"hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh","applicationMethodSLAs":[{"methodName":"
","interfaceName":"eda339e1-f8a5-4307-bf3e-654f2e0cd09c","quota":{"days":0,
"limitExceedOK":false,"qtaLimit":0},"rate":{"reqLimit":0,"timePeriod":0},
"methodGuarantee":{"reqLimitGuarantee":0,"timePeriodGuarantee":0}}],
"needReadContract":false}],"submitDate":"2014-09-18+08:00","effectiveFrom":
"2014-09-01+08:00","effectiveTo":"2014-09-30+08:00","status":"CREATE PENDING
 APPROVAL","lockStatus":"UNLOCKED","quota":{"days":1,"limitExceedOK":true,
"qtaLimit":1},"rate":{"reqLimit":1,"timePeriod":1}}]}} 

getApplication

Retrieve application object parameters.

Authorization

Partner Manager Administrator

HTTP Method

GET

URI

/prm_pm_rest/services/partner_manager/application/PartnerManagerApplication/getApplication/applicationID}

Request Body

This operation uses these request parameters:

  • applicationID (String) Required. The identifier of the application object to return.

Response Body

This operation returns these parameters:

Examples

Example A-39 getApplication Request Example

GET https://10.182.98.78:9001/apps
prm_pm_rest/services/partner_manager/application/PartnerManagerApplication/
getApplication/07c02413-0eeb-4a73-8920-ba7b8cbb97de

Example A-40 getApplication Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)
{"getApplicationResponse":{"return":{"applicationID":"07c02413-0eeb-4a73-8920-
ba7b8cbb97de","applicationName":"app-04","partnerName":"guest1",
"partnerCompany":"oracle","description":"aaaaaaaaaaaaaaaaaaaaaaaaaa",
"applicationAPIs":[{"apiName":"api-0918-1","accessURL":"https://localhost:8001/daf/
api-0918-1/1","apiVersion":"1","apiDescription":
"hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh","applicationMethodSLAs":[{"methodName":"",
"interfaceName":"eda339e1-f8a5-4307-bf3e-654f2e0cd09c","quota":{"days":0,
"limitExceedOK":false,"qtaLimit":0},"rate":{"reqLimit":0,"timePeriod":0},
"methodGuarantee":{"reqLimitGuarantee":0,"timePeriodGuarantee":0}}],
"needReadContract":false}],"submitDate":"2014-09-18+08:00","effectiveFrom":
"2014-09-01+08:00","effectiveTo":"2014-09-30+08:00","status":"CREATE PENDING
 APPROVAL","lockStatus":"UNLOCKED","quota":{"days":1,"limitExceedOK":true,
"qtaLimit":1},"rate":{"reqLimit":1,"timePeriod":1}}}} 

updateCurrentSlaForApprove

Approve an application registration request.

Authorization

Partner Manager Administrator

HTTP Method

POST

URI

/prm_pm_rest/services/partner_manager/application/PartnerManagerApplication/updateCurrentSlaForApprove

Request Body

This operation uses these request parameters:

Response Body

This operation does not use any response parameters.

Examples

Example A-41 updateCurrentSLAForApprove Request Example

POST https://10.182.98.78:9001/apps
/prm_pm_rest/services/partner_manager/application/PartnerManagerApplication/updateCurrentSlaForApprove
{"updateCurrentSlaForApprove":{"application":{"notificationId":
"18ddcd29-d883-4fab-a1f8-83f5322feb67","applicationID":
"5548f811-18a5-45d6-b5d9-6cc0b75d6bfa","applicationName":
"app_0925_1","partnerName":"rotterzeng","partnerCompany":"oracle",
"description":"app_0925_1app_0925_1app_0925_1","trafficUser":
"rotterzeng_app_0925_1","trafficPassword":"rotterzeng_app_0925_1",
"submitDate":"2014-09-28+08:00","effectiveFrom":"2014-09-01+08:00",
"effectiveTo":"2014-09-30+08:00","status":"CREATE PENDING APPROVAL",
"lockStatus":"UNLOCKED","quota":{"qtaLimit":1,"limitExceedOK":false,"days"
:1},"rate":{"reqLimit":1,"timePeriod":1}}}} 

Example A-42 updateCurrentSLAForApprove Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

denyApplication

Deny an application registration request.

Authorization

Partner Manager Administrator

HTTP Method

POST

URI

/prm_pm_rest/services/partner_manager/application/PartnerManagerApplication/denyApplication

Request Body

This operation uses these request parameters:

Response Body

This operation does not use any response these parameters.

Examples

Example A-43 denyApplication Request Example

POST https://10.182.98.78:9001/apps
/prm_pm_rest/services/partner_manager/application/PartnerManagerApplication/denyApplication{"denyApplication":
{"application":{"notificationId":"de6a031c-30a2-48c5-9908-3adac59510f0",
"applicationID":"7781766f-38ec-4adc-a1e6-b7acd0c501bf","applicationName":
"app0925_2","partnerName":"rotterzeng","partnerCompany":
"oracle","description":"app0925_2app0925_2app0925_2app0925_2",
"trafficUser":"rotterzeng_app0925_2","trafficPassword":
"rotterzeng_app0925_2","submitDate":"2014-09-28+08:00","effectiveFrom":
"2014-09-01+08:00","effectiveTo":"2014-09-30+08:00","status":
"CREATE PENDING APPROVAL","lockStatus":"UNLOCKED","quota":
{"days":1,"limitExceedOK":true,"qtaLimit":1},"rate":{"reqLimit":1,
"timePeriod":1}}}}

Example A-44 denyApplication Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

getAllSysConfig

Retrieve all system configuration settings as a list of key/value pairs.

Authorization

Partner Manager Administrator

HTTP Method

GET

URI

/prm_pm_rest/services/prm_pm/services/partner_manager/sysconfig/getAllSysConfig

Request Body

This operation use any request parameters.

Response Body

This operation returns these parameters:

Table A-12 sysConfig Object Parameters

Parameter Data Type Description

key

String

The name of a configuration setting.

value

String

The value for a configuration setting.


Examples

Example A-45 getAllSysConfig Request Example

GET https://10.182.98.78:9001/config
/prm_pm_rest/services/prm_pm/services/partner_manager/sysconfig/getAllSysConfig{"GetAllSysConfig":{"return":
[{"key":"KEY_AUTO_APPROVE_FOR_REGISTER","value":"false"}]}} 

Example A-46 getAllSysConfig Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)
{"GetAllSysConfigResponse":{"return":[{"key":"KEY_AUTO_APPROVE_FOR_REGISTER","value":"false"}]}} 

getSysConfig

Retrieve a single system configuration object.

Authorization

Partner Manager Administrator

HTTP Method

GET

URI

/prm_pm_rest/services/prm_pm/services/partner_manager/sysconfig/getSysConfig/key

Request Body

This operation uses these request parameters:

  • key (String) Required. The name of the configuration setting to retrieve.

Response Body

This operation returns these parameters:

Examples

Example A-47 getSysConfig Request Example

GET https://10.182.98.78:9001/config
/prm_pm_rest/services/prm_pm/services/partner_manager/sysconfig/getSysConfig/"key": 
"KEY_AUTO_APPROVE_FOR_REGISTER"

Example A-48 getSysConfig Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)
{"GetSysConfigResponse": {"return": {"key": 
"KEY_AUTO_APPROVE_FOR_REGISTER","value": "false"}}}

updateAllSysConfig

Update all system configuration settings.

Authorization

Partner Manager Administrator

HTTP Method

PUT

URI

/prm_pm_rest/services/prm_pm/services/partner_manager/sysconfig/updateAllSysConfig

Request Body

This operation uses these request parameters:

Response Body

This operation does not use response parameters.

Examples

Example A-49 updateAllSysConfig Request Example

PUT https://10.182.98.78:9001/config
/prm_pm_rest/services/prm_pm/services/partner_manager/sysconfig/updateAllSysConfig
{"updateAllSysConfig":{"sysConfig":[{"key":"APP","value":"true"},
{"key":"APP1","value":"false"}]}

Example A-50 updateAllSysConfig Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

updateSysConfig

Retrieve a single configuration setting key/value pair.

Authorization

Partner Manager Administrator

HTTP Method

PUT

URI

/prm_pm_rest/services/prm_pm/services/partner_manager/sysconfig/updateSysConfig/key

Request Body

This operation uses these request parameters:

  • key (String) Required. The name of the configuration setting to retrieve.

Response Body

This operation does not use response parameters.

Examples

Example A-51 updateSysConfig Request Example

PUT https://10.182.98.78:9001/config
/prm_pm_rest/services/prm_pm/services/partner_manager/sysconfig/updateSysConfig/
{"updateSysConfig":{"key":"APP","value":"true"}}

Example A-52 updateSysConfig Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)
 

getBlobSysConfig

Retrieve complex configuration information, such as long text descriptions, or graphics.

Authorization

Partner Manager Administrator

HTTP Method

GET

URI

/prm_pm_rest/services/prm_pm/services/partner_manager/sysconfig/getBlobSysConfig/key

Request Body

This operation uses these request parameters:

  • key (String) Required. The name of the configuration setting to retrieve.

Response Body

This operation returns these parameters:

  • return (Blob list). The configuration information.

Examples

Example A-53 getBlobSysConfig Request Example

GET https://10.182.98.78:9001/config
/prm_pm_rest/services/prm_pm/services/partner_manager/sysconfig/getBlobSysConfig/
{"getBlobSysConfig":{"key":"TITLE","value":"icon1.jpeg"}}

Example A-54 getBlobSysConfig Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

updateBlobSysConfig

Update a complex configuration setting.

Authorization

Partner Manager Administrator

HTTP Method

PUT

URI

/prm_pm_rest/services/prm_pm/services/partner_manager/sysconfig/updateBlobSysConfig/key

Request Body

This operation uses these request parameters:

  • key (String) Required. The name of the configuration setting to retrieve.

Response Body

This operation does not use response parameters.

Examples

Example A-55 updateBlobSysConfig Request Example

GET https://10.182.98.78:9001/subscribers
/prm_pm_rest/services/prm_pm/services/partner_manager/sysconfig/updateBlobSysConfig
{"updateBlobSysConfig":{"key":"TITLE","value":"icon1.jpeg"}}

Example A-56 updateBlobSysConfig Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

registerSP

Register an account (subscriber profile).

Authorization

Partners are authorized to use this operation.

HTTP Method

POST

URI

/prm_pm_rest/services/prm_pr/services/register/Register/registerSP

Request Body

This operation uses these request parameters:

Response Body

This operation does not use response parameters.

Examples

Example A-57 registerSP Request Example

GET https://10.182.98.78:9001/subscribers
{"registerSP":{"spInfo":{"userName":"testuser1","userType":
"PRM_SP","emailAddr":"testuser1@testcompany.com","password":"weblogic123","phone":
"1-1-12345678","secureityAnswerChoice":0,"secureityAnswer":"testuser","firstName":
"test","lastName":"test","company":"oracle","companyURL":"https://www.oracle.com","
city":"bj","country":"China","contacts":[]}}}

Example A-58 registerSP Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

editUser

This operation changes userInfo object subscriber profile parameters for one subscriber.

Authorization

Partners are authorized to use this operation.

HTTP Method

PUT

URI

/prm_pm_rest/services/prm_pr/services/account/PortalAccount/editUser

Request Body

This operation uses these request parameters:

Response Body

This operation does not use any response parameters.

Examples

Example A-59 editUser Request Example

GET https://10.182.98.78:9001/subscribers
/prm_pm_rest/services/prm_pr/services/account/PortalAccount/editUser
{"editUser":{"userInfo":{"userName":"rotterzeng","userType":
"PRM_SP","password":"sxh123456","emailAddr":"testuser@testcompany.com","phone":
"1234567890","secureityAnswerChoice":0,"secureityAnswer":"2","firstName":"rotter",
"lastName":"zeng","company":"oracle","companyURL":"https://123.com",
"stateOrProvince":"bj","zipOrPostalCode":"","streetAddress":"a","city":"a",
"country":"Afghanistan","contacts":[{"city":"","country":"Afghanistan",
"emailAddress":"testuser@testcompany.com","firstName":"","lastName":""},
{"city":"","country":"Afghanistan","emailAddress":"","firstName":"",
"lastName":""}]}}} 

Example A-60 editUser Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

getUserByName

Retrieves subscriber profile information for a subscriber based on their user name.

Authorization

Partners are authorized to use this operation

HTTP Method

GET

URI

/prm_pm_rest/services/prm_pr/services/account/PortalAccount/getUserByName/userName

Request Body

This operation uses these request parameters:

Response Body

This operation returns these parameters:

Examples

Example A-61 getUserByName Request Example

GET https://10.182.98.78:9001/subscribers
/prm_pm_rest/services/prm_pr/services/account/PortalAccount/getUserByName/{testuser2}

Example A-62 getUserByName Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)
{"getUserByNameResponse":{"return":{"city":"a","company":"oracle","companyURL":
"https://123.com","contacts":[{"city":"","country":"Afghanistan","emailAddress":"
","firstName":"","lastName":""},{"city":"","country":"Afghanistan","emailAddress":
"testuser@testcompany.com","firstName":"","lastName":""}],"country":"Afghanistan",
"emailAddr":"testuser@testcompany.com","financial":{"bankAccountNumber":"",
"bankAddress":"","bankName":"","bankRoutingNumber":"","city":"","country":"",
"invoiceTo":"","referenceAccount":"","stateOrProvince":"","taxID":"",
"zipOrPostalCode":""},"firstName":"testuser2","lastName":"zeng","password":
"sxh123456","phone":"1234567890","secureityAnswer":"2","secureityAnswerChoice":
"0","stateOrProvince":"bj","status":0,"streetAddress":"a","userName":"rotterzeng",
"zipOrPostalCode":"","slaGroup":"VIP","userType":"PRM_SP"}}}

listApplications

This operation lists operations that belong to a partner.

Authorization

Partners are authorized to use this operation.

HTTP Method

GET

URI

/prm_pm_rest/services/prm_pm/services/partner/application/PartnerApplication/listApplications

Request Body

This operation does not use any request parameters.

Response Body

This operation returns these parameters:

Examples

Example A-63 listApplications Request Example

GET https://10.182.98.78:9001/apps
/prm_pm_rest/services/prm_pm/services/partner/application/PartnerApplication/listApplications

Example A-64 listApplications Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)
{"listApplicationsResponse":{"return":[{"applicationID":"07c02413-
0eeb-4a73-8920-b
a7b8cbb97de","applicationName":"app-04","partnerName":"rotterzeng","partnerCompany
":"oracle","description":"aaaaaaaaaaaaaaaaaaaaaaaaaa","applicationAPIs":[{"apiName
":"api-0918-1","accessURL":"https://localhost:8001/daf/api-0918-1/1",
"apiVersion":"1","apiDescription":"hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh",
"applicationMethodSLAs":[
{"methodName":"","interfaceName":"eda339e1-f8a5-4307-bf3e-654f2e0cd09c","quota":{"
days":0,"limitExceedOK":false,"qtaLimit":0},"rate":{"reqLimit":0,"timePeriod":0},"
methodGuarantee":{"reqLimitGuarantee":0,"timePeriodGuarantee":0}}],"needReadContra
ct":false}],"submitDate":"2014-09-18+08:00","effectiveFrom":"2014-09-01+08:00","ef
fectiveTo":"2014-09-30+08:00","status":"ACTIVE","lockStatus":"UNLOCKED","quota":{"
days":1,"limitExceedOK":true,"qtaLimit":1},"rate":{"reqLimit":1,"timePeriod":1}}}]
}} 

createApplication

This operation creates an application object.

Authorization

Partners are authorized to use this operation.

HTTP Method

POST

URI

/prm_pm_rest/services/prm_pm/services/partner/application/PartnerApplication/createApplication

Request Body

This operation uses these request parameters:

Response Body

This operation does not use any response parameters.

Examples

Example A-65 createApplication Request Example

POST https://10.182.98.78:9001/apps
/prm_pm_rest/services/prm_pm/services/partner/application/PartnerApplication/createApplication
{"createApplication":{"application":{"applicationName":"app-0929","description":
"app-0929app-0929app-0929app-0929","effectiveFrom":"2014-09-01","effectiveTo":
"2014-09-30","partnerName":"rotterzeng","quota":{"days":"1","limitExceedOK":true,"
qtaLimit":"1"},"rate":{"reqLimit":"1","timePeriod":"1"},"applicationAPIs":
[{"apiName":"8cdc8cdc-61e0-4ec2-9fc1-c9e71c1821e8"}]}}}

Example A-66 createApplication Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

updateApplication

This operation changes one or more parameters of an application.

Authorization

Partners are authorized to use this operation.

HTTP Method

PUT

URI

/prm_pm_rest/services/prm_pm/services/partner/application/PartnerApplication/updateApplication

Request Body

This operation uses these request parameters:

Response Body

This operation does not use any response parameters.

Examples

Example A-67 updateApplication Request Example

PUT https://10.182.98.78:9001/apps
/prm_pm_rest/services/prm_pm/services/partner/application/PartnerApplication/updateApplication
{"updateApplication":{"application":{"applicationID":"53f91602-01af-4483-a7ee-
3fc4af6b1280","applicationName":"app-0929","description":"app-0929app-0929app-
0929app-0929","effectiveFrom":"2014-09-01+08:00","effectiveTo":"2014-09-30+08:00",
"trafficUser":"rotterzeng_app-0929","partnerName":"rotterzeng","quota":{"days":"1","qtaLimit":"1"},"rate":
{"reqLimit":"100","timePeriod":"1"},"applicationAPIs":[{"apiName":"8cdc8cdc-61e0-4
ec2-9fc1-c9e71c1821e8"}]}}} 

Example A-68 updateApplication Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

removeApplication

This operation deletes an application object.

Authorization

Partners are authorized to use this operation.

HTTP Method

DELETE

URI

/prm_pm_rest/services/prm_pm/services/partner/application/PartnerApplication/removeApplication/applicationID

Request Body

This operation uses these request parameters:

Response Body

This operation does not use any response parameters.

Examples

Example A-69 removeApplication Request Example

DELTET https://10.182.98.78:9001/apps
/prm_pm_rest/services/prm_pm/services/partner/application/
PartnerApplication/removeApplication/{applicationID}
{"applicationID":"53f91602-01af-4483-a7ee3fc4af6b1280"}

Example A-70 removeApplication Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

removePendingApp

This operation removes an application in a PENDING state. Used when a partner wants to cancel an pending operation before the partner administrator has acted on it.

Authorization

Partners are authorized to use this operation.

HTTP Method

DELETE

URI

/prm_pm_rest/services/prm_pm/services/partner/application/PartnerApplication/removePendingApp/applicationID

Request Body

This operation uses these request parameters:

Response Body

This operation does not use any response parameters.

Examples

Example A-71 removePendingApp Request Example

DELETE https://10.182.98.78:9001/apps
/prm_pm_rest/services/prm_pm/services/partner/application/PartnerApplication/removePendingApp/
{"applicationID":"53f91602-01af-4483-a7ee3fc4af6b1280"}

Example A-72 removePendingApp Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

getInterfaceList

Lists all interfaces that belong to a network service supplier.

Authorization

Network service suppliers and partner managers are authorized to execute this operation.

HTTP Method

GET

URI

/prm_pm_rest/services/prm_pr/services/svrinterface/Interface/getInterfaceList/supplierName

Request Body

This operation uses these request parameters:

  • supplierName (String) Required. The name of the supplier to return svrinterfaceInfo objects for.

Response Body

This operation returns these parameters:

  • getInterfaceListResponse (svrinterfaceInfo object list). This operation returns a list of svrinfterfaceInfo objects, one for each interface that the network service supplier owns.Table A-13, "svrinterfaceListResponse Object Parameters" lists the svrinterfaceListResponse parameters.

Table A-13 svrinterfaceListResponse Object Parameters

Parameter Data Type Description

id

String

The interface identifier.

name

String

The interface name

version

String

The version number of the interface

status

String

One of: UNKNOWN, CREATED, APPROVED, ACTIVE, DEPRECATED, REMOVED, DENY, SUSPENDED.

supplierName

String

The name of the network service supplier that created the interface.

accessURL

String

The interface's access URL.

wsdlurl

String

The URL of the WSDL/WADL file that the interface uses.

validtime

Date

The date and time the interface was validated.

deprecatetime

Date

The date and time the interface was deprecated.

suspendtime

Date

The date and time the interface was suspended.

docURL

String

The URL for documentation for the interface.

securityType

String

One of: NONE, TEXT, or OAUTH.

authToken

String

The authorization token. Can be one of:

  • For security type NONE, no value

  • For security type TEXT, uses the userName:password format

  • For security type OAUTH, uses the access token.

icon

String

The location of the directory of the icon to use

description

String

An informal description of the interface.

throughput

Interger

The maximum throughput allowed.


Examples

Example A-73 getInterfaceList Request Example

GET https://10.182.98.78:9001/interfaces
/prm_pm_rest/services/prm_pr/services/svrinterface/Interface/getInterfaceList/{supplierName} 
{"supplierName":"sxh"}

Example A-74 getInterfaceList Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)
{"getInterfaceListResponse":{"return":[{"id":"b454f603-925b-4b04-9f0e-d207f4db
80a0","name":"first interface","version":"1.0","status":"ACTIVE","supplierName":"sxh","accessURL":
"https://access.url/v1","WSDLURL":"https://access.url/v1?WADL","validtime":
1399618800,"deprecatetime":1420041599,"suspendtime":32503651199,"docURL":"https:
//doc.access.url/v1","securityType":"NONE","icon":"0","description":"desc",
"throughput":100}]}} 

getInterfaceInfoByName

Retrieve a svrinterface object parameters that match the interface name and a version number that you request.

Authorization

Network service suppliers and partner managers are authorized to execute this operation.

HTTP Method

GET

URI

/prm_pm_rest/services/prm_pr/services/svrinterface/Interface/getInterfaceInfoByName/svrinterfaceName/svrinterfaceVersion

Request Body

This operation uses these request parameters:

  • svrinterfaceName (String) Required. The name of the svrinterface object to return.

  • svrinterfaceVersion (String) Required. The version number of the interface object to return.

Response Body

This operation does not use any response parameters.

Examples

Example A-75 getInterfaceInfoByName Request Example

GET https://10.182.98.78:9001/interfaces
/prm_pm_rest/services/prm_pr/services/svrinterface/Interface/getInterfaceInfoByName
{"svrinterfaceName":"firstinterface","svrinterfaceVersion":"v1"}

Example A-76 getInterfaceInfoByName Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

updateInterface

This operation makes changes to the object containing an interface.

Authorization

Network service suppliers

HTTP Method

POST

URI

/prm_pm_rest/services/prm_pr/services/svrinterface/Interface/updateInterface

Request Body

This operation uses these request parameters:

Response Body

This operation does not use any response parameters.

Examples

Example A-77 updateInterface Request Example

POST https://10.182.98.78:9001/interfaces
        /prm_pm_rest/services/prm_pr/services/svrinterface/Interface/updateInterface
{"updateInterface":{"svrinterfaceInfo":{"id":"b454f603-925b-4b04-9f0e-
d207f4db80a0","name":"first interface","version":"2.0","status":"ACTIVE","supplierName":"sxh","accessURL":
"https://access.url/v1","WSDLURL":"https://access.url/v1?WADL","validtime":141197930
2,"deprecatetime":1414571290,"suspendtime":1411979302,"docURL":"https://doc.access.
url/v1","securityType":"NONE","icon":"0","description":"desc","throughput":100,
"activeDate":"2014-05-09","activeTime":"15:00:00","deprecateTime":"16:28:10",
"deprecateDate":"2014-10-29"}}} 

Example A-78 updateInterface Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)

removeInterfaceByID

This operation deletes a network service supplier interface based on the interface ID.

Authorization

Network service suppliers

HTTP Method

DELETE

URI

/prm_pm_rest/services/prm_pr/services/svrinterface/Interface/removeInterfaceByID/svrinterfaceID

Request Body

This operation uses these request parameters:

Response Body

This operation does not use any response parameters.

Examples

Example A-79 removeInterfaceByID Request Example

GET https://10.182.98.78:9001/interfaces
/prm_pm_rest/services/prm_pr/services/svrinterface/Interface/removeInterfaceByID/{svrinterfaceID}
{"svrinterface":{"id":"b454f603-925b-4b04-9f0e-d207f4db80a0"}}

Example A-80 removeInterfaceByID Response Example

HTTP/1.1 200 OKContent-Length: 0Server: Jetty(8.0.1.0)