Authenticate with a bearer key. Customer keys begin with pdi_live_. Never expose a production key in browser-side JavaScript.
Authorization: Bearer pdi_live_...
A key belongs to one API client and one plan. Keys can be revoked independently. PDI stores only a SHA-256 hash of customer keys.
Successful authentication returns quota headers including X-RateLimit-Plan, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset and per-minute equivalents. Monthly exhaustion or minute-rate exhaustion returns HTTP 429.
curl -s \ -H "Authorization: Bearer $PDI_API_KEY" \ "https://api.pinpointed.dev/v1/usage"
/v1/resolve-entityq. Optional: limit 1–25.curl -s \ -H "Authorization: Bearer $PDI_API_KEY" \ "https://api.pinpointed.dev/v1/resolve-entity?q=Barolo&limit=5"
/v1/explaincurl -s \ -H "Authorization: Bearer $PDI_API_KEY" \ "https://api.pinpointed.dev/v1/explain?q=Barolo"
/v1/paircurl -s \ -H "Authorization: Bearer $PDI_API_KEY" \ "https://api.pinpointed.dev/v1/pair?q=Pinot%20Noir"
/v1/comparecurl -s \ -H "Authorization: Bearer $PDI_API_KEY" \ "https://api.pinpointed.dev/v1/compare?left=Merlot&right=Cabernet%20Sauvignon"
/v1/usagecurl -s \ -H "Authorization: Bearer $PDI_API_KEY" \ "https://api.pinpointed.dev/v1/usage"
Missing, unknown, revoked or inactive key.
Per-minute request limit reached.
Monthly plan allowance reached.
The gateway preserves the existing PDI v1 response and error contract and adds a request ID.