Developers

API reference: list certificates

Every parameter, field and error for the certificates endpoint, with a full example response.

Endpoint

GET https://authentica.api.miko.co.nz/v1/certificates
Authorization: Bearer auth_live_...

Results are ordered by when each certificate last changed, oldest first, so you can page through everything once and then ask only for what changed. Sample certificates created while you set up the app are never returned.

Query parameters

All are optional and can be combined.

ParameterDescription
emailCertificates this person currently owns. Includes certificates transferred to them and leaves out ones they transferred away. Not case-sensitive.
orderAn order name such as #1001, or a numeric Shopify order ID.
serialOne certificate by its serial number.
statusactive, revoked, expired or all (default).
updated_sinceAn ISO 8601 time. Only certificates that changed after it, such as a new owner or a revocation.
limitResults per page, 1 to 100. Default 50.
cursorThe next_cursor value from the previous response, to get the next page.

Example response

{
  "certificates": [
    {
      "id": "cm1x8k2p40001",
      "serial": "00001",
      "status": "active",
      "product": { "id": "8123456789012", "title": "DROP 001", "variant": "P / Branco", "sku": "D001-P-BR" },
      "edition": { "number": 1, "total": 999, "formatted": "001/999" },
      "order": { "id": "6012345678901", "name": "#1001" },
      "owner": { "name": "Maria Silva", "email": "[email protected]" },
      "originalBuyer": { "name": "Maria Silva", "email": "[email protected]" },
      "issuedAt": "2026-10-05T03:05:41.000Z",
      "updatedAt": "2026-10-05T03:05:42.000Z",
      "expiresAt": null,
      "revokedAt": null,
      "revokedReason": null,
      "verifyUrl": "https://your-store.myshopify.com/apps/authentica/c/Ab3dEf..."
    }
  ],
  "next_cursor": null
}

The certificate object

FieldDescription
idStable unique ID. Use it as the key when you store certificates.
serialThe certificate number printed on the certificate.
statusactive, revoked (refunded, cancelled or revoked by you) or expired (past its valid-until date).
productShopify product ID, title, variant (such as size and colour) and SKU, as they were when the certificate was issued.
editionEdition number and size, plus formatted in the style chosen in Settings (for example 001/999). null when editions are off.
orderThe Shopify order ID and name. Both are null for certificates issued by hand.
ownerThe current owner, after any transfers.
originalBuyerWho the certificate was first issued to.
issuedAt / updatedAtWhen it was issued, and when anything about it last changed.
expiresAtValid-until date, or null if it never expires.
revokedAt / revokedReasonSet when the certificate is revoked, for example refunded or order cancelled.
verifyUrlThe public verification page. Link your "View certificate" button here. It follows your Verification links setting and opens in the verification page language you chose.

Paging through everything

  1. First page

    Call /v1/certificates?limit=100.
  2. Next pages

    While next_cursor is not null, call again with &cursor= set to it.
  3. Stay current

    Store the newest updatedAt you have seen. Later, call with updated_since set to it to get only what changed.

Errors

Errors return JSON with an error code and a readable message.

HTTPerrorWhat to do
401unauthorizedThe key is missing or no longer valid. Check the header, or create a new key in Settings.
403plan_requiredThe store is not on the Pro plan. Upgrade in Plans; the existing key starts working again straight away.
400bad_requestA parameter is not valid. message says which one.
429rate_limitedMore than 120 requests in a minute. Wait a moment and retry, and cache results where you can.

Related articles

Not on Shopify yet?

Start a free Shopify trial, then add Miko apps when you are ready.

Set up your store in minutes and try it with your own products. Loyalty, wholesale pricing, AI descriptions and the rest of the Miko apps install in one click once your store is live.