Errors

Every failure carries a machine-readable code and a remediation hint.

View as Markdown

A failed execute returns an ExtrinsicResult whose error has a semantic code (branch on it) and a remediation hint (what to try next). Every chain error name is deliberately classified — a CI gate keeps the mapping complete in both directions. The machine-readable version is at /catalog/errors.json.

Error codes

insufficient_balance

Fund the signing account or reduce the amount; check with btcli wallet balance

insufficient_liquidity

The pool cannot absorb this trade; reduce the amount or split it into smaller steps

rate_limited

Wait for the rate-limit window to pass, then retry

not_registered

Register the hotkey on this subnet first with btcli subnets register

not_authorized

Sign with the key or origin that owns the target object, then retry

already_exists

The object or state already exists; treat the goal as met or pick a different target

not_found

The referenced object is not on-chain; check the identifier

subnet_not_exists

Use an existing netuid; btcli subnets list shows valid ones

subtoken_disabled

The subnet is not active yet; wait for start_call

disabled

This call or feature is switched off on this network

too_early

The required window has not opened yet; wait some blocks and retry

expired

The window has closed; restart the flow with fresh state

limit_exceeded

A chain-side capacity limit was hit; reduce the size or count of the request

unit_mismatch

Match the Balance netuid to the operation's currency

invalid_argument

Check the argument values against the operation schema

policy_violation

The action exceeds a configured safety policy

internal

A chain-side invariant failed; nothing to fix client-side — report it if it persists

unknown

Inspect the message for details

Chain error classification

The exact chain error name (from the extrinsic receipt) maps to a code:

