System errors

Below is a list of error codes for the Waves Enterprise blockchain platform.

0-10 – Swagger/API Specific Errs
0-10 - Swagger and API Errors

Node

level

errors

HTTP

code

API

level

code

Node

level

code

Message

Context

Condition

No

No

Transaction is not in blockchain

When querying a transaction by id

The transaction is not in the blockchain

400

1

WrongJson

Failed to parse json message

Relevant for requests via Swagger

403

2

ApiKeyNotValid

Provided API key is not correct

Relevant only for signing transactions

on the node, because the key is not needed

when transmitting signed transactions

An invalid or empty key

was passed

in the request

TooBigArray

400

10

TooBigArrayAllocation

Too big sequences requested

When querying through Swagger

The request contains too many values

101-111 – TxValidation Errs
101-111 - Transaction validation errors

Node

level

errors

HTTP

code

API

level

code

Node

level

code

Message

Context

Condition

InvalidSignature(_, _)

InvalidRequestSignature

400

101

InvalidSignature

invalid signature

Blockchain event during blocks validation

(not displayed in the Client)

Incorrect transaction identifier

Incorrect block signature in the request

An error is displayed in the Client interface when attempting

to rollback the blockchain for the block with the specified signature

InvalidAddress

400

102

InvalidAddress

invalid address.

Logged as:

1. Bad public key string lenght.

2. Unable to decode base58: ${ex.getMessage}”

3. “Unable to create public key: ${ex.getMessage}”

When validating any field containing the address, alias,

and private key of

either sender or recipient on the node.

If the client part does not check the validity of the address

An invalid address, alias, or public key was passed

in the request

400

106

InvalidSender

invalid sender

When forming Diff from

ExecutedContract Transaction

If the creator of the Executed Contract Transaction

is not the block miner

400

108

InvalidPublicKey

invalid public key

When checking if the passed string is

a public key

GET /addresses/ publicKey/ {publicKey}

400

110

InvalidMessage

invalid message

When verifying the signature of a message on a node.

The transaction signature does not match the public key.

POST / addresses/ verify/ {address}

POST / addresses/ verifyText/ {address}

NegativeAmount(x, of)

400

111

NegativeAmount (s”$x of

$of”)

negative amount: $msg

When creating a transfer, mass transfer, leasing,

issue and reissue transaction, the user

the user enters a negative number in the “Amount” field

If a negative value is passed

In the Client interface,

when trying to specify a negative number, the input

field goes to error state and displays the

“Enter a positive number” error

112 - StateCheckFailed Errs

This section describes the TransactionValidationError node level error. It corresponds to the 400 HTTP code and the 112 API level code.

112 – State Check Failed Errors

API level errors

Message

Context

Condition

StateCheckFailed(tx: Transaction, err: String)

State check failed. Reason: $err (“error id”, “message”, tx.json())

112 StateCheckFailed error is returned with an attachment,

which contains the error code and description

Validation prior to UTX

“Script doesn’t exist and proof doesn’t validate as signature for $pt”

The sender’s public key does not match the transaction signature

Transactions from non-scripted accounts must have exactly 1 proof

When sending a transaction with more than one signature to an account without a script

${tx.getClass.getSimpleName} transaction has not been activated yet

If the option used in the transaction is not enabled on the validator node

Transaction $tx is already in the state on a height of $txHeight

If a transaction with this id already exists in the blockchain

“Attempt to transfer unavailable funds: Transaction application leads to “ +s”negative WEST balance to (at least) temporary negative state,

current balance equals $oldWestBalance, “ +s”spends equals $ {spendings.balance}, result is $newWestBalance”)

If there are insufficient funds in the balance for transfer transactions to one or more

recipients of the WEST token

The following message is displayed in the Client interface:

“Failed to execute transaction (%Transaction type%)”

Not enough tokens to pay the fee. Refill the balance and try again.”

“Attempt to transfer unavailable funds: Transaction application leads to negative asset “ + s”’$aid’ balance to (at least) temporary negative state,

current balance is $availableBalance, “ + s”spends equals $delta, result is ${availableBalance + delta}”

If there are insufficient funds in the balance for transfer transactions to one or more

asset recipients An error is displayed in the Client interface:

“Failed to execute operation (%Transaction type%)”

The calculated commission amount is not enough to pay for the transaction.

Edit the fee amount and try again.”

s”Fee in ${feeAssetId.fold (“WEST”)(_.toString)} for ${tx.builder.classTag} does not exceed minimal value of $minimumFee WEST: $feeAmount”

The fee for a standard transaction (without scripts) is less than required

See also

113-117 - TxValidation Errs

Node

Node level

HTTP

code

API

level

code

Node

level

code

Message

Context

Condition

OverflowError

400

113

OverflowError

overflow error

If the sum of transaction and fee exceeds the permissible value:

the total amount in the mass transfer is greater than the long (technically unlikely)

Long overflow

NegativeMinFee(x, of)

400

114

NegativeMinFee

(s “$x per $of”)

negative fee per: $msg

Relevant only for Sponsorship transactions

An error is returned on transaction validation,

if a negative value is passed

MissingSenderPrivateKey

400

115

MissingSender PrivateKey

no private key for sender address

in wallet or provided password

is incorrect

When trying to sign a transaction on a node (not on the Client),

the key for this public key is not found in the key store

No private (for signing) key was found,

or the key pair password is incorrect.

A message is displayed in the Client:

“No matching private key was found in the keystore,

or the key pair password is entered incorrectly

InvalidName

400

116

InvalidName

invalid name

Incorrect asset name in transaction

the length of the asset name is out of bounds

in an issue transaction

117

“Trying to revoke role ‘$role’ from

it’s last owner: ‘$address’”

There are too few participants

with the given role left in the network

See also

199 - CustomValidationError

Node level errors

HTTP-code

API level code

API level errors

Message

Context

Condition

node-0

Node

Node level

HTTP

code

API

level

code

Node

level

code

Message

Context

Condition

301-304 - TxValidation Errs

Node level errors

HTTP-code

API level code

API level errors

Message

Context

Condition

node-0

305-307, 309-310, 600-605 - RIDE and Docker Contract Errs

Node level errors

HTTP-code

API level code

API level errors

Message

Context

Condition

node-0

606-629, 636 - Privacy, Auth, PKI, Contracts

Node level errors

HTTP-code

API level code

API level errors

Message

Context

Condition

node-0

631-635 - License Errs

Node level errors

HTTP-code

API level code

API level errors

Message

Context

Condition

node-0

640 - Health check

Node level errors

HTTP-code

API level code

API level errors

Message

Context

Condition

node-0

641-643 gRPC specific

Node level errors

HTTP-code

API level code

API level errors

Message

Context

Condition

node-0

700-799 Snapshot

Node level errors

HTTP-code

API level code

API level errors

Message

Context

Condition

node-0

800 ForbiddenDuePkiModeError

Node level errors

HTTP-code

API level code

API level errors

Message

Context

Condition

node-0

See also