Skip to main content
Glider APIs return a code for each error. Use the code to identify the cause and select the correct response.

Platform API error codes

The Platform API uses the API_XXX format. The XXX part is a number. The following sections group the codes by category.

General Errors (000-099)

Authentication and Authorization Errors (100-199)

Portfolio Specific Errors (200-299)

Signature and Cryptographic Errors (300-399)

Validation Errors (400-499)

External Service Errors (500-599)

Deposit and Wallet Operation Errors (550-570)

Internal Errors (600-699)

KMS API error codes

The KMS API uses the KMS_XXX format. The XXX part is a number. The following sections group the codes by category.

General Errors (000-099)

Key Management Errors (100-199)

Permission Errors (200-299)

Validation Errors (300-399)

External Service Errors (400-499)

Internal Errors (500-599)

Error response formats

Legacy V1 and the B2B API use different envelopes. The first format below applies to V1. The B2B API puts tracing identifiers in the response headers. When present, error.details is always a string[].

V1 envelope

B2B API envelope

Read X-Correlation-Id and X-Request-Id from the response headers. The B2B API does not put tracing identifiers in the body.

tRPC domain error data

tRPC clients receive the standard transport code in error.data.code. When a procedure throws a typed application error, error.data.domainCode is also present and carries the stable domain-specific code, for example SOLANA_SVM_SLOT_EXPIRED. domainCode is additive and optional. Clients should branch on it when present, fall back to the tRPC transport code otherwise, and treat error.message as human-readable text rather than a machine identifier.

B2B API enrollment conditions

Solana enrollment uses these existing codes:
  • API_104 (403) also means that Solana enrollment is not enabled for the tenant. The tenant can lack the entitlement or the deployment can lack the SVM service.
  • API_400 (400) can mean that one request contains Solana and EVM chainIds. Use one namespace in each enrollment request.

Handle errors

  1. Read error.code to identify the error.
  2. Use error.message in logs or user messages.
  3. Include the correlation ID and request ID in a support request.
  4. For validation errors, read error.details.
  5. For tRPC errors, prefer error.data.domainCode when it is present.