Help center
https://api.certo.bio/v1openapi.json
Revoke an issued certificate
POST
/v1/issuance/records/{id}/revokescope issuance:writeRevokes the certificate of a record the organisation issued, as its issuer: permanent, on the status list at once, and the confirmation withdrawn so the record reads Claimed. The reason (3 to 500 characters) is e-mailed to the holder and never published. Never a certificate on the caller's own passport.
As an MCP tool: revoke_issued_record
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
| id | uuid | Yes | The issued record (from /issuance/records). |
Request body
| Name | Type | Required | Description |
|---|---|---|---|
| reason | string | Yes | Why, 3 to 500 characters of plain text: the holder reads it; it is never published. |
Response fields
- status
- one of revoked, already_revoked. revoked now, or already_revoked (nothing sent).
- credential_id
- uuid. The certificate.
- revoked_at
- string. When it was revoked.
- revoked_by_issuer
- boolean. Whether its issuer revoked it (false: its holder did, before).
- verify_url
- string. Where anybody checks it: it now reads revoked.
Errors
- 404 issuance.not_found
- 409 issuance.no_certificate
- 403 credential.not_issued_by_you
- 403 credential.own_certificate
- 400 credential.revocation_reason_required
- 400 credential.revocation_reason_invalid
- 409 api.idempotency_mismatch
- 409 api.idempotency_in_progress
- 400 api.credential_in_url
- 401 api.key_invalid
- 401 api.key_expired
- 401 api.key_revoked
- 401 api.key_suspended
- 403 api.scope_missing
- 429 api.rate_limited