About Importing Lists Of Values (LOVs) Using REST API
The LOV Import Service provides a mechanism to load LOVs into the Siebel CRM database, either individually or in bulk. This capability is available in both the design repository (DR) environment for development environments and the runtime repository (RR) for test or production environments.
The following defines the LOV Import Service REST API:
-
URI: http://ServerName:port/siebel/v1.0/service/LOV Import Service/Upsert
-
HTTP Method: POST
-
Content-Type: application/json
-
Authorization: Basic
-
Request body:
{"body":{ "WorkspaceName":"<Developer Workspace>", "ParentWorkspaceName":"<Parent Integration Workspace", "SiebelMessage":{ "MessageId":"", "MessageType":"Integration Object", "IntObjectName":"List Of Values", "IntObjectFormat":"Siebel Hierarchical", "ListOfList Of Values":{ "List Of Values":[ { "Order By":"1", "Name":"<Language Independent Code>", "Replication Level":"All", "Type":"<LOV TYPE>", "Translate":"N", "Multilingual":"<Y/N>", "Language":"<LANG_CD>", "Active":"Y", "Description":"<Description>", "Sub Type":"", "Value":"<Language Dependent Code>" },…
The following table describes the request message fields associated with this API.
Name | Description |
---|---|
WorkspaceName |
The workspace where the LOV is created. |
ParentWorkspaceName |
The parent integration workspace for the WorkspaceName entry where the LOVs are created. |
Name |
The language-independent code. |
Type |
The LOV type. |
Multilingual |
If the LOV_TYPE record is MLOV, then set this entry to Y. For all other LOVs, including all non-LOV_TYPE records, set this entry to N. |
Language |
Used for only GET or Query operations to specify a comma-separated list of child Business Components that require links returned in the REST API response. The response returns only links to child objects specified in this parameter value. For more information on the childlinks parameter, see Querying for a Siebel CRM Repository Resource To Return Only One Child Link. |
Description |
The three letter language code for the language, for example, ENU or FRA. |
Value |
The display value for the language-independent code. |
{
"body": {
"WorkspaceName": "dev_sadmin_LOVExample",
"ParentWorkspaceName": "MAIN",
"SiebelMessage": {
"MessageId": "",
"MessageType": "Integration Object",
"IntObjectName": "List Of Values",
"IntObjectFormat": "Siebel Hierarchical",
"ListOfList Of Values": {
"List Of Values": [
{
"Order By": "1",
"Name": "REST_LOV_TYPE_TEST",
"Replication Level": "All",
"Type": "LOV_TYPE",
"Translate": "Y",
"Multilingual": "N",
"Language": "ENU",
"Active": "Y",
"Description": "Creates an LOV_TYPE named REST_LOV_TYPE_TEST",
"Sub Type": "",
"Value": " REST_LOV_TYPE_TEST "
},
{
"Order By": "1",
"Name": "LOV #1",
"Replication Level": "All",
"Type": "REST_LOV_TYPE_TEST",
"Translate": "Y",
"Multilingual": "N",
"Language": "ENU",
"Active": "Y",
"Description": "Creates LOV named “LOV #1” of LOV TYPE “REST_LOV_TYPE_TEST”",
"Sub Type": "",
"Value": "LOV #1"
},
{
"Order By": "2",
"Name": "LOV #2",
"Replication Level": "All",
"Type": "REST_LOV_TYPE_TEST",
"Translate": "Y",
"Multilingual": "N",
"Language": "ENU",
"Active": "Y",
"Description": "Creates LOV named “LOV#2” of LOV TYPE “REST_LOV_TYPE_TEST”",
"Sub Type": "",
"Value": "LOV #2"
}
]
}
}
}
}
-
If you are loading a new LOV_TYPE, you must create the LOV_TYPE record first, then create the detail records afterwards.
-
To load more than one LOV at a time, create a new List Of Values section in the request payload for each LOV.
-
LOVs are automatically created in all integration workspaces and main workspaces, which is consistent with how LOVs are created in the user interface or EIM.
Here are the response details for a successful request:
-
HTTP Code: 200
-
Content-Type: application/json
-
Response body:
{ "ErrorContextSearchSpec": "", "OMErrorCode": "", "ErrorSymbol": "", "OMErrorSymbol": "", "ErrorCode": "0x0", "ErrorContextIntComp": "", "SiebelMessage": { "IntObjectFormat": "Siebel Hierarchical", "MessageId": "", "IntObjectName": "List Of Values", "MessageType": "Integration Object", "List Of Values": [ { "Description": "Creates an LOV_TYPE named REST_LOV_TYPE_TEST", "Type": "LOV_TYPE", "Language": "ENU", "Id": "9SIA-D8H17", "Active": "Y", "Name": "REST_LOV_TYPE_TEST", "Translate": "Y", "Order By": "1", "Multilingual": "N", "Value": " REST_LOV_TYPE_TEST ", "Replication Level": "All", "Sub Type": "" }, { "Description": "Creates LOV named �LOV #1� of LOV TYPE �REST_LOV_TYPE_TEST�", "Type": "REST_LOV_TYPE_TEST", "Language": "ENU", "Id": "9SIA-D8H1F", "Active": "Y", "Name": "LOV #1", "Translate": "Y", "Order By": "1", "Multilingual": "N", "Value": "LOV #1", "Replication Level": "All", "Sub Type": "" }, { "Description": "Creates LOV named �LOV#2� of LOV TYPE �REST_LOV_TYPE_TEST�", "Type": "REST_LOV_TYPE_TEST", "Language": "ENU", "Id": "9SIA-D8H1N", "Active": "Y", "Name": "LOV #2", "Translate": "Y", "Order By": "2", "Multilingual": "N", "Value": "LOV #2", "Replication Level": "All", "Sub Type": "" } ] } }
The following table describes the response details for common failed requests:
Name | Siebel Error | Solution |
---|---|---|
404 |
{"ERROR":"Business Service 'LOV Import Service' does not exist.(SBL-EAI-04299)"} |
Run the RepositoryUpgrade utility or manually create the LOV Import Service as described in the Monthly Update Guide. |
403 |
{"ERROR":"Access to Resource LOV Import Service of type Business Service is denied(SBL-DAT-00825)"} |
Grant the user access to the LOV Import Service / UpsertLOV business service and method, |
Other |
This refers to any other non-200 status code responses. |
To diagnose other non-200 responses, see About Standard HTTP Status Codes and Error Messages. |
Related Books
For more information about how LOVs work in workspaces in Siebel Web Tools or Siebel Tools, see Using Siebel Tools.
For more information about working with LOVs in the Siebel application user interface and about rolling back to a prior version of the runtime repository, see Siebel Applications Administration Guide.
For information about importing LOVs using EIM, see Siebel Enterprise Integration Manager Administration Guide.
For more information about performing repository migrations, see Siebel Database Upgrade Guide.