Assoc Applet REST APIs
An Association Applet is a type of applet that allows the user to associate a parent record with one or more children. It uses two business components that possess a many-to-many relationship with one another. The user cannot modify records in an association applet. You can call an association applet from a master-detail view or from a multi-value group applet.
Configuring Assoc Applet REST APIs
Assoc Applet is a special API on Applet , no additional configuration is needed to enable Assoc Applet. If Parent applet is configured as part of config.json, its corresponding Assoc Applets are automatically deployed.
Supported Operations
-
Retrieve all records that can be associated
- Usage - GET : https://<hostname:port>/<context>/openintegration/v1.0/ui/<view-name>/<parent-applet-name>/<record-id>/<child-applet-name>/assoc
- Associate multiple records from to Parent record
- Usage - PUT : https://<hostname:port>/<context>/openintegration/v1.0/ui/<view-name>/<parent-applet-name>/<record-id>/<child-applet-name>/assoc/select
- Un Associate multiple records from to Parent record
- Usage - PUT :https://<hostname:port>/<context>/openintegration/v1.0/ui/<view-name>/<parent-applet-name>/<record-id>/<child-applet-name>/assoc/unselect
Supported Query Parameters
- pageSize - if specified , Siebel Open Integration tries to retrieve
specified number of records.
- Usage : https://<hostname:port>/<context>/openintegration/v1.0/ui/<view-name>/<parent-applet-name>/<record-id>/<child-applet-name>/assoc?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>/<parent-applet-name>/<record-id>/<child-applet-name>/assoc?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>/<parent-applet-name>/<record-id>/<child-applet-name>/assoc?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>/<parent-applet-name>/<record-id>/<child-applet-name>/assoc?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>/<parent-applet-name>/<record-id>/<child-applet-name>/assoc?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>/<parent-applet-name>/<record-id>/<child-applet-name>/assoc?recordCountNeeded=true
Examples
-
Get All Contacts for Account with ID 1-272 in view Account-Detail - Contacts View , parent applet SIS Account Entry Applet and Child Applet Account Contact List Applet
- GET ALL URL: https://<hostname:port>/oracle/openintegration/v1.0/ui/Account Detail - Contacts View/SIS Account Entry Applet/1-2Z2/Account Contact List Applet/assoc/?fields=First Name,Last Name, Id&pageSize=5
- Response Payload
{ "items": [ { "First Name": "A", "Last Name": "A", "Id": "0CR-1GQ1SJ" }, { "First Name": "M*", "Last Name": "A*", "Id": "1-E2I9" }, { "First Name": "SUSHEEL", "Last Name": "AB", "Id": "88-1RHHP6" }, { "First Name": "MAYA", "Last Name": "ABRAHAM", "Id": "0CR-1MF5Z6" }, { "First Name": "ABS_ADMIN_EMP1", "Last Name": "ABS_ADMIN_EMP1", "Id": "88-3CFBJ" } ], "UIMetadata": { .... } }
-
Associate Contacts with IDs V-18PMMD and 0V-18PLID to Account with ID 1-2Z2.
- PUT URL: https://<hostname:port>/oracle/openintegration/v1.0/ui/Account Detail - Contacts View/SIS Account Entry Applet/1-2Z2/Account Contact List Applet/assoc/select
- Request Payload
[ { "id": "0V-18PMMD" }, { "id": "0V-18PLID" } ] -
Response Payload
{ "items": [ { "id": "0V-18PMMD", "status": "success" }, { "id": "0V-18PLID", "status": "success" } ], "UIMetadata": { .... } }
-
Associate Contacts with IDs Invalid (non existent) to Account with ID 1-2Z2.
- PUT URL: https://<hostname:port>/oracle/openintegration/v1.0/ui/Account Detail - Contacts View/SIS Account Entry Applet/1-2Z2/Account Contact List Applet/assoc/select
- Request Payload
[ { "id": "Invalid" } ] -
Response Payload
{ "items": [ { "id": "Invalid", "status": "fail" } ], "UIMetadata": { .... } }