Verify a Semantic CWT credential
Verify a Semantic CWT credential by providing the encoded payload and specifying verification options.
You can provide a valid Semantic CWT credential as either an encoded string or a QR code in a PDF document or an image file.
Standard checks performed on all verification requests:
- Conformance of the string and encoded data. All string representations of CWT credentials must be prefixed with
CSC/1
. - Decoded payload CWT structure and attributes can be validated.
- Remote context schema can be resolved and validate claims can be dereferenced.
- Issuer DID can be used to resolve its
did.json
document. - Public key from issuer's
did.json
document validates the proof signature, confirming the credential has not been tampered with.
Optional parameter checks:
- Credential was issued by a trusted issuer.
- Current time is after the beginning of the credential validity period.
- Current time is not after the end of the credential validity period.
- Credential has not been revoked.
Analytic events
- CREDENTIAL_COMPACT_SEMANTIC_VERIFY_START
- CREDENTIAL_COMPACT_SEMANTIC_VERIFY_SUCCESS
- CREDENTIAL_COMPACT_SEMANTIC_VERIFY_FAIL
SecuritybearerAuth
Request
Request Body schema: required
Responses
200
Verification completed
400
Bad Request
413
Payload Too Large
415
Unsupported Media Type
post/v2/credentials/compact-semantic/verify
Request samples
- Payload
- curl
- Node.js
- JavaScript
- Python
- C#
- Java
{- "payload": "CSS:/1/2KCE3IQEJB5DCMSLN5KWKZABE2QFRMFEAF4CIZDJMQ5HOZLCHIYDGOJUFUYTENJNGIZTOLJVGIWTCMJQFZXGO4TPNMXGS33COZR2G2CAMNXW45DFPB2IC6BGNB2HI4DTHIXS653XO4XHOMZON5ZGOLZSGAYTQL3DOJSWIZLOORUWC3DTF53DCZDUPFYGLALUKZSXE2LGNFQWE3DFINZGKZDFNZ2GSYLMOFRXEZLEMVXHI2LBNRJXKYTKMVRXJILENZQW2ZLEJJXWQ3QH3BAFAW2MIRFQDICFCSNL5EIX4IISCEIFDJRFHCRRLBALWFYDLUVEKXHERNWHUDGJI3DDNNXSFWIRHUASBHGB2I7UHGPZMJEB3SMOFMBL3PABL5HUFSQLLGNE7YRKSAM3OAQN7F4LG365HL67BU",
- "trustedIssuers": [
- "did:web:example.com"
], - "assertValidFrom": true,
- "assertValidUntil": true,
- "checkRevocation": true
}
Response samples
- 200
- 400
application/json
{- "verified": false,
- "reason": [
- {
- "type": "IssuerNotTrusted",
- "msg": "..."
}
], - "decoded": {
- "jti": "urn:uuid:03ae824d-7179-4c01-aa29-f80ba93122d2",
- "iss": "did:web:xxx",
- "nbf": 1649037604,
- "vc": {
- "type": [
- "VerifiableCredential",
- "PublicCovidPass"
], - "credentialSubject": {
- "givenName": "Jack",
- "familyName": "Sparrow",
- "dob": "1979-04-14"
}
}
}
}