Click HERE to see how Saviynt Intelligence is transforming the industry. |
02/02/2024 03:48 AM - last edited on 02/05/2024 02:14 AM by Sunil
Hi Team ,
Can you please, let me know how we can consume below Api response:
Response :
{
"data": [
{
"report_header": {
"c3": {
"name": "PROJECTNUMBER",
"type": "java.lang.String"
},
"c4": {
"name": "GROUPID",
"type": "java.lang.Integer"
},
"c11": {
"name": "EMAIL",
"type": "java.lang.String"
},
"c5": {
"name": "GROUPNAME",
"type": "java.lang.String"
},
"c10": {
"name": "FULLNAME",
"type": "java.lang.String"
},
"c6": {
"name": "USERID",
"type": "java.lang.Integer"
},
"c7": {
"name": "USERNAME",
"type": "java.lang.String"
},
"c12": {
"name": "ISTEMPLATE",
"type": "java.lang.Boolean"
},
"c8": {
"name": "FIRSTNAME",
"type": "java.lang.String"
},
"c9": {
"name": "LASTNAME",
"type": "java.lang.String"
},
"c1": {
"name": "PID",
"type": "java.lang.Integer"
},
"c2": {
"name": "PROJECTNAME",
"type": "java.lang.String"
}
},
"report_row": [
{
"c1": "1,000 ",
"c10": "Company Administrator",
"c11": "<Email>",
"c12": "false",
"c2": "xyz",
"c3": "L0",
"c4": "1,000,001 ",
"c5": "Project Administrators",
"c6": "1,000 ",
"c7": "coadmin",
"c8": "Company",
"c9": "Administrator"
},
{2},
{3},
{n},
]
}
]
}
JSON :
------------------
Hi Team ,
Can you please look into this.
regards ,
VP.
[This message has been edited by moderator to merge reply comment]
02/05/2024 08:16 PM
Hello @IAM-Vaibhav,
The JSON structure provided in the above is not valid. I recommend rechecking the structure with your application team to ensure it is in valid json format.
Thanks.
02/05/2024 10:49 PM
Hi @sudeshjaiswal ,
earlier json response was sample to show how response comes from API,
You can find below json response in valid format.
Note: Values are dummy, please ignore values in response.
{
"data": [
{
"report_header": {
"c3": {
"name": "PROJECTNUMBER",
"type": "java.lang.String"
},
"c4": {
"name": "GROUPID",
"type": "java.lang.Integer"
},
"c11": {
"name": "EMAIL",
"type": "java.lang.String"
},
"c5": {
"name": "GROUPNAME",
"type": "java.lang.String"
},
"c10": {
"name": "FULLNAME",
"type": "java.lang.String"
},
"c6": {
"name": "USERID",
"type": "java.lang.Integer"
},
"c7": {
"name": "USERNAME",
"type": "java.lang.String"
},
"c12": {
"name": "ISTEMPLATE",
"type": "java.lang.Boolean"
},
"c8": {
"name": "FIRSTNAME",
"type": "java.lang.String"
},
"c9": {
"name": "LASTNAME",
"type": "java.lang.String"
},
"c1": {
"name": "PID",
"type": "java.lang.Integer"
},
"c2": {
"name": "PROJECTNAME",
"type": "java.lang.String"
}
},
"report_row": [
{
"c1": "1,000 ",
"c10": "Company Administrator",
"c11": "<Email>",
"c12": "false",
"c2": "xyz",
"c3": "L0",
"c4": "1,000,001 ",
"c5": "Project Administrators",
"c6": "1,000 ",
"c7": "coadmin",
"c8": "Company",
"c9": "Administrator"
},
{
"c1": "1,000 ",
"c10": "Company Administrator",
"c11": "<Email>",
"c12": "false",
"c2": "xyz",
"c3": "L0",
"c4": "1,000,001 ",
"c5": "Project Administrators",
"c6": "1,000 ",
"c7": "coadmin",
"c8": "Company",
"c9": "Administrator"
},
{
"c1": "1,000 ",
"c10": "Company Administrator",
"c11": "<Email>",
"c12": "false",
"c2": "xyz",
"c3": "L0",
"c4": "1,000,001 ",
"c5": "Project Administrators",
"c6": "1,000 ",
"c7": "coadmin",
"c8": "Company",
"c9": "Administrator"
}
]
}
]
}
02/05/2024 11:33 PM
Hello @IAM-Vaibhav,
Can you please share the complete json , are you able to import the accounts?
Also please share the postman response of the both.
Please try with the below sample, also share the above information, as the usecase is still not clear.
{
"acctEntParams": {
"entTypes": {
"Project": {
"call": {
"call1": {
"processingType": "http",
"connection": "acctAuth",
"callOrder": 0,
"stageNumber": 0,
"http": {
"httpHeaders": {
"Authorization": "${access_token}"
},
"url": "https://<hotsname>/ws/rest/service/v1/admin/shell",
"httpContentType": "application/json",
"httpMethod": "POST",
"httpParams": {
"reportname":"User Project Group Assignment"
}
},
"listField": "data",
"acctIdPath": "report_row[2]~dot#c11",
"entIdPath": "report_row[2]~dot#c3",
"acctKeyField": "accountID",
"entKeyField": "entitlementID"
}
}
}
}
}
}
Thanks.
02/05/2024 11:57 PM
Hi @sudeshjaiswal ,
I am mapping Account to Entitlement, here is Entire Json and i shared you other details on private chat.
{
"accountParams": {
"connection": "acctAuth",
"processingType": "SequentialAndIterative",
"call": {
"call1": {
"callOrder": 0,
"stageNumber": 0,
"http": {
"url": "<hostname>ws/rest/service/v1/admin/user/get",
"httpParams": "{\"filterCondition\":\"uuu_user_status=1\"}",
"httpHeaders": {
"Authorization": "${access_token}",
"Accept": "application/json"
},
"httpContentType": "application/json",
"httpMethod": "POST"
},
"listField": "data",
"keyField": "accountID",
"colsToPropsMap": {
"accountID": "empEmployeeIDTB50~#~char",
"name": "empEmployeeIDTB50~#~char",
"customproperty2": "uuu_user_name~#~char",
"customproperty3": "uuu_user_status~#~char",
"customproperty4": "uuu_user_dateformat~#~char",
"customproperty5": "uuu_user_firstname~#~char",
"customproperty6": "uuu_user_lastname~#~char",
"customproperty7": "uuu_user_loginname~#~char",
"customproperty8": "uuu_user_proxy~#~char",
"customproperty9": "uuu_user_company~#~char",
"customproperty10": "empEmployeeRegHrsDA~#~char",
"customproperty11": "uuu_user_timezone_pref~#~char",
"customproperty12": "empEmployeeIDTB50~#~char",
"customproperty31": "STORE#ACC#ENT#MAPPINGINFO~#~char"
}
}
}
},
"entitlementParams": {
"connection": "acctAuth",
"processingType": "SequentialAndIterative",
"entTypes": {
"Project": {
"entTypeOrder": 0,
"call": {
"call1": {
"callOrder": 0,
"stageNumber": 0,
"http": {
"url": "<hostname>ws/rest/service/v1/admin/shell",
"httpHeaders": {
"Authorization": "${access_token}",
"Accept": "application/json"
},
"httpContentType": "application/json",
"httpParams": {},
"httpMethod": "GET"
},
"listField": "data",
"keyField": "entitlementID",
"colsToPropsMap": {
"entitlementID": "shell_number~#~char",
"entitlement_value": "shell_name~#~char",
"customproperty1": "reportingunit~#~char",
"customproperty2": "reportingunitregion~#~char",
"customproperty3": "GPG~#~char",
"customproperty4": "ERP_id~#~char",
"customproperty5": "ERP_system_Id~#~char",
"customproperty6": "shell_number~#~char"
},
"successResponses": {
"statusCode": [
200
]
},
"unsuccessResponses": {
"statusCode": [
500,
401,
403
]
}
}
}
}
}
},
"acctEntParams": {
"entTypes": {
"Project": {
"call": {
"call1": {
"processingType": "http",
"connection": "acctAuth",
"callOrder": 0,
"stageNumber": 0,
"http": {
"url": "<hostname>ws/rest/service/v1/data/udr/get",
"httpHeaders": {
"Authorization": "${access_token}",
"Accept": "application/json"
},
"httpContentType": "application/json",
"httpParams": "{\"reportname\": \"User Project Group Assignment\"}",
"httpMethod": "POST"
},
"listField": "data",
"acctIdPath": "report_row[2].c11",
"entIdPath": "report_row[2].c3",
"acctKeyField": "accountID",
"entKeyField": "entitlementID"
}
}
}
}
}
}
02/06/2024 07:49 PM - edited 02/06/2024 07:50 PM
Hello @IAM-Vaibhav,
The mapping seems to be wrong, as in account params your unique key field is""accountID": "empEmployeeIDTB50~#~char" and the acctentparams and you have mentioned the "acctKeyField": "accountID", but the mapping should be on the email.
that may be the reason you are not able to map the entitlement.
Is account and entitments are getting imported ??
Thanks.
02/07/2024 01:40 AM
Hi @sudeshjaiswal ,
account and entitlements are imported properly. Can we have a call to discuss this.
we haven't email in as account iD in import account.
Could you please clarify why I need to use email.
02/07/2024 06:58 AM
Hello Vaibhav,
Based on the above response, mapping the entitlement and account won't be feasible.
Thanks.
02/08/2024 12:20 AM
HI @sudeshjaiswal ,
Any alternative for this?.
02/12/2024 11:17 PM
Hi @sudeshjaiswal ,
After Account and Entitlement import completed, we observed that entitlement associated with Account are getting flushed out due to this mapping is not in place. Before Import we can see entitlement associated to Account.
Please suggest alternative to fulfill this requirement as its very much important.
03/12/2024 07:26 PM
Can you share current JSON