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

Remove Access for REST connector

AtrayeeDutta
Regular Contributor
Regular Contributor

Hi Team,

I am trying to remove access for a REST based application, from postman removal is successful,from Saviynt, its throwing error.

Its a SAP based application which we are doing from REST connector, over SAP documentation to remove Entitlements(type Roles)->>

{
"schemas": [
"urn:ietf:params:scim:api:messages:2.0:PatchOp"
],
"Operations": [{
"op": "remove",
"path": "urn:ietf:params:scim:schemas:extension:spend:2.0:Role:roles[roleName eq \"EXP_ATTENDEE_ADMIN\"]"
}]

 

We are using:

{
"call": [{
"name": "Roles",
"connection": "userAuth",
"url": "https://us2.api.concursolutions.com/profile/spend/v4/Users/***************",
"httpMethod": "PATCH",
"httpParams": {
"schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
"Operations": [{
"op": "remove",
"path": "urn:ietf:params:scim:schemas:extension:spend:22~dot#0:Role:roles[roleName eq \"EXP_ATTENDEE_ADMIN\"]"
}]
},
"httpHeaders": {
"Authorization": "${access_token}",
"Accept": "application/json"
},
"httpContentType": "application/json",
"successResponses": {
"statusCode": [200, 201]
}
}]
}

 

AND

 

{
"call": [{
"name": "Roles",
"connection": "userAuth",
"url": "https://us2.api.concursolutions.com/profile/v4/Users/****************************",
"httpMethod": "PATCH",
"httpParams": {
"Operations": [{
"op": "remove",
"path": "urn:ietf:params:scim:schemas:extension:spend:2~dot#0:Role:roles[roleName eq \"EXP_ATTENDEE_ADMIN\"]"
}]
},
"httpHeaders": {
"Authorization": "${access_token}",
"Accept": "application/json"
},
"httpContentType": "application/json",
"successResponses": {
"statusCode": [200, 201]
}
}]
}

 

and 

{
"call": [{
"name": "Roles",
"connection": "userAuth",
"url": "https://us2.api.concursolutions.com/profile/v4/Users/***********************",
"httpMethod": "PATCH",
"httpParams": "{\"user\": {\"custom_role_id\": ${entitlementValue.entitlementID}}}",
"httpHeaders": {
"Authorization": "${access_token}",
"Accept": "application/json"
},
"httpContentType": "application/json",
"successResponses": {
"statusCode": [200, 201]
}
}]
}

Its not working and throwing error.

message:No signature of method: com.saviynt.provisoning.rest.RestUtilService.getDynamicBindString() is applicable for argument types: (java.util.LinkedHashMap, java.util.HashMap) values: [[Operations:[[op:remove, path:urn:ietf:params:scim:schemas:extension:spend:2~dot#0:Role:roles[roleName eq "EXP_ATTENDEE_ADMIN"]]]]

with  the last json throwing error->Unrecognized token 'EXP_ATTENDEE_ADMIN': was expecting ('true', 'false' or 'null')

Can anyone please tell me how we can resolve this?

Regards,

Atrayee Dutta

 

4 REPLIES 4

sudeshjaiswal
Saviynt Employee
Saviynt Employee

Hello @AtrayeeDutta.,

Can you please try another role, whose name doesn't contain ADMIN?

Thanks

If you find the above response useful, Kindly Mark it as "Accept As Solution".

Hi @sudeshjaiswal 

With other Roles also its the same. Is the RemoveAccess json correct?for this function?

Regards,

Atrayee

 

Hi @AtrayeeDutta 
Please try using the below httpParams, and if that fails to resolve the issue, share a screenshot of the request body for the Remove Access API from Postman.

   "httpParams": "{\"schemas\":[\"urn:ietf:params:scim:api:messages:2.0:PatchOp\"],\"Operations\":[{\"op\":\"remove\",\"path\":\"urn:ietf:params:scim:schemas:extension:spend:2.0:Role:roles[roleName eq \\\"${entitlementValue.entitlementID}\\\"]\"}]}",

Thank you
Vedanth

Thank you Vedanth, it worked.