← API reference

Troubleshooting

Error catalogue

Trust the HTTP status and stable error code rather than parsing message text. Preserve each response's request_id for support. Never log API keys, webhook secrets or authorization headers.

CodeHTTPMeaningRecovery
INVALID_REQUEST400Malformed JSON, invalid field, cursor, or amount precision.Correct the request; use a new idempotency key if the logical operation changes.
UNAUTHORIZED401Missing/invalid API key, revoked key, or environment mismatch.Verify the full key, prefix and selected environment.
FORBIDDEN403Required API scope or workspace permission is missing.Ask a workspace owner to issue a least-privilege key with the required scope.
NOT_FOUND404Resource is missing or not visible to this partner/environment.Verify the identifier and environment.
CONFLICT409Resource or lifecycle state conflicts with the request.Retrieve the latest resource state before retrying.
INVALID_STATE400Requested operation is not valid for the current deal state.Fetch the deal and use a supported transition.
IDEMPOTENCY_CONFLICT409The same key is currently being processed.Retry later with the same key and exact same request.
IDEMPOTENCY_MISMATCH409Key reused with a different method, path or body.Generate a new key for the new logical operation.
RATE_LIMITED429Shared partner/environment rate limit exceeded.Respect Retry-After and X-RateLimit-* headers; use bounded backoff.
UNSUPPORTED_RAIL422This API release does not support fiat settlement.Use supported crypto escrow assets: SOL, USDC, USDT, EURC, PYUSD, USDS, or FDUSD.
LINK_USER_REQUIRED403A partner external user is not linked to a TrustLayer user.Complete the required user-linking flow.
PROVIDER_ERROR502An upstream provider failed.Retry only when safe and reuse the same idempotency key for supported writes.
BLOCKCHAIN_ERROR502A blockchain operation failed or could not be confirmed.Verify the underlying transaction before retrying.
CONFIGURATION_ERROR500Required server configuration is missing.Contact TrustLayer support; never expose server secrets.
INTERNAL500Unexpected server failure.Include request_id when contacting support; retry writes only with the same idempotency key.

The OpenAPI contract at /api/v1/openapi is the authoritative versioned schema. Fiat settlement is not available through this Partner API release.