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

Cannot get property 'connection' on null object

ejeong
Valued Contributor
Valued Contributor

when trying to import application list from okta. 

I am seeing following error. Anyone seen this error?

ejeong_0-1690259888868.png

 

Here is JSON I made

 

{
"accountParams": {
"connection": "acctAuth",
"processingType": "SequentialAndIterative",
"call": {
"call1": {
"callOrder": 0,
"stageNumber": 0,
"http": {
"url":
"httpHeaders": {
"Authorization":
},
"httpContentType": "application/x-www-form-urlencoded",
"httpMethod": "GET"
},
"listField": "",
"keyField": "accountID",
"colsToPropsMap": {
"customproperty1": "profile.login~#~char",
"name": "profile.login~#~char",
"lastlogondate": "lastLogin~#~millisec",
"accountID": "id~#~char",
"customproperty2": "profile.email~#~char",
"customproperty18": "profile.mobilePhone~#~char",
"customproperty6": "profile.firstName~#~char",
"customproperty9": "profile.lastName~#~char",
"displayname": "profile.displayName~#~char",
"customproperty15": "profile.employeeType~#~char",
"customproperty27": "lastLogin~#~char"
},
"pagination": {
"nextUrl": {
"nextUrlPath": "${(headers.Link?.contains(','))? headers.Link?.split(',')[1].replace('<', '').replace('>; rel=\"next\"','').trim() : ''}"
}
}
}
}
},
"entitlementParams": {
"connection": "acctAuth",
"processingType": "SequentialAndIterative",
"entTypes": {
"Group": {
"entTypeOrder": 0,
"call": {
"call1": {
"callOrder": 0,
"stageNumber": 0,
"http": {
"url": "",
"httpHeaders": {
"Authorization": "",
"Accept": "application/json"
},
"httpContentType": "application/json",
"httpMethod": "GET"
},
"listField": "",
"keyField": "entitlementID",
"colsToPropsMap": {
"entitlementID": "id~#~char",
"entitlement_value": "profile.name~#~char",
"displayname": "profile.description~#~char~#~char"
},
"pagination": {
"nextUrl": {
"nextUrlPath": "${(headers.Link?.contains(','))? headers.Link?.split(',')[1].replace('<', '').replace('>; rel=\"next\"','').trim() : ''}"
},
"disableDeletedEntitlements": true
}
}
}
},
"Applications": {
"entTypeOrder": 0,
"call": {
"call1": {
"callOrder": 0,
"stageNumber": 0,
"http": {
"url": "",
"httpHeaders": {
"Authorization": ,
"Accept": "application/json"
},
"httpContentType": "application/json",
"httpMethod": "GET"
},
"listField": "",
"keyField": "entitlementID",
"colsToPropsMap": {
"entitlementID": "id~#~char",
"entitlement_value": "name~#~char",
"displayname": "label~#~char"
},
"pagination": {
"nextUrl": {
"nextUrlPath": "${(headers.Link?.contains(','))? headers.Link?.split(',')[1].replace('<', '').replace('>; rel=\"next\"','').trim() : ''}"
},
"disableDeletedEntitlements": true
}
}
}
}
}
}
}

 

8 REPLIES 8

rushikeshvartak
All-Star
All-Star

Your connection name in json and connection json must be different 


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

I suspected that... but it is same.. even I applied new connectionJSON yesterday..

 

ejeong
Valued Contributor
Valued Contributor

ejeong_0-1690264121118.png

ejeong_2-1690264188959.png

 

 

naveenss
All-Star
All-Star

@ejeong  looks like in your importJson acceEntParams is missing. please add a blank parameter like below and try once.

"acctEntParams":{}

Regards,
Naveen Sakleshpur
If this reply answered your question, please click the Accept As Solution button to help future users who may have a similar problem.

ejeong
Valued Contributor
Valued Contributor

ah ok. let me try that

ejeong
Valued Contributor
Valued Contributor

@naveenss Thanks. that's fixed! 

I have one more question. can you please let me know why this import is not calling next page? 

This is may access import JSON

"Applications": {
"entTypeOrder": 0,
"call": {
"call1": {
"callOrder": 0,
"stageNumber": 1,
"http": {
"url": "https://URL/api/v1/apps?limit=200",
"httpHeaders": {
"Authorization": "",
"Accept": "application/json"
},
"httpContentType": "application/json",
"httpMethod": "GET"
},
"listField": "",
"keyField": "entitlementID",
"colsToPropsMap": {
"entitlementID": "id~#~char",
"entitlement_value": "name~#~char",
"displayname": "label~#~char",
"description": "label~#~char"
},
"pagination": {
"nextUrl": {
"nextUrlPath": "${(headers.Link?.contains(','))? headers.Link?.split(',')[1].replace('<', '').replace('>; rel=\"next\"','').trim() : ''}"
}

 

This is Header. I don't know why Saviynt is not caling next url and finish it without error

ejeong_0-1690274769042.png

 

ejeong_1-1690274811637.png

we have more than 800 active apps in OKTA so I am expecting all of them should be imported..

 

 

Hi @ejeong  I dont see any problem with the pagination expression. Do you see any findings in the logs? Are you comfortable sharing the logs for me to debug further?

Regards,
Naveen Sakleshpur
If this reply answered your question, please click the Accept As Solution button to help future users who may have a similar problem.

ejeong
Valued Contributor
Valued Contributor

@naveenss 

Since job went success, I don't see any error in the log... 

 

ejeong_0-1690283697485.png