Saviynt unveils its cutting-edge Intelligence Suite products to revolutionize Identity Security!
Click HERE to see how Saviynt Intelligence is transforming the industry.
Saviynt Copilot Icon

REST - Handle 'responseStatusCode-null' in Access Import to avoid job failures

IGAQ
New Contributor III
New Contributor III

Hello All,

While importing  access/entitlements from REST application, incase  if any account does not return any results , it will give null response, because of this import is failing.

IGAQ_0-1719497959296.png

Logs

=====

"2024-06-27T13:34:58.980+00:00","ecm-worker","services.HttpClientUtilityService","quartzScheduler_Worker-6-hgkx8","DEBUG","got response for api..."
"2024-06-27T13:34:58.981+00:00","ecm-worker","rest.RestUtilService","quartzScheduler_Worker-6-hgkx8","DEBUG","Got showLogs = true"
"2024-06-27T13:34:58.981+00:00","ecm-worker","rest.RestProvisioningService","quartzScheduler_Worker-6-hgkx8","DEBUG","Got Webservice API Response: [headers:[Vary: Origin, Vary: Access-Control-Request-Method, Vary: Access-Control-Request-Headers, Content-Length: 0, Date: Thu, 27 Jun 2024 13:34:57 GMT, Connection: close], responseText:, cookies:[], statusCode:400]"
"2024-06-27T13:34:58.981+00:00","ecm-worker","rest.RestUtilService","quartzScheduler_Worker-6-hgkx8","DEBUG","pullObjectsByRest - responseStatusCode ::400"
"2024-06-27T13:34:58.981+00:00","ecm-worker","rest.RestProvisioningService","quartzScheduler_Worker-6-hgkx8","ERROR","Exception in pullObjectsByRest :400"
"2024-06-27T13:34:58.981+00:00","ecm-worker","rest.RestProvisioningService","quartzScheduler_Worker-6-hgkx8","ERROR","Inside token Expiry Exception block. connectionParamMap.refreshTryCount : 5"
"2024-06-27T13:34:58.981+00:00","ecm-worker","rest.RestProvisioningService","quartzScheduler_Worker-6-hgkx8","DEBUG","Incrementing connectionParamMap.refreshTryCount : 6"
"2024-06-27T13:34:58.982+00:00","ecm-worker","rest.RestProvisioningService","quartzScheduler_Worker-6-hgkx8","DEBUG","maxRefreshTryCount : 5"
"2024-06-27T13:34:58.982+00:00","ecm-worker","rest.RestProvisioningService","quartzScheduler_Worker-6-hgkx8","ERROR","Exception in token refresh : null"
"2024-06-27T13:34:58.982+00:00","ecm-worker","rest.RestProvisioningService","quartzScheduler_Worker-6-hgkx8","ERROR","Error WebService call failed After retrying 5 times with responseStatusCode-null, Failed url-https://xxxxxxx?userId=xxxxxx, Error Message - null"
"2024-06-27T13:34:58.982+00:00","ecm-worker","rest.RestProvisioningService","quartzScheduler_Worker-6-hgkx8","DEBUG","Decrementing

 

Thanks,sb

4 REPLIES 4

rushikeshvartak
All-Star
All-Star

Please share import json 


Regards,
Rushikesh Vartak
If this helped you move forward, click 'Kudos'. If it solved your query, select 'Accept As Solution'.

IGAQ
New Contributor III
New Contributor III

PFB   

{ "accountParams": { "connection": "userAuth", "processingType": "SequentialAndIterative", "call": { "call1": { "callOrder": 0, "stageNumber": 0, "http": { "url": "@@URL/users", "httpHeaders": { "Accept": "application/json", "Authorization": "${access_token}" }, "httpContentType": "application/json", "httpMethod": "GET" }, "statusConfig": { "active": "A", "inactive": "T" }, "listField": "users", "keyField": "accountID", "colsToPropsMap": { "name": "username~#~char", "status": "status~#~char", "accountID": "uid~#~char", "customproperty1": "uid~#~char", "CUSTOMPROPERTY2": "idp~#~char", "customproperty3": "ad_domain~#~char", "CUSTOMPROPERTY4": "nick_name~#~char", "CUSTOMPROPERTY5": "first_name~#~char", "CUSTOMPROPERTY6": "last_name~#~char", "CUSTOMPROPERTY31": "STORE#ACC#ENT#MAPPINGINFO~#~char" } } }, "acctEntMappings": { "Roles": { "listPath": "resources", "idPath": "roleId", "keyField": "entitlementID" } } }, "entitlementParams": { "processingType": "SequentialAndIterative", "entTypes": { "Roles": { "entTypeOrder": 1, "entTypeLabels": {}, "call": { "call1": { "connection": "userAuth", "callOrder": 0, "stageNumber": 0, "http": { "httpHeaders": { "Authorization": "${access_token}" }, "url": "@@URL/roles", "httpContentType": "application/json", "httpMethod": "GET" }, "listField": "resources", "keyField": "entitlementID", "colsToPropsMap": { "description": "description~#~char", "customproperty1": "elevated_privilege~#~char", "entitlementID": "id~#~char", "entitlement_Value": "name~#~char", "displayname": "name~#~char" } } } } } }, "acctEntParams": { "connection": "userAuth", "entTypes": { "Roles": { "call": { "call1": { "callOrder": 0, "stageNumber": 0, "processingType": "httpAcctToEnt", "http": { "httpHeaders": { "Authorization": "${access_token}" }, "url": "@@URL/UserRole?userId=${id}", "httpContentType": "application/json", "httpMethod": "GET" }, "listField": "resources", "entKeyField": "entitlementID", "acctIdPath": "userId", "entIdPath": "roleId", "acctKeyField": "accountID" } } } } } }

IGAQ
New Contributor III
New Contributor III

Thank you all for the responses. It was an issue with target data, I have added this to handle the issue.

"statusAndThresholdConfig": {
"deleteLinks": true,
"accountThresholdValue": 500,
"correlateInactiveAccounts": false,
"inactivateAccountsNotInFile": false,
"deleteAccEntForActiveAccounts": true
},

To be add you have added 4xx & 5xx statucode in connection json.

👍Please click the 'Accept As Solution' button on the reply (or replies) that best answered your original question.


Regards,
Rushikesh Vartak
If this helped you move forward, click 'Kudos'. If it solved your query, select 'Accept As Solution'.