Announcing the Saviynt Knowledge Exchange unifying the Saviynt forums, documentation, training,
and more in a single search tool across platforms. Read the announcement here.

Account and Entitlement are not being imported

navneetv
Regular Contributor II
Regular Contributor II

Hi Team,

please help or advise here.  I have set up a connection for one of the applications with a rest connector. However, when I ran the job nothing hasn't been imported .

EndPoint system response 

Account 

navneetv_0-1688645243557.png

Role

navneetv_1-1688645318317.png

 

Connection JSON( Since the token is Static Access Token, that's why I used this connection JSON which I got from the developer HandbookKB)

{
"authentications": {
"acctAuth": {
"authType": "oauth2",
"url": "https://<endpoint.url>/api/v1/scim/Users",
"httpMethod": "GET",
"httpParams": {},
"httpHeaders": {
"contentType": "application/json"
},
"httpContentType": "application/json",
"expiryError": "ExpiredAuthenticationToken",
"authError": [
"InvalidAuthenticationToken",
"AuthenticationFailed"
],
"timeOutError": "Read timed out",
"errorPath": "error.code",
"maxRefreshTryCount": 5,
"tokenResponsePath": "access_token",
"tokenType": "Bearer",
"accessToken": "Bearer <token>"
}
}
}

Account Import

{
"accountParams": {
"connection": "acctAuth",
"includeExistingInActiveAccounts": true,
"processingType": "SequentialAndIterative",
"call": {
"call1": {
"callOrder": 0,
"stageNumber": 0,
"http": {
"url": "https://<endpoint>/api/v1/scim/Users",
"httpHeaders": {
"Authorization": "${access_token}"
},
"httpContentType": "application/json",
"httpMethod": "GET"
},
"listField": "Resources",
"keyField": "accountID",
"colsToPropsMap": {
"accountID": "Id~#~char",
"name": "UserName~#~char",
"status": "active~#~bool",
"displayName": "UserName~#~char",
"customproperty1": "name.givenName~#~char",
"customproperty2": "name.familyName~#~char",
"customproperty4": "IsActive~#~char",
"customproperty5": "email~#~char",
"customproperty6": "title~#~char",
"customproperty7": "externalId~#~char",
"customproperty31": "STORE#ACC#ENT#MAPPINGINFO~#~char"
}
}
},
"acctEntMappings": {
"Roles": {
"listPath": "roles.value",
"idPath": "",
"keyField": "entitlementID"
}
}
},
"entitlementParams": {
"connection": "acctAuth",
"processingType": "SequentialAndIterative",
"entTypes": {
"Roles": {
"call": {
"call1": {
"connection": "acctAuth",
"callOrder": 0,
"stageNumber": 0,
"http": {
"url": "https://<endpoint>/api/v1/roles",
"httpMethod": "GET",
"httpContentType": "application/json",
"httpHeaders": {
"Authorization": "${access_token}"
}
},
"listField": "roles",
"keyField": "entitlementID",
"colsToPropsMap": {
"entitlementID": "id~#~char",
"entitlement_value": "Name~#~char",
"displayname": "DisplayName~#~char"
},
"disableDeletedEntitlements": true
}
}
}
}
},
"acctEntParams": {
"processingType": "acctToEntMapping"
}
}
15 REPLIES 15

dgandhi
All-Star
All-Star

Is the API working from postman?

If yes then what is the error you get when you run the job in Saviynt?

Thanks,
Devang Gandhi
If this reply answered your question, please Accept As Solution and give Kudos to help others who may have a similar problem.

navneetv
Regular Contributor II
Regular Contributor II

Hi Devang,

Yes, it is working with Postman. i have attached a screenshot above. Here are logs

 

2023-07-06T17:03:57+05:30-ecm-worker-{"log":"2023-07-06 11:33:56,734 [quartzScheduler_Worker-8] DEBUG integration.ExternalConnectionCallService - Key=connectionname Value=AuditBoard\n","stream":"stdout","time":"2023-07-06T11:33:56.735120889Z"}
 
2023-07-06T17:03:57+05:30-ecm-worker-{"log":"2023-07-06 11:33:56,739 [quartzScheduler_Worker-8] DEBUG services.ImportUtilityService - Endpoint 'AuditBoard' found for the Security System 'AuditBoard' with Endpointkey: 44\n","stream":"stdout","time":"2023-07-06T11:33:56.739948522Z"}
 
2023-07-06T17:03:57+05:30-ecm-worker-{"log":"2023-07-06 11:33:56,739 [quartzScheduler_Worker-8] DEBUG integration.ExternalConnectionCallService - *******endpoint=AuditBoard and secSystem=AuditBoard******************\n","stream":"stdout","time":"2023-07-06T11:33:56.739963257Z"}
 
2023-07-06T17:03:57+05:30-ecm-worker-{"log":"2023-07-06 11:33:56,741 [quartzScheduler_Worker-8] DEBUG rest.RestProvisioningService - Loading Start for Security System - AuditBoard\n","stream":"stdout","time":"2023-07-06T11:33:56.741596241Z"}
 
2023-07-06T17:03:57+05:30-ecm-worker-{"log":"2023-07-06 11:33:56,741 [quartzScheduler_Worker-8] DEBUG rest.RestProvisioningService - Finding Endpoint for the security System - AuditBoard\n","stream":"stdout","time":"2023-07-06T11:33:56.74160423Z"}
 
2023-07-06T17:03:57+05:30-ecm-worker-{"log":"2023-07-06 11:33:56,744 [quartzScheduler_Worker-8] DEBUG services.ImportUtilityService - Endpoint 'AuditBoard' found for the Security System 'AuditBoard' with Endpointkey: 44\n","stream":"stdout","time":"2023-07-06T11:33:56.744575556Z"}
 
2023-07-06T17:03:57+05:30-ecm-worker-{"log":"2023-07-06 11:33:56,771 [quartzScheduler_Worker-8] DEBUG services.ImportUtilityService - EntitlementType 'Roles' for Endpoint 'AuditBoard' found with EntitlementTypekey - 68\n","stream":"stdout","time":"2023-07-06T11:33:56.771099526Z"}
 
2023-07-06T17:03:03+05:30-ecm-worker-{"log":"2023-07-06 11:33:02,780 [quartzScheduler_Worker-6] DEBUG integration.ExternalConnectionCallService - Key=connectionname Value=AuditBoard\n","stream":"stdout","time":"2023-07-06T11:33:02.780516227Z"}
 
2023-07-06T17:03:03+05:30-ecm-worker-{"log":"2023-07-06 11:33:02,801 [quartzScheduler_Worker-6] DEBUG services.ImportUtilityService - Endpoint 'AuditBoard' found for the Security System 'AuditBoard' with Endpointkey: 44\n","stream":"stdout","time":"2023-07-06T11:33:02.801937969Z"}
 
2023-07-06T17:03:03+05:30-ecm-worker-{"log":"2023-07-06 11:33:02,801 [quartzScheduler_Worker-6] DEBUG integration.ExternalConnectionCallService - *******endpoint=AuditBoard and secSystem=AuditBoard******************\n","stream":"stdout","time":"2023-07-06T11:33:02.801956698Z"}
 
2023-07-06T17:03:03+05:30-ecm-worker-{"log":"2023-07-06 11:33:02,803 [quartzScheduler_Worker-6] DEBUG rest.RestProvisioningService - Loading Start for Security System - AuditBoard\n","stream":"stdout","time":"2023-07-06T11:33:02.80378128Z"}
 
2023-07-06T17:03:03+05:30-ecm-worker-{"log":"2023-07-06 11:33:02,803 [quartzScheduler_Worker-6] DEBUG rest.RestProvisioningService - Finding Endpoint for the security System - AuditBoard\n","stream":"stdout","time":"2023-07-06T11:33:02.803787077Z"}
 
2023-07-06T17:03:03+05:30-ecm-worker-{"log":"2023-07-06 11:33:02,806 [quartzScheduler_Worker-6] DEBUG services.ImportUtilityService - Endpoint 'AuditBoard' found for the Security System 'AuditBoard' with Endpointkey: 44\n","stream":"stdout","time":"2023-07-06T11:33:02.80689442Z"}
 
2023-07-06T17:03:03+05:30-ecm-worker-{"log":"2023-07-06 11:33:02,840 [quartzScheduler_Worker-6] DEBUG services.ImportUtilityService - EntitlementType 'Roles' for Endpoint 'AuditBoard' found with EntitlementTypekey - 68\n","stream":"stdout","time":"2023-07-06T11:33:02.840597522Z"}
 
2023-07-06T17:02:29+05:30-ecm-{"log":"2023-07-06 11:32:28,640 [http-nio-8080-exec-7] DEBUG integration.ExternalConnectionCallService - in testExternalConnection for External Connection : AuditBoard\n","stream":"stdout","time":"2023-07-06T11:32:28.640553541Z"}
2023-07-06T14:24:07+05:30-ecm-{"log":"2023-07-06 08:54:07,023 [http-nio-8080-exec-8] DEBUG controllers.SecuritysystemsController - securitySystem countQry SELECT COUNT(*) AS TOTAL FROM Securitysystems a LEFT JOIN a.externalConnection AS ec where 1=1 and ( (upper(a.systemname) like '%auditboard%' or upper(a.displayName) like '%auditboard%' or a.hostname like '%auditboard%' or a.accessAddWorkflow like '%auditboard%' or a.accessRemoveWorkflow like '%auditboard%' or a.port like '%auditboard%' or(ec is not null and ec.connectionname like '%auditboard%' )) ) \n","stream":"stdout","time":"2023-07-06T08:54:07.023523419Z"}
 
2023-07-06T14:24:07+05:30-ecm-{"log":"SELECT a FROM Securitysystems a LEFT JOIN a.externalConnection AS ec where 1=1 and ( (upper(a.systemname) like '%auditboard%' or upper(a.displayName) like '%auditboard%' or a.hostname like '%auditboard%' or a.accessAddWorkflow like '%auditboard%' or a.accessRemoveWorkflow like '%auditboard%' or a.port like '%auditboard%' or(ec is not null and ec.connectionname like '%auditboard%' )) ) ORDER BY ifnull(displayName,systemname) asc\n","stream":"stdout","time":"2023-07-06T08:54:07.023559816Z"}
 
 

navneetv
Regular Contributor II
Regular Contributor II

Hi Saviynt Team,

could you please help or advise what I am doing wrong here? 

navneetv
Regular Contributor II
Regular Contributor II

Hi @saviynt Team,

can you take a look? i am unable to figure out, what I am doing wrong here. 

navneetv
Regular Contributor II
Regular Contributor II

Hi @SB  could you please help here as well? this is a new application that I want to onboard as well. and I am unable to figure out what I am doing wrong.

SB
Saviynt Employee
Saviynt Employee

Can you update ConfigJSON param in the REST connection with value {"showLogs":true}, run the job and check for the error you get.


Regards,
Sahil

navneetv
Regular Contributor II
Regular Contributor II

Hi @SB Not getting error, JOB showing successfully however in the job detail import active user count is  showing 0 and in endpoint, nothing is imported 

Also, I have already configured the log"showLogs":true}" ConfigJSON param in the REST connection

 

