Access request hanging after the approval

We have a scenario where a user access request, approved by the governance group, appears to be stuck in the provisioning phase. To handle this scenario and monitor the access requests, is there any way to filter these kinds of requests apart from using the ORG ADMIN?

are there any custom APIs available to get the requests that are stuck?

Hi @Natesh_R

Welcome to the developer community :tada:

While we cannot get all the access requests which failed .
We can use the below API to check the status of specific access request
https://sailpoint.api.identitynow.com/beta/access-request-status
This API returns

[
  {
    "id": "2c9180926cbfbddd016cbfc7c3b10010",
    "name": "AccessProfile1",
    "type": "ACCESS_PROFILE",
    "cancelledRequestDetails": {
      "comment": "This request must be cancelled.",
      "owner": {
        "type": "IDENTITY",
        "id": "2c9180a46faadee4016fb4e018c20639",
        "name": "Support"
      },
      "modified": "2019-12-20T09:17:12.192Z"
    },
    "errorMessages": [
      [
        {
          "locale": "en-US",
          "localeOrigin": "DEFAULT",
          "text": "The request was syntactically correct but its content is semantically invalid."
        }
      ]
    ],
    **"state": "EXECUTING",**
    "approvalDetails": [
      {
        "approvalId": "2c9180877b2b6ea4017b2c545f971429",
        "forwarded": false,
        "originalOwner": {
          "type": "IDENTITY",
          "id": "2c7180a46faadee4016fb4e018c20642",
          "name": "Michael Michaels"
        },
        "currentOwner": {
          "type": "IDENTITY",
          "id": "2c3780a46faadee4016fb4e018c20652",
          "name": "Allen Albertson"
        },
        "modified": "2019-08-23T18:52:57.398Z",
        "status": "PENDING",
        "scheme": "MANAGER",
        "errorMessages": [
          {
            "locale": "en-US",
            "localeOrigin": "DEFAULT",
            "text": "The request was syntactically correct but its content is semantically invalid."
          }
        ],
        "comment": "I approve this request",
        "removeDate": "2020-07-11T00:00:00Z"
      }
    ],
    "approvalIds": [
      "85f0cf482dd44327b593624c07906c21",
      "fa57e1bfa36f41ee85e33ee59fcbeac5"
    ],
    "manualWorkItemDetails": [
      {
        "forwarded": true,
        "originalOwner": {
          "type": "IDENTITY",
          "id": "2c7180a46faadee4016fb4e018c20642",
          "name": "Michael Michaels"
        },
        "currentOwner": {
          "type": "IDENTITY",
          "id": "2c3780a46faadee4016fb4e018c20652",
          "name": "Allen Albertson"
        },
        "modified": "2019-08-23T18:52:57.398Z",
        "status": "PENDING",
        "forwardHistory": [
          {
            "oldApproverName": "Frank Mir",
            "newApproverName": "Al Volta",
            "comment": "Forwarding from Frank to Al",
            "modified": "2019-08-23T18:52:57.398Z",
            "forwarderName": "William Wilson",
            "reassignmentType": "AUTOMATIC_REASSIGNMENT"
          }
        ]
      }
    ],
    "accountActivityItemId": "2c9180926cbfbddd016cbfc7c3b10010",
    "requestType": "GRANT_ACCESS",
    "modified": "2019-08-23T18:52:59.162Z",
    "created": "2019-08-23T18:40:35.772Z",
    "requester": {
      "type": "IDENTITY",
      "id": "2c7180a46faadee4016fb4e018c20648",
      "name": "William Wilson"
    },
    "requestedFor": {
      "type": "IDENTITY",
      "id": "2c9180835d191a86015d28455b4b232a",
      "name": "William Wilson"
    },
    "requesterComment": {
      "comment": "This is a comment.",
      "created": "2017-07-11T18:45:37.098Z",
      "author": {
        "type": "IDENTITY",
        "id": "2c9180847e25f377017e2ae8cae4650b",
        "name": "john.doe"
      }
    },
    "sodViolationContext": {
      "state": "SUCCESS",
      "uuid": "f73d16e9-a038-46c5-b217-1246e15fdbdd",
      "violationCheckResult": {
        "message": [
          {
            "locale": "en-US",
            "localeOrigin": "DEFAULT",
            "text": "An error has occurred during the SOD violation check"
          }
        ],
        "clientMetadata": {
          "requestedAppName": "test-app",
          "requestedAppId": "2c91808f7892918f0178b78da4a305a1"
        },
        "violationContexts": [
          {
            "policy": {
              "type": "SOD_POLICY",
              "id": "0f11f2a4-7c94-4bf3-a2bd-742580fe3bde",
              "name": "Business SOD Policy"
            },
            "conflictingAccessCriteria": {
              "leftCriteria": {
                "criteriaList": [
                  {
                    "existing": true,
                    "type": "ENTITLEMENT",
                    "id": "2c918085771e9d3301773b3cb66f6398",
                    "name": "My HR Entitlement"
                  }
                ]
              },
              "rightCriteria": {
                "criteriaList": [
                  {
                    "existing": true,
                    "type": "ENTITLEMENT",
                    "id": "2c918085771e9d3301773b3cb66f6398",
                    "name": "My HR Entitlement"
                  }
                ]
              }
            }
          }
        ],
        "violatedPolicies": [
          {
            "type": "SOD_POLICY",
            "id": "0f11f2a4-7c94-4bf3-a2bd-742580fe3bde",
            "name": "Business SOD Policy"
          }
        ]
      }
    },
    "provisioningDetails": {
      "orderedSubPhaseReferences": "manualWorkItemDetails"
    },
    "preApprovalTriggerDetails": {
      "comment": "Access is Approved",
      "reviewer": "John Doe",
      "decision": "APPROVED"
    },
    "accessRequestPhases": [
      {
        "started": "2020-07-11T00:00:00Z",
        "finished": "2020-07-12T00:00:00Z",
        "name": "APPROVAL_PHASE",
        "state": "COMPLETED",
        "result": "SUCCESSFUL",
        "phaseReference": "approvalDetails"
      }
    ],
    "description": "This is the Engineering role that engineers are granted.",
    "removeDate": "2019-10-23T00:00:00.000Z",
    "cancelable": true,
    "accessRequestId": "2b838de9-db9b-abcf-e646-d4f274ad4238",
    "clientMetadata": {
      "key1": "value1",
      "key2": "value2"
    },
    "requestedAccounts": [
      {
        "name": "Glen.067da3248e914",
        "type": "ACCOUNT",
        "accountUuid": "{fab7119e-004f-4822-9c33-b8d570d6c6a6}",
        "accountId": "CN=Glen 067da3248e914,OU=YOUROU,OU=org-data-service,DC=YOURDC,DC=local",
        "sourceName": "Multi Account AD source name"
      }
    ]
  }
]

State attribute in this response will tell us about the state of this request which can be

Indicates the state of an access request:
EXECUTING: The request is executing, which indicates the system is doing some processing.
REQUEST_COMPLETED: Indicates the request has been completed.
CANCELLED: The request was cancelled with no user input.
TERMINATED: The request has been terminated before it was able to complete.
PROVISIONING_VERIFICATION_PENDING: The request has finished any approval steps and provisioning is waiting to be verified.
REJECTED: The request was rejected.
PROVISIONING_FAILED: The request has failed to complete.
NOT_ALL_ITEMS_PROVISIONED: One or more of the requested items failed to complete, but there were one or more successes.

Refer : list-access-request-status | SailPoint Developer Community

Thanks
Sid