7 UI Platform Services
The user interface for the Merchandising solutions has some common components that you may want to use in building custom workflows related to managing user notifications.
These ReST services are packaged as part of the Merchandising solution's Enterprise Archive (EAR) file. Installation of the ReST web services is therefore done by default.
Security
Services are secured using the J2EE-based security model.
-
Realm-based User Authentication: This verifies users through an underlying Realm. The username and password are passed using HTTP basic authentication.
-
Role-based Authorization: This assigns users to roles; authenticated users can access the services within the Merchandising suite.
-
The communication between the server and client is encrypted using one-way SSL. In non-SSL environments the encoding defaults to BASE-64 so it is highly recommended that these ReST services are configured to be used in production environments secured with SSL connections.
Standard Request and Response Headers
The UI platform ReSTful web services have the following standard HTTP headers:
Name | Value | Required | Description |
---|---|---|---|
Accept |
application/json OR application/xml |
Optional. If a response payload is expected instead of just an appropriate HTTP status code |
Tells the server the MIME-type of the resource. |
Accept-Version |
1.8.3 |
Yes |
Depicts which version of the Platform Services is expected. |
Accept-Versioning |
false |
No |
Specified in the service request to bypass version validation |
Accept-Language |
en-US |
No |
Defaulted by most clients to the destination locale |
Content-Type |
application/json OR application/xml |
Optional. If a request payload is expected. Helps the server determine how to parse the request. |
Informs the server during PUT or POST requests, of the format of the payload being sent. |
Authorization |
Base64 encoded credentials string |
Yes |
Authenticates a user agent with the server |
Depending on the type of the operation or HTTP method, the corresponding response header is updated in the HTTP response with the following codes:
-
GET/READ : 200
-
PUT/CREATE : 201 created
-
POST/UPDATE : 204
-
DELETE : 204
Standard Error Response
Example response payload in case of service error is depicted below:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <messagesRDOes> <messagesRDO> <message>REST Service Version Mismatch</message> <messageType>ERROR</messageType> <status>BAD_REQUEST</status> </messagesRDO> </messagesRDOes>
-
Message: The error message - translated.
-
MessageType: Value of 'ERROR' is returned.
-
Status: For a bad request or error, the status is BAD_REQUEST.
-
The http error code for an error response is 400
List of ReST Services
The ReST services exposed by the UI platform are accessible from a URL that is different for each of the Merchandising cloud services. The URLs to use for each solution are:
Merchandising: https://rex.retail.<Region Name>.ocs.oraclecloud.com/<Customer Subnamespace>/RmsPlatformServices/services/private/* Sales Audit: https://rex.retail.<Region Name>.ocs.oraclecloud.com/<Customer Subnamespace>/ResaPlatformServices/services/private/* Pricing: https://rex.retail.<Region Name>.ocs.oraclecloud.com/<Customer Subnamespace>/ PricingPlatformServices/services/private/* Allocation: https://rex.retail.<Region Name>.ocs.oraclecloud.com/<Customer Subnamespace>/AllocPlatformServices/services/private/* Invoice Matching: https://rex.retail.<Region Name>.ocs.oraclecloud.com/<Customer Subnamespace>/ReimPlatformServices/services/private/*
Notifications
Description | URL | HTTP Method |
---|---|---|
Creating Notifications |
/Notifications/create |
POST |
Updating Notifications |
/Notifications/update |
PUT |
Deleting Notifications |
/Notifications/delete/{id} |
DELETE |
Fetch Notifications |
/Notifications/fetch?appCode={appCode} |
GET |
Get number of unread Notifications |
/Notifications/fetch/unreadCount?appCode={appCode} |
GET |
Search Notifications |
/Notifications/search?appCode={appCode} |
GET |
Filter Notifications - Return list of Notifications |
/Notifications/filter/list |
POST |
Filter Notifications - Return grouped list of Notifications |
/Notifications/filter/group |
POST |
Filter Notifications - Return a summarized list of Notifications |
/Notifications/filter/summarize |
POST |
Count Notifications matching the filter |
/Notifications/filter/count |
POST |
Persist the Criteria |
/Notifications/criteria |
POST |
Fetch the Criteria |
/Notifications/fetch/criteria?appCode={appCode} |
GET |
Fetch Recipients |
/Notifications/fetch/recipients/{id} |
GET |
Fetch Notification Context |
/Notifications/fetch/context/{id} |
GET |
Fetch Notification Time Periods |
/Notifications/fetch/timeperiods?appCode={appCode} |
GET |
Fetch Notification Hierarchy Levels |
/Notifications/fetch/hierarchylevels?appCode={appCode} |
GET |
Fetch Notification Types |
/Notifications/fetch/notificationtypes?appCode={appCode} |
GET |
Status update for multiple Notifications |
/Notifications/update/multiple/status |
PUT |
Delete multiple Notifications |
/Notifications/delete/multiple |
POST |