Authentication
Institution keys are prefixed vug_live_ and sent as a Bearer token:
curl https://verify.ug/api/public/v1/verify \
-H "Content-Type: application/json" \
-d '{"code": "VUG-4K7Q-8H2N"}'POST
/api/public/v1/verifyAuth: OptionalVerify a credential by its verification code. Public — no key required.
{ "code": "VUG-XXXX-YYYY" }POST
/api/public/v1/credentialsAuth: RequiredIssue a new credential. Institution-scoped API key required.
{ "holderName": "...", "credentialTypeId": "...", "payload": {} }GET
/api/public/v1/credentials/:idAuth: RequiredFetch a credential you issued.
Webhooks
Subscribe to credential.issued, credential.revoked and verification.performed. Each delivery is HMAC-signed with your webhook secret in the X-Verify-Signature header.