API reference

Errors & limits

Status codes, machine-readable error codes and limits.

Error body

Errors return JSON with a human-readable error, and a code when a client should branch on it:

{ "error": "This wallet is not registered for your tenant; request a sync to register it", "code": "wallet_not_registered" }

Status codes

StatuscodeWhen
400NoneInvalid input: a malformed address, a limit out of range, an unknown dataset
401NoneMissing, invalid or revoked API key
403missing_scopeThe key lacks the route's scope
403wallet_quota_exceededRegistering a wallet beyond the tenant's quota
404wallet_not_registeredThe wallet is not registered to your tenant, or does not exist
422NoneAn export exceeds 50,000 rows
429NoneRate limit exceeded, or too many failed key attempts; honour retry-after
500NoneInternal error; the body says only Internal error

Limits

LimitDefaultSetting
Requests per key per minute120RATE_LIMIT_PER_MINUTE
Failed key attempts per address per minute20AUTH_FAILURES_PER_MINUTE
Page size (limit)up to 200per request
Export rows50,000fixed
Wallets per tenantset per tenant--max-wallets

Every response carries cache-control: no-store and x-corpact-dataset.