Remove Access After Account Termination and Reactivate Account

Scenario:in isc using postman
1.We have a source system where we need to create an account and assign some entitlements.
2.Later, we need to remove the access and then lock or disable that account.
3.After that, we need to unlock or enable that account again.

Please consider addressing the following when creating your topic:

  • What have you tried?
  • What errors did you face (share screenshots)?
  • Share the details of your efforts (code / search query, workflow json etc.)?
  • What is the result you are getting and what were you expecting?

Terminate Account - Mark user as terminated (or disable their account).

Remove Entitlements After Termination

Reactivate Account

Hi @SUMANTHB ,

If you’re already configured Postman try these below steps

1. Create Account

  • Method: POST

  • URL: `https://{{tenant}}.api.identitynow.com/v3/accounts`

  • Headers:

    • - Authorization: Bearer {{access_token}}
    • - Content-Type: application/json
  • Body:

{ 
"attributes": {

   "sourceId": "YOUR_SOURCE_ID",

   "name": "john.doe",

   "firstName": "John",

   "lastName": "Doe",

   "email": "john.doe@company.com"

 }
}

Reference: create-account | SailPoint Developer Community

2. Grant Entitlements

  • Method: POST

  • URL: `https://{{tenant}}.api.identitynow.com/v3/access-requests`

  • Headers:

    • - Authorization: Bearer {{access_token}}
    • - Content-Type: application/json
  • Body:

{
 "requestedFor": ["IDENTITY_ID"],

 "requestType": "GRANT_ACCESS",

 "requestedItems": [

   { "id": "ENTITLEMENT_ID", "type": "ENTITLEMENT" }

 ]
}

Reference: create-access-request | SailPoint Developer Community

3. Terminate (Disable) Account

  • Method A: Change Lifecycle State

  • URL: `https://{{tenant}}.api.identitynow.com/v3/identities/IDENTITY_ID/set-lifecycle-state`

  • Body:

   "lifecycleStateId": "TERMINATED_STATE_ID" 

Reference: Lifecycle States | SailPoint Developer Community

  • Method B: Disable Account Directly

  • URL : https://{{tenant}}.api.identitynow.com/v3/accounts/ACCOUNT_ID/disable

  • Body:

  { "forceProvisioning": true }

Reference: disable-account | SailPoint Developer Community

4. Revoke Entitlements

  • Method: POST

  • URL: https://{{tenant}}.api.identitynow.com/v3/access-requests

  • Body:

{ 
"requestedFor": ["IDENTITY_ID"],

 "requestType": "REVOKE_ACCESS",

 "requestedItems": [

   { "id": "ENTITLEMENT_ID", "type": "ENTITLEMENT" }

 ]
}

Reference: New Capability: Entitlement Revoke API

5. Reactivate (Enable) Account

  • Enable Account

  • URL: https://{{tenant}}.api.identitynow.com/v3/accounts/ACCOUNT_ID/enable

  • Body:


   { "forceProvisioning": true } 

Reference: enable-account | SailPoint Developer Community

  • Unlock Account (if locked)

  • URL: https://{{tenant}}.api.identitynow.com/v3/accounts/ACCOUNT_ID/unlock

  • Body:



   { "forceProvisioning": true }
 

Reference: unlock-account | SailPoint Developer Community

  • Restore Lifecycle State

  • URL: https://{{tenant}}.api.identitynow.com/v3/identities/IDENTITY_ID/set-lifecycle-state

  • Body:



   { "lifecycleStateId": "ACTIVE_STATE_ID" }

Reference: Lifecycle States | SailPoint Developer Community

Follow these five steps in sequence within your configured Postman environment to create an account, assign entitlements, terminate and disable it, revoke entitlements, then re-enable and unlock the account.

Depending upon the usecase you can either use lifecycle state or workflow or combination of both.