@rhinestone/sdk/errors. Each category has a base class
and a matching type guard — isAccountError, isExecutionError, and
isOrchestratorError — so you can catch a whole category at once. Orchestrator errors
also expose isRetryable, isRateLimited, isSimulationFailed, isAuthError, and
isValidationError.
Account errors
AccountError: base class for the errors below — catch it (or useisAccountError) to handle any account error.AccountConfigurationNotSupportedError: your account setup is not currently supported. Try a different account configuration or submit a feature request.DefaultValidatorAlreadyInitializedError: ECDSA is already enabled on this account. UseaddOwner/removeOwner/changeThresholdto manage owners instead ofenable.Eip712DomainNotAvailableError: the account doesn’t expose an EIP-712 domain, which is required for typed-data signing.Eip7702AccountMustHaveEoaError: when using EIP-7702, you need to provide an EOA account by passing theeoaparam.Eip7702NotSupportedForAccountError: this account type does not support EIP-7702. Try a different account implementation or submit a feature request.EoaAccountMustHaveAccountError: EOA accounts need a signer — pass it via theaccountparam.EoaSigningMethodNotConfiguredError: the EOA account provider is missing a signing method required for this operation.EoaSigningNotSupportedError: the EOA account provider does not support the requested signing method.FactoryArgsNotAvailableError: factory data is not available for this account type. Most likely an issue with the SDK itself. Please submit a bug report.ModuleInstallationNotSupportedError: this account type does not support installing modules.OwnersFieldRequiredError: smart accounts require anownersfield.SigningNotSupportedForAccountError: the account you provided does not support message signing.WalletClientNoConnectedAccountError: theWalletClientinstance you provided is missing a default account. Ensure the wallet is connected and the client has an account.
Execution errors
ExecutionError: base class for the errors below — catch it (or useisExecutionError) to handle any execution error.Eip7702InitSignatureRequiredError: an EIP-7702 initialization signature is required when preparing a transaction for a 7702 account — even if the account is already deployed on all chains. Generate it withsignEip7702InitData().IntentFailedError: the intent failed (reverted onchain). A common reason is that a swap failed due to price action.InvalidSourceCallsError:sourceCallsincludes a chain that isn’t insourceChains(or the target chain for same-chain transactions).OrderPathRequiredForIntentsError: when sending an intent you need the order path first. When usingsubmitTransaction, make sure to callprepareTransactionfirst.QuoteNotInPreparedTransactionError: the selected quote doesn’t belong to the prepared transaction. Re-prepare and try again.
Orchestrator errors
Server-side errors from the orchestrator API. Each carries acode, traceId, and statusCode.
OrchestratorError: base class for the errors below — catch it (or useisOrchestratorError) to handle any orchestrator error.ValidationError: the request failed validation. Inspectissuesfor the offending fields.InsufficientLiquidityError: there isn’t enough liquidity to fill the intent. InspectunfillableandavailableIntents.NotFoundError: the requested resource (e.g. an intent) couldn’t be found.UnauthorizedError: authentication failed. Make sure you’re passing a valid API key.ForbiddenError: the request is not allowed.KeyScopeDeniedError: the API key’s scope denies this request. Widen the key’s scope —scope,required, andactualdescribe what’s missing.ConflictError: the request conflicts with the current state.UnprocessableContentError: the request was well-formed but couldn’t be processed.RateLimitedError: you’re being rate-limited. HonorretryAfterand retry later.SettlementQuoteError: the settlement layer failed to return a quote.SettlementExecutionError: the settlement layer failed to execute the intent.SimulationFailedError: intent simulation failed. Inspectcategory,errorName, andsimulations;retryableindicates whether a retry may help.ExternalServiceTimeoutError: an upstream service timed out. Safe to retry later.RelayerMarketUnavailableError: no relayer is currently available. Safe to retry later.InternalServerError: an internal orchestrator error. Safe to retry later.
Registry errors
Thrown by the SDK’s local token/chain registry — not the orchestrator API, so you can catch them separately.UnsupportedChainError: the chain isn’t supported. Make sure you’re only using supported chains.UnsupportedTokenError: the token isn’t supported on the given chain. Make sure you’re only using supported tokens when settingtokenRequests.