and more in a single search tool across platforms. Read the announcement here. |
05/18/2023 12:16 AM
Hello Team,
We are trying to get the accounts and entitlements from SAP IdM through scim based REST. Has anyone worked on scim before? If yes, please need a reference on how importAccountEntJSON will look like. Searched few forum posts and saw the following format:
"urn:ietf:params:scim:schemas:core:2.0:User"
And
"urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"
Is there any documentation available on this? Please help with any references.
Thanks,
Harsha
05/22/2023 10:09 PM
Hello @Harsha,
We are checking internally on this; we will let you know once we have the information.
Thanks,
05/23/2023 12:56 AM
Hello,
as I mentioned above we are integrating SAP IdM and in postman, I can see the response. I am trying to fetch just 1 account now. Below is response:
{
"Resources": [
{
"id": "254",
"externalId": "XYZ1",
"meta": {
"created": "2021-12-10T13:29:30Z",
"lastModified": "2023-01-19T17:20:08Z",
"location": "url/idm/v1/Users/254",
"resourceType": "User"
},
"schemas": [
"urn:ietf:params:scim:schemas:core:2.0:User"
],
"userName": "XYZ1",
"name": {
"familyName": "YZ",
"givenName": "X"
},
"displayName": "X YZ",
"active": true,
"groups": [
{
"value": "PRIV:AD:ONLY",
"display": "PRIV:AD:ONLY",
"primary": false,
"$ref": "url/idm/v1/Groups/PRIV:AD:ONLY"
},
{
"value": "PRIV:GROUP:AD:gg_ITA18_CTX_FF4",
"display": "PRIV:GROUP:AD:gg_ITA18_CTX_FF4",
"primary": false,
"$ref": "url/idm/v1/Groups/PRIV:GROUP:AD:gg_ITA18_CTX_FF4"
},
{
"value": "PRIV:GROUP:AD:gg_ITA18_CTX_FS3",
"display": "PRIV:GROUP:AD:gg_ITA18_CTX_FS3",
"primary": false,
"$ref": "url/idm/v1/Groups/PRIV:GROUP:AD:gg_ITA18_CTX_FS3"
}
and saviynt importaccountjson is as following:
{
"accountParams": {
"connection": "acctAuth",
"processingType": "SequentialAndIterative",
"call": {
"call1": {
"callOrder": 0,
"stageNumber": 0,
"http": {
"url": "url/idm/v1/Users?filter=externalId sw XYZ1",
"httpHeaders": {
"Authorization": "Basic token"
},
"httpContentType": "application/x-www-form-urlencoded",
"httpMethod": "GET"
},
"statusConfig": {
"active": "true",
"inactive": "false"
}
},
"listField": "urn:ietf:params:scim:schemas:core:2~dot#0:User",
"keyField": "accountID",
"colsToPropsMap": {
"accountID": "urn:ietf:params:scim:schemas:core:2~dot#0:User.externalId~#~char",
"username": "urn:ietf:params:scim:schemas:core:2~dot#0:User.userName~#~char",
"status": "urn:ietf:params:scim:schemas:core:2~dot#0:User.active~#~char"
}
}
}
Note: also tried listfield like Resources,x.Resources,x.Resources[0]. No matter what import says success but doesnt import anything. Please help me where I need to make changes so this will work?
Thanks,
Harsha
05/23/2023 02:14 AM
Hello @Harsha
Can you please try the below json, I have updated the "listField": "\"Resources\"",
{
"accountParams": {
"connection": "acctAuth",
"processingType": "SequentialAndIterative",
"call": {
"call1": {
"callOrder": 0,
"stageNumber": 0,
"http": {
"url": "url/idm/v1/Users?filter=externalId sw XYZ1",
"httpHeaders": {
"Authorization": "Basic token"
},
"httpContentType": "application/x-www-form-urlencoded",
"httpMethod": "GET"
},
"statusConfig": {
"active": "true",
"inactive": "false"
}
}
},
"listField": "\"Resources\"",
"keyField": "accountID",
"colsToPropsMap": {
"accountID": "urn:ietf:params:scim:schemas:core:2~dot#0:User.externalId~#~char",
"username": "urn:ietf:params:scim:schemas:core:2~dot#0:User.userName~#~char",
"status": "urn:ietf:params:scim:schemas:core:2~dot#0:User.active~#~char"
}
}
}
Thanks,
05/23/2023 03:14 AM
Hello,
Thank you for quick response, I tried with listfield you mentioned still no luck.
Thanks,
Harsha
05/23/2023 03:33 AM
Hello @Harsha,
Could you please try checking the logs for any error messages?
Thanks
05/23/2023 04:16 AM
05/23/2023 06:27 AM
Hello @Harsha ,
Can you please try with the below JSON and check,
{
"accountParams":{
"connection":"acctAuth",
"processingType":"SequentialAndIterative",
"call":{
"call1":{
"callOrder":0,
"stageNumber":0,
"http":{
"url":"url/idm/v1/Users?filter=externalId sw XYZ1",
"httpHeaders":{
"Authorization":"Basic token"
},
"httpContentType":"application/x-www-form-urlencoded",
"httpMethod":"GET"
},
"statusConfig":{
"active":"true",
"inactive":"false"
}
}
},
"listField":"Resources",
"keyField":"accountID",
"colsToPropsMap":{
"accountID":"externalId~#~char",
"username":"userName~#~char",
"status":"active~#~char"
}
}
}
Thanks,
05/23/2023 06:40 AM
Hello @sudeshjaiswal ,
This above json I tried first then tried different variation I mentioned. It has not worked.
Thanks,
Harsha
05/31/2023 09:39 AM
Hi @Harsha,
Please share the complete Postman response for one account in a text file, as the shared response is incomplete.
Thank you
Vedanth B.K