API v1

API reference

REST over HTTPS. JSON in, JSON out. All endpoints are versioned and idempotent where marked. Rate limits apply per API key.

Auth
Bearer token · rotate anytime
Latency
P95 128ms · edge terminated
Webhooks
Signed · HMAC-SHA256
SDKs
Node · Python · Go · Swift
GET/v1/passports/{id}
Passports

Retrieve passport

Returns the full passport document including modules, certs, expiries.

Request
curl -X GET https://api.passport.app/v1/passports/{id} \
  -H "Authorization: Bearer sk_live_••••" \
  -H "Content-Type: application/json"
Sample payload
{
  "id": "HP-48213",
  "holder": { "name": "Amara Okafor", "role": "Bartender" },
  "score": 72,
  "modules": [ { "id": "m1", "name": "Food Safety Level 2", "status": "completed", "expires_at": "2026-11-14" } ]
}
Response codes
200OK
400Validation error
401Missing / invalid token
404Not found
429Rate limited
5xxServer error