List a user's certificates
/users/{user_id}/certificatesReturns the certificates issued to the user, including revoked certificates. Deleted certificates are not included.
The collection can be filtered by product, status, and issue date, and is paginated with a cursor. When the credentials are restricted to specific products, only certificates for those products are returned.
The fields object, which contains the document, address, and custom field values recorded at issuance, is included only when the credential has the users.read_personal permission.
Autonomous mode: the API credential secret, sent as a bearer token. Credential secrets are identified by a fixed prefix.
In: header
Path Parameters
Public ID of the user, prefixed with usr_.
Query Parameters
Maximum number of items to return, from 1 to 200.
1 <= value <= 200Cursor for the next page, taken from page.next_cursor of the previous response.
Sort order. A leading - sorts in descending order.
Value in
- "id"
- "-id"
Only certificates issued for the product with this public ID.
Only certificates with this status.
Value in
- "valid"
- "revoked"
Only items issued after this date and time (ISO 8601).
date-timeOnly items issued before this date and time (ISO 8601).
date-timeHeader Parameters
Optional client-generated identifier of the request, up to 64 characters from [A-Za-z0-9._-]. Echoed back in the response and recorded in the request log; it never replaces the server-generated X-Request-Id.
length <= 64Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/users/string/certificates"{ "data": [ { "code": "string", "deleted": true, "fields": {}, "id": "string", "issued_at": "2019-08-24T14:15:22Z", "number": { "instance": 0, "product": 0 }, "object": "certificate", "pdf_url": "string", "product_id": "string", "reissue": true, "revision": "string", "revoked": { "at": "2019-08-24T14:15:22Z", "by": { "id": "string", "kind": "admin" }, "reason": "string" }, "status": "valid", "superseded_by_certificate_id": "string", "supersedes_certificate_id": "string", "user_id": "string", "validation_url": "string" } ], "page": { "limit": 1, "next_cursor": "string", "prev_cursor": "string" }}Preview a certificate template POST
Renders a sample certificate from the product's current certificate template, using placeholder data. A preview is not an issued certificate: it does not appear in certificate listings or reports and cannot be verified through public validation. The response does not include a `file_id`; use `pdf_url` to access the rendered PDF. Templates of replicated products cannot be previewed.
Issue a certificate POST
Issues a certificate to the user for the specified product. If the user already holds a valid certificate for the product, the existing certificate is returned instead of a new one being issued. To reissue a certificate, set `supersedes_certificate_id` to the certificate being replaced. Reissuing requires the `certificates.reissue` permission in addition to `certificates.create`, and the certificate identified in `supersedes_certificate_id` is revoked with the reason `reissued`. That certificate must belong to the same user and product; otherwise, the request is rejected with a validation error on `supersedes_certificate_id`. A certificate that is already revoked cannot be superseded.