Chain errorCode
AccountNotAllowedCommitnot_authorized
AccountRejectsLockedAlphainvalid_argument
ActiveLockExistsalready_exists
ActivityCutoffFactorMilliOutOfBoundsinvalid_argument
ActivityCutoffTooLowinvalid_argument
AddStakeBurnRateLimitExceededrate_limited
AdminActionProhibitedDuringWeightsWindowtoo_early
AllNetworksInImmunitytoo_early
AlphaHighTooLowinvalid_argument
AlphaLowOutOfRangeinvalid_argument
AlreadyApprovedalready_exists
AlreadyDepositedalready_exists
AlreadyFinalizedalready_exists
AlreadyNotedalready_exists
AlreadyStoredalready_exists
AmountTooLowinvalid_argument
AnnouncedColdkeyHashDoesNotMatchinvalid_argument
AnnouncementDepositInvariantViolatedinternal
ArithmeticOverflowinternal
AutoEpochAlreadyImminentalready_exists
BadEncKeyLeninvalid_argument
BalanceLowinsufficient_balance
BalanceWithdrawalErrorinsufficient_balance
BeneficiaryDoesNotOwnHotkeynot_authorized
BlockDurationTooLonginvalid_argument
BlockDurationTooShortinvalid_argument
BondsMovingAverageMaxReachedlimit_exceeded
CallDisableddisabled
CallFilterednot_authorized
CallUnavailablenot_found
CanNotSetRootNetworkWeightsinvalid_argument
CannotAddSelfAsDelegateDependencyinvalid_argument
CannotAffordLockCostinsufficient_balance
CannotBurnOrRecycleOnRootSubnetinvalid_argument
CannotEndInPastinvalid_argument
CannotReleaseYettoo_early
CannotUseSystemAccountnot_authorized
CapNotRaisedtoo_early
CapRaisedlimit_exceeded
CapTooLowinvalid_argument
ChainIdMismatchinvalid_argument
ChangePendingalready_exists
ChildParentInconsistencyinvalid_argument
CodeInUseinvalid_argument
CodeInfoNotFoundnot_found
CodeNotFoundnot_found
CodeRejectedinvalid_argument
CodeTooLargelimit_exceeded
ColdKeyAlreadyAssociatedalready_exists
ColdkeySwapAlreadyDisputedalready_exists
ColdkeySwapAnnouncedalready_exists
ColdkeySwapAnnouncementNotFoundnot_found
ColdkeySwapClearTooEarlytoo_early
ColdkeySwapDisputednot_authorized
ColdkeySwapReannouncedTooEarlytoo_early
ColdkeySwapTooEarlytoo_early
CommitRevealDisableddisabled
CommitRevealEnableddisabled
CommittingWeightsTooFastrate_limited
ContractNotFoundnot_found
ContractRevertedinternal
ContractTrappedinternal
ContributionPeriodEndedexpired
ContributionPeriodNotEndedtoo_early
ContributionTooLowinvalid_argument
CreateOriginNotAllowednot_authorized
CurrencyErrorinternal
DeadAccountnot_found
DecodingFailedinvalid_argument
DelegateDependencyAlreadyExistsalready_exists
DelegateDependencyNotFoundnot_found
DelegateTakeTooHighinvalid_argument
DelegateTakeTooLowinvalid_argument
DelegateTxRateLimitExceededrate_limited
DeltaZeroinvalid_argument
DepositCannotBeWithdrawninvalid_argument
DepositTooLowinvalid_argument
Deprecateddisabled
DisabledTemporarilydisabled
DrandConnectionFailureinternal
Duplicatealready_exists
DuplicateChildinvalid_argument
DuplicateContractalready_exists
DuplicateOffenceReportalready_exists
DuplicateOrderInBatchinvalid_argument
DuplicateUidsinvalid_argument
DynamicTempoBlockedByCommitRevealdisabled
Enteredalready_exists
EpochTriggerAlreadyPendingalready_exists
EvmKeyAssociateRateLimitExceededrate_limited
ExistentialDepositinsufficient_balance
ExistingVestingSchedulealready_exists
Exitedalready_exists
ExpectedBeneficiaryOriginnot_authorized
Expendabilityinsufficient_balance
ExpiredWeightCommitexpired
FailedToExtractRuntimeVersioninvalid_argument
FailedToScheduleinternal
FaucetDisableddisabled
FeeOverflowinternal
FeeRateTooHighinvalid_argument
FirstEmissionBlockNumberAlreadySetalready_exists
GasLimitTooHighinvalid_argument
GasLimitTooLowinvalid_argument
GasPriceTooLowinvalid_argument
HotKeyAccountNotExistsnot_registered
HotKeyAlreadyDelegatealready_exists
HotKeyAlreadyRegisteredInSubNetalready_exists
HotKeyNotRegisteredInNetworknot_registered
HotKeyNotRegisteredInSubNetnot_registered
HotKeySetTxRateLimitExceededrate_limited
HotKeySwapOnSubnetIntervalNotPassedrate_limited
IncorrectCommitRevealVersioninvalid_argument
IncorrectPartialFillAmountinvalid_argument
IncorrectWeightVersionKeyinvalid_argument
Indeterministicinvalid_argument
InputForwardedinvalid_argument
InputLengthsUnequalinvalid_argument
InsufficientBalanceinsufficient_balance
InsufficientInputAmountinvalid_argument
InsufficientLiquidityinsufficient_liquidity
InsufficientStakeForLockinsufficient_balance
InvalidCallFlagsinvalid_argument
InvalidChainIdinvalid_argument
InvalidChildinvalid_argument
InvalidChildkeyTakeinvalid_argument
InvalidCrowdloanIdnot_found
InvalidDerivedAccountinvalid_argument
InvalidDerivedAccountIdinvalid_argument
InvalidDifficultyinvalid_argument
InvalidEquivocationProofinvalid_argument
InvalidFinalizationConfiginvalid_argument
InvalidIdentityinvalid_argument
InvalidIpAddressinvalid_argument
InvalidIpTypeinvalid_argument
InvalidKeyOwnershipProofinvalid_argument
InvalidLeaseBeneficiaryinvalid_argument
InvalidLiquidityValueinvalid_argument
InvalidNonceinvalid_argument
InvalidNumRootClaiminvalid_argument
InvalidOriginnot_authorized
InvalidPortinvalid_argument
InvalidRecoveredPublicKeyinvalid_argument
InvalidRevealCommitHashNotMatchinvalid_argument
InvalidRevealRoundexpired
InvalidRootClaimThresholdinvalid_argument
InvalidRoundNumberinvalid_argument
InvalidScheduleinvalid_argument
InvalidSealinvalid_argument
InvalidSignatureinvalid_argument
InvalidSpecNameinvalid_argument
InvalidSubnetNumberinvalid_argument
InvalidTickRangeinvalid_argument
InvalidValueinvalid_argument
InvalidVotingPowerEmaAlphainvalid_argument
InvalidWorkBlockinvalid_argument
IssuanceDeactivateddisabled
LeaseCannotEndInThePastinvalid_argument
LeaseDoesNotExistnot_found
LeaseHasNoEndBlockinvalid_argument
LeaseHasNotEndedtoo_early
LeaseNetuidNotFoundnot_found
LimitOrdersDisableddisabled
LiquidAlphaDisableddisabled
LiquidityRestrictionsinsufficient_balance
LockHotkeyMismatchinvalid_argument
MaxAllowedUIdsLessThanCurrentUIdsinvalid_argument
MaxAllowedUidsGreaterThanDefaultMaxAllowedUidsinvalid_argument
MaxAllowedUidsLessThanMinAllowedUidsinvalid_argument
MaxCallDepthReachedlimit_exceeded
MaxContributionReachedlimit_exceeded
MaxContributorsReachedlimit_exceeded
MaxDelegateDependenciesReachedlimit_exceeded
MaxValidatorsLargerThanMaxUIdsinvalid_argument
MaxWeightExceededlimit_exceeded
MaxWeightTooLowinvalid_argument
MaximumContributionTooLowinvalid_argument
MechanismDoesNotExistsubnet_not_exists
MigrationInProgresstoo_early
MinAllowedUidsGreaterThanCurrentUidsinvalid_argument
MinAllowedUidsGreaterThanMaxAllowedUidsinvalid_argument
MinimumContributionTooHighinvalid_argument
MinimumContributionTooLowinvalid_argument
MinimumThresholdinvalid_argument
MultiBlockMigrationsOngoingtoo_early
Namedinvalid_argument
NeedWaitingMoreBlocksToStarCalltoo_early
NegativeSigmoidSteepnessinvalid_argument
NetworkTxRateLimitExceededrate_limited
NeuronNoValidatorPermitnot_authorized
NewColdKeyIsHotkeyinvalid_argument
NewHotKeyIsSameWithOldinvalid_argument
NewHotKeyNotCleanForRootSwapinvalid_argument
NoApprovalsNeededinvalid_argument
NoChainExtensiondisabled
NoContributionnot_found
NoDepositnot_found
NoExistingLocknot_found
NoMigrationPerformedinvalid_argument
NoNeuronIdAvailablelimit_exceeded
NoPermissionnot_authorized
NoSelfProxyinvalid_argument
NoTimepointinvalid_argument
NoWeightsCommitFoundnot_found
NonAssociatedColdKeynot_authorized
NonDefaultCompositeinvalid_argument
NonZeroRefCountinvalid_argument
NoneValuenot_found
NotAllowednot_authorized
NotAuthorizednot_authorized
NotConfigureddisabled
NotEnoughAlphaOutToRecycleinsufficient_liquidity
NotEnoughBalanceToPaySwapColdKeyinsufficient_balance
NotEnoughBalanceToPaySwapHotKeyinsufficient_balance
NotEnoughBalanceToStakeinsufficient_balance
NotEnoughStakeinsufficient_balance
NotEnoughStakeToSetChildkeysinsufficient_balance
NotEnoughStakeToSetWeightsinsufficient_balance
NotEnoughStakeToWithdrawinsufficient_balance
NotFoundnot_found
NotNotednot_found
NotOwnernot_authorized
NotPermittedOnRootSubnetinvalid_argument
NotProxynot_authorized
NotReadyToDissolvetoo_early
NotRequestednot_found
NotRootSubnetinvalid_argument
NotSubnetOwnernot_authorized
NothingAuthorizednot_found
OrderAlreadyProcessedalready_exists
OrderCancelledexpired
OrderExpiredexpired
OrderNetUidMismatchinvalid_argument
OutOfBoundsinvalid_argument
OutOfGaslimit_exceeded
OutOfTransientStoragelimit_exceeded
OutputBufferTooSmallinvalid_argument
Overflowinternal
POWRegistrationDisableddisabled
PalletHotkeyNotRegisterednot_registered
PartialFillsNotEnableddisabled
PauseFailedinvalid_argument
PaymentOverflowinternal
PreLogExistsinvalid_argument
PriceConditionNotMettoo_early
PriceLimitExceededinsufficient_liquidity
ProportionOverflowinvalid_argument
PulseVerificationErrorinvalid_argument
RandomSubjectTooLonglimit_exceeded
ReentranceDeniedinvalid_argument
Reentrancyinternal
RegistrationNotPermittedOnRootSubnetinvalid_argument
RegistrationPriceLimitExceededlimit_exceeded
RelayerMissMatchinvalid_argument
RelayerRequiredForPartialFillinvalid_argument
Requestedinvalid_argument
RequireSudonot_authorized
RescheduleNoChangeinvalid_argument
ReservesOutOfBalanceinsufficient_liquidity
ReservesTooLowinsufficient_liquidity
ResumeFailedinvalid_argument
RevealPeriodTooLargeinvalid_argument
RevealPeriodTooSmallinvalid_argument
RevealTooEarlytoo_early
RootNetUidNotAllowedinvalid_argument
RootNetworkDoesNotExistsubnet_not_exists
SameAutoStakeHotkeyAlreadySetalready_exists
SameNetuidinvalid_argument
SenderInSignatoriesinvalid_argument
ServingRateLimitExceededrate_limited
SettingWeightsTooFastrate_limited
SignatoriesOutOfOrderinvalid_argument
SlippageTooHighinsufficient_liquidity
SpaceLimitExceededrate_limited
SpecVersionNeedsToIncreaseinvalid_argument
StakeTooLowForRootinsufficient_balance
StakeUnavailableinsufficient_balance
StakingRateLimitExceededrate_limited
StateChangeDeniednot_authorized
StorageDepositLimitExhaustedlimit_exceeded
StorageDepositNotEnoughFundsinsufficient_balance
StorageOverflowinternal
SubNetRegistrationDisableddisabled
SubnetDoesNotExistsubnet_not_exists
SubnetLimitReachedlimit_exceeded
SubnetNotExistssubnet_not_exists
SubtokenDisabledsubtoken_disabled
SwapInputTooLargeinsufficient_liquidity
SwapReturnedZeroinsufficient_liquidity
SymbolAlreadyInUsealready_exists
SymbolDoesNotExistnot_found
TargetBlockNumberInPastinvalid_argument
TempoOutOfBoundsinvalid_argument
TerminatedInConstructorinternal
TerminatedWhileReentrantinvalid_argument
TooBiglimit_exceeded
TooFewinvalid_argument
TooFewSignatoriesinvalid_argument
TooManylimit_exceeded
TooManyCallslimit_exceeded
TooManyChildrenlimit_exceeded
TooManyFieldsInCommitmentInfolimit_exceeded
TooManyFreezeslimit_exceeded
TooManyHoldslimit_exceeded
TooManyPendingExtrinsicslimit_exceeded
TooManyRegistrationsThisBlockrate_limited
TooManyRegistrationsThisIntervalrate_limited
TooManyReserveslimit_exceeded
TooManySignatorieslimit_exceeded
TooManyTopicslimit_exceeded
TooManyUIDsPerMechanismlimit_exceeded
TooManyUnrevealedCommitslimit_exceeded
TooSoonrate_limited
TransactionMustComeFromEOAnot_authorized
TransactorAccountShouldBeHotKeynot_authorized
TransferDisalloweddisabled
TransferFailedinsufficient_balance
TrimmingWouldExceedMaxImmunePercentagelimit_exceeded
TxChildkeyTakeRateLimitExceededrate_limited
TxRateLimitExceededrate_limited
UidMapCouldNotBeClearedinternal
UidVecContainInvalidOneinvalid_argument
UidsLengthExceedUidsInSubNetlimit_exceeded
UnableToRecoverPublicKeyinvalid_argument
Unannouncedtoo_early
Unauthorizednot_authorized
Undefinedinternal
Underflowinternal
UnexpectedTimepointinvalid_argument
UnexpectedUnreserveLeftoverinternal
UnlockAmountTooHighinsufficient_balance
Unproxyablenot_authorized
Unreachableinternal
UnverifiedPulseinvalid_argument
ValueNotInBoundsinvalid_argument
ValueTooLargelimit_exceeded
VestingBalanceinsufficient_balance
VotingPowerTrackingNotEnableddisabled
WeightExceedsAbsoluteMaxlimit_exceeded
WeightVecLengthIsLowinvalid_argument
WeightVecNotEqualSizeinvalid_argument
WithdrawFailedinsufficient_balance
WrongTimepointinvalid_argument
XCMDecodeFailedinvalid_argument
ZeroBalanceAfterWithdrawninsufficient_balance
ZeroShareInBatchinvalid_argument