Skip to content
bynhDocs

Get a certificate

GET/workspaces/{workspace}/certificates/{certificate}

Returns one certificate with its documents, newest first.

Authentication

Send an API token as a bearer token. This endpoint needs a read token, made by any member of the workspace. Create one in My account → API tokens; see scopes and roles.

Authorization: Bearer 42|bynh_pat_•••••••Header

Path parameters

  • workspacestringRequired

    Your workspace slug, e.g. dokan.

  • certificateintegerRequired

    Certificate id, scoped to the workspace.

Response

200 OK

Certificate with documents.

  • idintegerCertificate id.
  • namestringThe standard, e.g. ISO/IEC 27001:2022.
  • descriptionstring|nullShort line under the name.
  • issuerstringWho issued it.
  • certificate_numberstring|nullThe number on the certificate.
  • statusenumDerived from valid_until on every save: expired after the date, renewing within 30 days of it, otherwise valid. in_audit is the only status you set (with in_audit: true). One of valid, renewing, in_audit, expired.
  • issued_onstring|nullYYYY-MM-DD.
  • valid_untilstring|nullYYYY-MM-DD.
  • days_leftinteger|nullDays from today to valid_until; negative once expired.
  • scopestring|nullScope statement.
  • notestring|nullShort note.
  • show_badgebooleanShow a badge on the trust center.
  • allow_downloadbooleanLet visitors download the certificate.
  • share_soa_after_ndabooleanShare the Statement of Applicability after an NDA.
  • publishedbooleanShown on the trust center.
  • documentsarray<Document>Present on show, create and update only (omitted from the list). Newest first on show.
  • documents[]DocumentSee document fields.
  • documents[].idintegerDocument id.
  • documents[].titlestringDisplay title (defaults to the filename without extension).
  • documents[].filenamestringOriginal filename, sanitised.
  • documents[].sizeintegerBytes.
  • documents[].pagesinteger|nullBest-guess page count.
  • documents[].visibilityenumWho can read it on the trust center. One of public, nda, private.
  • documents[].visibility_labelstringLocalized label.
  • documents[].uploaded_bystring|nullUploader’s name. Omitted when the uploader wasn’t loaded (the create-certificate response).
  • documents[].uploaded_atstringISO 8601.
  • documents[].download_pathstringPath relative to the API base, e.g. /workspaces/dokan/documents/412/download.

Rate limits

This endpoint counts toward your general limit of 120 requests a minute. When you go over, wait for the number of seconds in Retry-After.

Errors

401The token is missing, wrong, revoked or expired.
404The token belongs to another workspace, or its owner is no longer a member. Or: No certificate with that id in this workspace.

Every error is JSON with a message. See Errors.

Next →Update a certificate
curl "https://api.bynh.io/api/v1/workspaces/dokan/certificates/1" \
  -H "Authorization: Bearer $BYNH_TOKEN" \
  -H "Accept: application/json"

Response200 OK

application/json
{
  "data": {
    "id": 7,
    "name": "ISO/IEC 27001:2022",
    "description": "Information security management",
    "issuer": "BSI Group",
    "certificate_number": "IS 781203",
    "status": "valid",
    "issued_on": "2025-03-10",
    "valid_until": "2028-03-09",
    "days_left": 890,
    "scope": "Dokan commerce platform, Riyadh operations and AWS me-south-1 hosting.",
    "note": null,
    "show_badge": true,
    "allow_download": true,
    "share_soa_after_nda": true,
    "published": true,
    "documents": [
      {
        "id": 412,
        "title": "ISO 27001 certificate 2025",
        "filename": "ISO 27001 certificate 2025.pdf",
        "size": 284113,
        "pages": 2,
        "visibility": "public",
        "visibility_label": "Public",
        "uploaded_by": "Sara Alqahtani",
        "uploaded_at": "2026-03-12T09:41:07+00:00",
        "download_path": "/workspaces/dokan/documents/412/download"
      }
    ]
  }
}

Examples use Dokan, a sample workspace. Responses are shortened where lists are long.