Authentication
Every request to /v1 needs an API key. Keys are scoped per-team and per-permission — no global tokens, no shared secrets.
Every request to /v1 needs an API key. Keys are scoped per-team and per-permission — no global tokens, no shared secrets.
dib_live_… — production keys. Hit real team data.dib_test_… — sandbox keys. Hit a fixed demo team with fixture data. Free on any team, even non-Pro.dib_partner_… — keys minted through Connect with Dib by an end user for your app.Prefer the standard Bearer header:
Authorization: Bearer dib_live_abc...xyzIf your tooling can't set Authorization, we also accept X-Api-Key:
X-Api-Key: dib_live_abc...xyzScopes follow a resource:action shape:
inventory:read, inventory:writevehicles:read, vehicles:writedocuments:read, documents:write, documents:extracttasks:read, tasks:writerooms:read, rooms:writeevents:read, exports:createai:chat, ai:smart_addOptional but encouraged for server-side keys. Add CIDR ranges in the key settings and Dib will reject requests from anywhere else with a ip_not_allowed error.
Creating, updating, or revoking a key from the dashboard requires a recent session re-authentication — Dib calls this "sudo mode" and it lasts 5 minutes per device.