Applet APIs
- Siebel Open Integration allows exposing operations of Siebel applets as REST APIs. Here the REST API performing operations View and Applet. The fields available depends on the fields exposed on the applet. While performing the operations the REST API will honor the server scripts or customizations (if any) done on the applet being accessed as REST API.
- To expose applet as a REST API, following configuration needs to be added to the confg.json under UI section before running gen.sh or gen.bat. This design time configuration contains the View and Applets to be exposed.
Configuring Applet APIs
Example configuration in config.json below shows multiple View and Applets exposed
"apigen": {
"resources": {
"openintegration/v1.0/ui": [
"All Account List View/SIS Account List Applet",
"Account Attachment View/SIS Account Entry Applet/id/Account Attachment Applet"
]
}
}
Supported Operations
-
Retrieve all records
- Usage - GET : https://<hostname:port>/<context>/openintegration/v1.0/ui/<view-name>/<applet-name>
- Retrieve single record
- Usage - GET : https://<hostname:port>/<context>/openintegration/v1.0/ui/<view-name>/<applet-name>/<record-id>
- Create single record
- Usage - POST : https://<hostname:port>/<context>/openintegration/v1.0/ui/<view-name>/<applet-name>
-
Update single record
- Usage - PUT : https://<hostname:port>/<context>/openintegration/v1.0/ui/<view-name>/<applet-name>/<record-id>
- Delete single record
- Usage - Delete : https://<hostname:port>/<context>/openintegration/v1.0/ui/<view-name>/<applet-name>/<record-id>
- Run Custom Actions
- Usage - POST : https://<hostname:port>/<context>/openintegration/v1.0/ui/<view-name>/<applet-name>/<action-name>
- Usage - POST : https://<hostname:port>/<context>/openintegration/v1.0/ui/<view-name>/<applet-name>/<record-id>/<action-name>
Note: The mentioned operations are generic operations
supported using APPLET Rest APIs , for information regarding a particular Applet
please refer to its OpenAPI Specification.
Supported Query Parameters
For GET ALL Operations
- pageSize - if specified , Siebel Open Integration tries to retrieve
specified number of records.
- Usage : https://<hostname:port>/<context>/openintegration/v1.0/ui/<view-name>/<applet-name>?pageSize=<sizeOfRecords>
- startRowNum - if specified , Siebel Open Integration will try to
retrieve records from specified row.
- Usage: https://<hostname:port>/<context>/openintegration/v1.0/ui/<view-name>/<applet-name>?startRowNum=<startingRowNumber>
- fields - if specified , Siebel Open Integration will return records
with only specified fields.
- Usage : https://<hostname:port>/<context>/openintegration/v1.0/ui/<view-name>/<applet-name>?fields=<Comma separated list of fields names>
- sortSpec - if specified , Siebel Open Integration will sort records
based on specified order and return results
- Usage : https://<hostname:port>/<context>/openintegration/v1.0/ui/<view-name>/<applet-name>?sortSpec=<<field>:<asc/desc>>
- searchSpec - if specified , Siebel Open Integration will search for
records based on searchSpec
- Usage : https://<hostname:port>/<context>/openintegration/v1.0/ui/<view-name>/<applet-name>?searchSpec=<search string>
- recordCountNeeded - if specified , Siebel Open Integration will
return total number of records available for the applet , will be returned
as X-Record-Count header in response
- Usage : https://<hostname:port>/<context>/openintegration/v1.0/ui/<view-name>/<applet-name>?recordCountNeeded=true
- fields - if specified , Siebel Open Integration will return records
with only specified fields.
- Usage : https://<hostname:port>/<context>/openintegration/v1.0/ui/<view-name>/<applet-name>/<record-id>?fields=<Comma separated list of fields names>
Examples
- URL to fetch data using the view "All Account List View" and applet "SIS
Account List Applet" and response will have the page size of 15
- GET Url : https://<hostname:port>/<context>/openintegration/v1.0/ui/All Account List View/SIS Account List Applet/?PageSize=15
- URL to fetch data using the view "All Account List View" and applet "SIS
Account List Applet" and response will have fields Name and Id and sorted
using Name in descending order
- GET Url : https://<hostname:port>/<context>/openintegration/v1.0/ui/All Account List View/SIS Account List Applet/?fields=Name,Account Status&sortSpec=Name:desc
- URL to fetch data using the view "All Account List View" and applet "SIS
Account List Applet" and response will have only Active Accounts
- GET Url : https://<hostname:port>/<context>/openintegration/v1.0/ui/All Account List View/SIS Account List Applet/?searchSpec=[Account Status] = 'Active'