Skip to main content

Platform API errors DALP-12400 to DALP-12499

Cause, fix, HTTP status and retry flag for every Platform API error with a code from DALP-12400 to DALP-12499.

This page lists the 14 errors the Platform API can return with a code from DALP-12400 to DALP-12499. Match the id in the error envelope to the DALP Code column, then read Retryable and Suggested Fix. The Platform API error reference explains each column, including Severity, and the DALP error index lists the page for every code range.

DALP Code
Machine name
Category
Message
Why
Suggested Fix
Severity
Retryable
HTTP Status
DALP-12400
MULTISIG_ACCOUNT_ABSTRACTION_REQUIRED
client
Multisig wallets need account abstraction, which this organisation does not use on this network.
A multisig wallet is a smart contract wallet, and this organisation does not drive account abstraction on this network, so the draft step was refused before anything was stored.
Use a single-key wallet, or ask an operator to enable account abstraction for this organisation on this network.
info
No
400
DALP-12401
CUSTODY_ONLY_LIVE_KEY
domain
This is the participant's only live key.
Revoking a key needs approval from another live key of the same participant, and none exists, so the request could never complete. Nothing changed.
If the key is lost or stolen, use lost-wallet recovery, which moves the tokens to a new wallet. If you still hold the key and its wallet is empty, archive it instead.
info
No
409
DALP-12402
REGISTRATION_WALLET_NOT_BOUND
domain
The participant's new wallet is not bound to its identity yet.
A wallet joins an approved identity's registration only once its key is bound to that identity, and none of the participant's new wallets is bound yet, for example while the key is still waiting for a signature. Nothing changed.
Retry once the wallet's key has been added to the identity.
info
No
409
DALP-12403
CUSTODY_KEY_HOLDS_TOKENS
domain
This key still holds tokens.
Revoking a key that holds tokens would strand them at an address that can no longer sign. Nothing changed.
Use lost-wallet recovery, which moves the tokens to a new wallet, then revoke the key.
info
No
409
DALP-12404
CUSTODY_ARCHIVE_HOLDS_TOKENS
domain
A wallet still holds tokens.
A wallet of this participant still holds tokens, and archiving a key before they are moved can leave them at an address nobody manages. Nothing changed.
Transfer the tokens to another wallet, then archive the key. If the key is lost, use lost-wallet recovery.
info
No
409
DALP-12405
CUSTODY_ARCHIVE_LIVE_WALLET
domain
A smart wallet on this key is still live.
Archiving the key while a smart wallet still uses it would leave that wallet without a signer. Nothing changed.
Archive the smart wallet first, then archive this key.
info
No
409
DALP-12406
CUSTODY_SCOPE_DENIED
permission
You cannot manage this custody account.
The request names a participant that is not yours, an invitation that is not open to you, or no active organization. Nothing changed.
Only the user a participant belongs to can manage its custody accounts. Switch to one of your own participants in an organization you belong to, or ask that user to make the change.
info
No
403
DALP-12407
platform.addonApprovals.APPROVAL_NOT_REQUIRED
client
This call needs no checker approval.
The access manager needs no checker approval for this call, so there is nothing to propose.
Send the call to data.target directly from a wallet that holds its role.
info
No
422
DALP-12408
platform.addonApprovals.PROPOSAL_REFUSED
contract
The access manager refused this proposal change.
The access manager refused this proposal change. Read data.reason for the cause and data.revert for the contract error.
Read data.reason and the proposal, act from a wallet that may make this change, then send it again.
info
No
422
DALP-12409
WALLET_VERIFICATION_STRONGER_FACTOR_REQUIRED
permission
This action needs the wallet authenticator code.
The account holds a wallet authenticator, so a PIN or recovery code does not confirm this action, and the platform changed nothing. data.verificationType names the method that was sent and data.requiredType the method that is required.
Enter the wallet authenticator code and send the request again with a fresh step-up challenge. If the authenticator device is lost, recover access from the account Security page first.
info
No
403
DALP-12410
WALLET_PIN_RESET_NOTICE_FAILED
dependency
The wallet PIN was reset, but the notice email could not be sent.
The member's wallet PIN was removed and every session of the member ended. Only the email that tells the member could not be sent.
Do not repeat the reset: it would run again and can remove a PIN or sessions the member set up since. Tell the member another way.
error
No
503
DALP-12411
platform.addonApprovals.APPROVAL_REQUIRED
client
This change needs checker approval.
The access manager's checkers must approve this change before it can be sent.
Propose data.calldata to data.target under data.makerRole, collect the approvals, then send the same request again or execute the proposal.
info
No
422
DALP-12412
settlement.sale.APPROVER_SHORTFALL
client
This organisation has no second owner to approve the request.
Creating, activating, ending or finalizing an offering, or running its allocation, waits for an organisation owner other than the requester to approve it while offerings approval is on, but this organisation has no other owner.
Add another owner to the organisation, then send the request again, or turn offerings approval off in Organisation settings, General.
info
No
422
DALP-12413
CUSTODY_DIRECT_PARTICIPANT_HAS_KEY
domain
This participant signs with one key.
A participant that signs directly holds one live key, and that key's address is the address its roles and tokens sit on, so a second key could never act for it. Nothing changed.
To replace the key, use lost-wallet recovery, which moves its tokens to the new wallet. If you still hold the key, remove it first, then add the new one.
info
No
409

The previous page is DALP-12300 to DALP-12399. The next page is DALP-13000 to DALP-13999.

Was this page helpful?