Guides
Dash CoreDash PlatformDash.orgDash User DocsLog In
Guides
These docs are for v0.23.0. Click to read the latest docs for v0.25-redirect.

Consensus Errors

Dash Platform protocol error codes

Platform Error Codes

A comprehensive set of consensus error codes were introduced in Dash Platform v0.21. The tables below follow the codes found in code.js of the consensus source code.

The error codes are organized into four categories that each span 1000 error codes. Each category may be further divided into sub-categories. The four categories and their error code ranges are:

CategoryCode rangeDescription
Basic1000 - 1999Errors encountered while validating structure and data
Signature2000 - 2999Errors encountered while validating identity existence and state transition signature
Fee3000 - 3999Errors encountered while validating an identity's balance is sufficient to pay fees
State4000 - 4999Errors encounter while validating state transitions against the platform state

Basic

Basic errors occupy the codes ranging from 1000 to 1999. This range is divided into several categories for clarity.

Decoding

CodeError
1000ProtocolVersionParsingError
1001SerializedObjectParsingError

General

CodeError
1002UnsupportedProtocolVersionError
1003IncompatibleProtocolVersionError
1004JsonSchemaCompilationError
1005JsonSchemaError
1006InvalidIdentifierError

Data Contract

CodeError
1007DataContractMaxDepthExceedError
1008DuplicateIndexError
1009IncompatibleRe2PatternError
1010InvalidCompoundIndexError
1011InvalidDataContractIdError
1012InvalidIndexedPropertyConstraintError
1013InvalidIndexPropertyTypeError
1014InvalidJsonSchemaRefError
1015SystemPropertyIndexAlreadyPresentError
1016UndefinedIndexPropertyError
1017UniqueIndicesLimitReachedError
1048DuplicateIndexNameErrorAdded in v0.22
1050InvalidDataContractVersionError4013 prior to v0.23
1051IncompatibleDataContractSchemaError4014 prior to v0.23
1052DataContractImmutablePropertiesUpdateError4015 prior to v0.23
1053DataContractIndicesChangedError4016 prior to v0.23
1054DataContractInvalidIndexDefinitionUpdateErrorAdded in v0.23
1055DataContractHaveNewUniqueIndexErrorAdded in v0.23

Document

CodeError
1018DataContractNotPresentError
1019DuplicateDocumentTransitionsWithIdsError
1020DuplicateDocumentTransitionsWithIndicesError
1021InconsistentCompoundIndexDataError
1022InvalidDocumentTransitionActionError
1023InvalidDocumentTransitionIdError
1024InvalidDocumentTypeError
1025MissingDataContractIdError
1026MissingDocumentTransitionActionError
1027MissingDocumentTransitionTypeError
1028MissingDocumentTypeError

Identity

CodeError
1029DuplicatedIdentityPublicKeyError
1030DuplicatedIdentityPublicKeyIdError
1031IdentityAssetLockProofLockedTransactionMismatchError
1032IdentityAssetLockTransactionIsNotFoundError
1033IdentityAssetLockTransactionOutPointAlreadyExistsError
1034IdentityAssetLockTransactionOutputNotFoundError
1035InvalidAssetLockProofCoreChainHeightError
1036InvalidAssetLockProofTransactionHeightError
1037InvalidAssetLockTransactionOutputReturnSizeError
1038InvalidIdentityAssetLockTransactionError
1039InvalidIdentityAssetLockTransactionOutputError
1040InvalidIdentityPublicKeyDataError
1041InvalidInstantAssetLockProofError
1042InvalidInstantAssetLockProofSignatureError
1046MissingMasterPublicKeyErrorAdded in v0.22
1047InvalidIdentityPublicKeySecurityLevelErrorAdded in v0.22
1056InvalidIdentityKeySignatureErrorAdded in v0.23

State Transition

CodeError
1043InvalidStateTransitionTypeError
1044MissingStateTransitionTypeError
1045StateTransitionMaxSizeExceededError

Signature

Signature errors occupy the codes ranging from 2000 to 2999.

CodeError
2000IdentityNotFoundError
2001InvalidIdentityPublicKeyTypeError
2002InvalidStateTransitionSignatureError
2003MissingPublicKeyError
2004InvalidSignaturePublicKeySecurityLevelErrorAdded in v0.23
2005WrongPublicKeyPurposeErrorAdded in v0.23
2006PublicKeyIsDisabledErrorAdded in v0.23
2007PublicKeySecurityLevelNotMetErrorAdded in v0.23

Fee

Fee errors occupy the codes ranging from 3000 to 3999.

CodeError
3000BalanceIsNotEnoughErrorCurrent credits balance is insufficient to pay fee

State

State errors occupy the codes ranging from 4000 to 4999. This range is divided into several categories for clarity.

Data Contract

CodeError
4000DataContractAlreadyPresentError
4001DataTriggerConditionError
4002DataTriggerExecutionError
4003DataTriggerInvalidResultError
4013InvalidDataContractVersionError⚠️ Renumbered to 1050 in v0.23
4014IncompatibleDataContractSchemaError⚠️ Renumbered to 1051 in v0.23
4015DataContractImmutablePropertiesUpdateError⚠️ Renumbered to 1052 in v0.23
4016DataContractIndicesChangedError⚠️ Renumbered to 1053 in v0.23

Document

CodeError
4004DocumentAlreadyPresentError
4005DocumentNotFoundError
4006DocumentOwnerIdMismatchError
4007DocumentTimestampsMismatchError
4008DocumentTimestampWindowViolationError
4009DuplicateUniqueIndexError
4010InvalidDocumentRevisionError

Identity

CodeError
4011IdentityAlreadyExistsError
4012IdentityPublicKeyDisabledAtWindowViolationErrorAdded in v0.23
4017IdentityPublicKeyIsReadOnlyErrorAdded in v0.23
4018InvalidIdentityPublicKeyIdErrorAdded in v0.23
4019InvalidIdentityRevisionErrorAdded in v0.23
4020StateMaxIdentityPublicKeyLimitReachedErrorAdded in v0.23
4021DuplicatedIdentityPublicKeyStateErrorAdded in v0.23
4022DuplicatedIdentityPublicKeyIdStateErrorAdded in v0.23
4023IdentityPublicKeyIsDisabledErrorAdded in v0.23