Overview
The VantaPrism Customer API authenticates every request with a static API key. There is no OAuth flow, session, or token exchange for the Customer API — generate a key once from your dashboard and send it on every request. The only unauthenticated endpoints are:GET /v1/healthGET /v1/health/ready
/v1/* endpoint requires a valid key.
Key format
env—live(production, billed against your plan) ortest(sandbox dataset, same validation rules)prefix— 8 hex characters, identifies the key (safe to log)secret— 40 hex characters, the actual credential — never log this
vp_live_3f9a1c2d.8b2e4f6a1d9c0e3f7b5a2d8c4e6f1a9b3d7c5e2f0a8b6d4c
The full key is shown once, at creation time, in your dashboard. Only
the hash of the secret is stored server-side — if you lose a key, you must
revoke it and create a new one.
Sending your key
Two header styles are accepted — use whichever fits your HTTP client better.api-key takes precedence. If neither is
present, every protected endpoint returns:
401 Unauthorized
WWW-Authenticate: Bearer response header.
Scopes
Each API key is issued with a set of scopes that gate access to specific endpoint groups. Your key’s tier (free / pro / ultra) determines which
scopes are available — see Rate Limits & Tiers for the full
per-tier scope table.
| Scope | Grants access to |
|---|---|
search:domain | Domain search, company exposure, domain overview/assets/timeline, top-exposed |
search:login | Email and username search, /v1/data/credentials |
search:ip | IP/CIDR search |
search:stealer | Stealer-ID search, PC-name search, victim profile lookup |
search:password | Password search |
search:file | File search, victim file listings |
search:keyword | Keyword search and keyword → URLs |
search:advanced | Advanced search, third-party risk |
infection-analysis | AI infection analysis (ultra only) |
view:cookies / view:autofill / view:cards / view:wallets / view:ftp / view:keychain / view:history / view:commands | The corresponding /v1/data/* category and victim sub-resource |
403 Forbidden
Other authentication error codes
| HTTP status | code | Meaning |
|---|---|---|
| 401 | INVALID_API_KEY | Missing, malformed, or unrecognized key |
| 403 | KEY_REVOKED | Key has been revoked |
| 403 | KEY_LOCKED | Key is temporarily locked (e.g. after repeated abuse) |
| 403 | CUSTOMER_INACTIVE | Your account is currently disabled |
| 403 | FORBIDDEN_SCOPE | Key is valid but lacks the required scope for this endpoint |
CORS
If you’re calling the API directly from a browser, the following are allowed cross-origin:- Methods:
GET,POST,PATCH,DELETE - Headers:
Authorization,Content-Type,api-key
Rotating a key
Revoke the old key and generate a new one from your API Access dashboard. Revoked keys immediately start returning403 KEY_REVOKED — there is no grace
period, so deploy the new key before revoking the old one.