API overview
The PhysID API is a small, REST-shaped JSON surface for three primitives — encode, decode, registry — plus credential and lifecycle endpoints. In v1, every response carries "mode": "sandbox".
Base URL
https://api.physid.ai/v1Authentication
Every request requires a Bearer token. Sandbox keys are issued via the access form.
curl https://api.physid.ai/v1/health \
-H "Authorization: Bearer $PHYSID_API_KEY"Endpoints
GET /v1/health— service health + versionPOST /v1/encode— provision a physical AI and bind credentials → referencePOST /v1/decode— verify a tap or BLE handshake (scaffold)GET /v1/registry/{unit_id}— read a registry record (scaffold)POST /v1/registry/{unit_id}/transfer— co-signed ownership transfer (scaffold)POST /v1/registry/{unit_id}/revoke— revoke a unit and rotate tag credentials (scaffold)POST /v1/credentials/issue— issue a credential to a unit (scaffold)GET /v1/credentials/{unit_id}— list a unit's credentials (scaffold)
Errors
Errors return { ok: false, mode, error } with a non-2xx status code. 401 means the bearer is missing or malformed. 404 means the path doesn't exist.