Skip to main content
The SDK throws typed errors for different failure conditions. All errors extend VulcxError.

Error Hierarchy


Error Classes

VulcxError

Base class for all SDK errors.

BadRequestError (400)

Thrown for invalid parameters: bad mint address, invalid amount, unsupported swap mode.

AuthError (401/403)

Thrown when the API key is invalid, missing, or revoked.

NoRouteError (404)

Thrown when no liquidity path exists between the input and output tokens.

RateLimitError (429)

Thrown after all retry attempts are exhausted on rate-limited requests.

ServerError (5xx)

Thrown after all retry attempts are exhausted on server errors.

QuoteExpiredError (410)

Thrown when a quoteId passed to swap()/instructions() is past its TTL (or past the firm window with firm: true). Not retried automatically — fetch a fresh quote and retry with the new quoteId.

QuoteStaleError (409)

Thrown when the pinned route no longer exists, or — with firm: true — the price drifted past the firm margin. Not retried automatically; re-quote and retry.

Retry Behavior

The SDK automatically retries on transient failures before throwing: Backoff is exponential: 1s, 2s, 4s, … capped at 8s. With the default retries: 2, the SDK makes up to 3 attempts.

Catching All Errors

Last modified on August 31, 2026