Revoke Credential

Using cheqd's innovative DID-Linked Resource module, cheqd is able to support decentralized and scalable Verifiable Credential revocation and suspension. Using this API, the user is able to choose whether they would like to publish the revocation status to the cheqd ledger or elsewhere.

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

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 revoke.

Step 2: Decide whether to publish update to the ledger

When revoking a Credential, issuers can decide whether they want to publish an updated Status List on-ledger, with the revoked 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 revoke the Credential.

Revoke a Verifiable Credential.

This endpoint revokes a given Verifiable Credential. As input, it can take the VC-JWT as a string or the entire credential itself. The StatusList2021 resource should already be setup in the VC and credentialStatus property present in the VC.

POST/credential/revoke
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
revokedboolean
Example: true
Request
const response = await fetch('/credential/revoke', {
    method: 'POST',
    headers: {
      "Content-Type": "application/x-www-form-urlencoded"
    },
    body: JSON.stringify({}),
});
const data = await response.json();
Response
{
  "revoked": true
}

Last updated