navneetv_0-1688787120584.png

 

Its best way to read documentation on eaxh fields in json and use in your application 


Regards,
Rushikesh Vartak
If you find the response useful, kindly consider selecting Accept As Solution and clicking on the kudos button.

navneetv
Regular Contributor II
Regular Contributor II

Hi @rushikeshvartak  and @SB I tried with all way and as per logs saviynt getting a response, However is not being mapped with the endpoint 

navneetv_0-1688838667054.png

[Image edited to mask PII information by Saviynt Community Admin]

 

Does cp31 populated


Regards,
Rushikesh Vartak
If you find the response useful, kindly consider selecting Accept As Solution and clicking on the kudos button.

navneetv
Regular Contributor II
Regular Contributor II

Hi, @rushikeshvartak  Neither  CP31  is populated nor other attributes too.

Also, can you suggest what can be "listField"? Either "Resources" or "schemas.Resources". I tried with both, still no luck , nothing is populated in EndPoint

Resources",

navneetv_0-1688894813250.png

 

Share current json and output in text file


Regards,
Rushikesh Vartak
If you find the response useful, kindly consider selecting Accept As Solution and clicking on the kudos button.

navneetv
Regular Contributor II
Regular Contributor II

Hi @rushikeshvartak thank you for taking a look into it. I am attaching the below file.

connection JSON

AccountImportJSON

Application endpoint API response payload body (Inclused User and Role)

Vedanth_BK
Saviynt Employee
Saviynt Employee

Hi @navneetv 

Analyzing the JSON and the response snapshot attached above, I noticed that the accountID is mapped to Id but that it is all lowercase in the response, please update and verify the other fields as well for case sensitivity.

Vedanth_BK_0-1688972838830.png

Vedanth_BK_1-1688972885258.png

 

Thank you
Vedanth B.K

navneetv
Regular Contributor II
Regular Contributor II

Hi @Vedanth_BK  it worked . by making "id" in small CAPs. thank you for noticing this. 

@thankyou guys @rushikeshvartak @SB @dgandhi  for working on it .