nomiDocumentation
SupportBack to site
  • Getting started

    • Introduction
    • What is Nomi?
    • Quick start
    • Concepts
    • Authentication
  • Credentials

    • Create a credential
    • Issue a credential
    • Credential lifecycle
    • Revoke a credential
    • Verify a credential
    • QR verification
  • Distribution

    • Apple Wallet
    • Google Wallet
    • Email
    • Credential delivery
    • Bulk issuance
  • API

    • API overview
    • Authentication
    • Credentials API
    • Recipients
    • Verification
    • Revocation
    • Webhooks
    • Errors
  • Integrations

    • Moodle
    • WordPress
    • REST API
    • Webhooks
  • Security

    • Authentication
    • API keys
    • Webhook security
    • Data protection
    • Best practices
  • Resources

    • FAQ
    • Glossary
    • Changelog
  1. Documentation
  2. /
  3. API
  4. /
  5. Verification

Verification

The authenticated endpoint for your own scanner, and the public one for everybody else.

POST/v1/verify

Takes what a scanner read and answers whether it may be honoured. Recorded on the credential's history.

Body

{ "code": "…", "location": "North gate" }

code accepts the serial, the public code, or the whole verification URL a certificate's QR carries.

GET/public/credentials/{code}

Public. No key. Everything a third party needs to decide whether to believe a credential, and nothing else.

GET/public/verify?code=…

Public. The same answer for a code somebody typed off a printed certificate, or a whole URL pasted in.

A public verification response

{
  "publicId": "…",
  "status": "valid",
  "issuer": {
    "name": "…",
    "domain": "…",
    "verified": true,
    "did": "did:web:…"
  },
  "recipient": { "name": "Alex Morgan" },
  "achievement": { "name": "…", "type": "…", "skills": [] },
  "issuedAt": "…",
  "expiresAt": null,
  "verificationUrl": "https://…"
}

status is one of valid, expired, revoked, suspended, not_yet_issued. The issuer is the subject of that response — the organisation, its verified domain and its decentralised identifier. Nomi is the infrastructure behind it, not the issuer.

For an academic credential there is a third route that does not involve us at all: the signed Open Badges 3.0 document at GET /public/credentials/{code}/openbadge, checked against the organisation's did:web key and the revocation status list at GET /public/status/{slug}/revocation.

Revocation

Ending one, and how it propagates.

QR verification

At a door.

PreviousRecipientsNextRevocation

Still stuck?

If this page did not answer it, the Help Center has the operational side of the same question — and a person reads what you send.

Go to the Help Center →
nomi

Digital credential infrastructure. Create, issue and manage credentials from the systems you already use.

Operated by

Country and currency

Platform

  • How it works
  • Templates
  • Lifecycle
  • Developers
  • Pricing
  • FAQ
  • Nomi Academic

Credentials

  • Memberships
  • Employee IDs
  • Student IDs
  • Events & loyalty

Developers

  • Documentation
  • Quick start
  • API reference
  • Webhooks
  • Integrations

Support

  • Help Center
  • Apple & Google Wallet
  • Verification
  • Contact support

Company

  • Request a demo
  • Talk to Nomi
  • Legal
  • Codingraph
PrivacyTermsCookiesSecurityContact

© 2026 Codingraph S.A. All rights reserved.

Nomi is a registered trademark used by Codingraph S.A. under licence.

Billed in USD

Apple Wallet and Google Wallet are trademarks of their respective owners.