API Keys
Every request tohttps://api.beltic.com/v1 must include an API key in the X-Api-Key header:
Environments
Beltic has two environments, each with its own API key prefix:
The base URL is the same for both environments — the key prefix determines which environment your requests target. Never use a production key in development or test code. Staging credentials are isolated from production data and can be freely reset.
Key Scopes
Keys carry a fixed permission set. Request only the scopes your service actually needs — a key used only to verify credentials shouldn’t also be able to revoke them. Workflow API
Credentials API
Document API
Business & Screening APIs
Webhooks
Requests with a valid key but missing scope return
403 Forbidden.
Error Responses
Authentication errors return standard HTTP codes with a JSON body:Rate Limits
Rate limits are applied per API key:
When a limit is exceeded, the API returns
429 Too Many Requests with a Retry-After header indicating how many seconds to wait:
Retries
The Beltic API is safe to retry on transient errors. Follow these conventions:- Retry on:
429,500,502,503,504 - Do not retry on:
400,401,403,404,422— these are deterministic failures that won’t resolve on retry - Use exponential backoff with jitter, starting at 1 second, capping at 30 seconds
- Honour
Retry-Afteron429responses — don’t backoff shorter than what the header specifies
POST, DELETE), use idempotency keys to ensure retries don’t produce duplicate side effects.
Idempotency
Mutation endpoints (POST /v1/credentials, POST /v1/workflows/execute) accept an Idempotency-Key header. Submitting the same key twice within 24 hours returns the original response without re-executing:
409 Conflict. Use a UUID or a hash of the request payload as the key.
Public Endpoints (No Auth)
The following endpoints do not require authentication — they are used by third-party verifiers who don’t have a Beltic account:
See Public Endpoints for details.