Suspend or Unsuspend Credential

Users are also able to suspend Verifiable Credentials. The difference between revocation and suspension is that suspended Credentials may be unsuspended at a future date; whereas, revoked credentials are permanently revoked.

Step 1: Locate the Credential Body or JWT to be suspended

It is best practice for issuers to keep a record of the Credentials they have issued, including the "statusListIndex" of the Credentials. From this record system, issuers should be able to fetch either the full Credential Body or the JWT proof of the Credential they want to suspend.

Step 2: Decide whether to publish update to the ledger

When suspending a Credential, issuers can decide whether they want to publish an updated Status List on-ledger, with the suspended credential index updated in the bitstring. The parameter below can be changed to reflect this:

publish
  • true (indicates the issuer wants to publish the updated Status List on ledger)

  • false (indicates the issuer wants to manually publish a Status List update)

Step 3: Paste the Credential Body or JWT into the API

Paste the Credential Body or JWT into the API below and execute the API to suspend the Credential.

Suspend a Verifiable Credential.

This endpoint suspends a given Verifiable Credential. As input, it can take the VC-JWT as a string or the entire credential itself.

POST/credential/suspend
Query parameters
Body
credentialone of

Verifiable Credential to be revoked as a VC-JWT string or a JSON object.

symmetricKeystring

The symmetric key used to encrypt the StatusList2021 DID-Linked Resource. Required if the StatusList2021 DID-Linked Resource is encrypted.

Response

The request was successful.

Body
suspendedboolean
Example: true
Request
const response = await fetch('/credential/suspend', {
    method: 'POST',
    headers: {
      "Content-Type": "application/x-www-form-urlencoded"
    },
    body: JSON.stringify({}),
});
const data = await response.json();
Response
{
  "suspended": true
}

Unsuspend (reinstate) Verifiable Credentials

If a Credential has been suspended, and an Issuer wants to unsuspend the Credential to make it once again valid, the Issuer can reinstate a suspended Credential.

Step 1: Locate the Credential Body or JWT to be unsuspended

It is best practice for issuers to keep a record of the Credentials they have issued, including the "statusListIndex" of the Credentials. From this record system, issuers should be able to fetch either the full Credential Body or the JWT proof of the Credential they want to unsuspend.

Step 2: Decide whether to publish update to the ledger

When unsuspending or reinstating a Credential, issuers can decide whether they want to publish an updated Status List on-ledger, with the unsuspended credential index updated in the bitstring. The parameter below can be changed to reflect this:

publish
  • true (indicates the issuer wants to publish the updated Status List on ledger)

  • false (indicates the issuer wants to manually publish a Status List update)

Step 3: Paste the Credential Body or JWT into the API

Paste the Credential Body or JWT into the API below and execute the API to unsuspend the Credential.

Reinstate a suspended Verifiable Credential.

Set whether the StatusList2021 resource should be published to the ledger or not. If set to false, the StatusList2021 publisher should manually publish the resource.

POST/credential/reinstate
Query parameters
Body
credentialone of

Verifiable Credential to be revoked as a VC-JWT string or a JSON object.

symmetricKeystring

The symmetric key used to encrypt the StatusList2021 DID-Linked Resource. Required if the StatusList2021 DID-Linked Resource is encrypted.

Response

The request was successful.

Body
unsuspendedboolean
Example: true
Request
const response = await fetch('/credential/reinstate', {
    method: 'POST',
    headers: {
      "Content-Type": "application/x-www-form-urlencoded"
    },
    body: JSON.stringify({}),
});
const data = await response.json();
Response
{
  "unsuspended": true
}

Last updated