Redeem value out of an account.
const url = 'https://example.com/v1/redemptions';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"amount":"example","asset":"example","reference":"example","source":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://example.com/v1/redemptions \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "amount": "example", "asset": "example", "reference": "example", "source": "example" }'Authorizations
Section titled “Authorizations”Parameters
Section titled “ Parameters ”Header Parameters
Section titled “Header Parameters”The client key (REQ-OP-10). Without one, a key is derived from the request and returned (REQ-OP-11).
The identity the caller acts for, where different (REQ-PN-1).
Request Bodyrequired
Section titled “Request Bodyrequired”redeem (SPEC §8.1): value leaves the book to the issuance counterparty.
object
Minor units, as a decimal-integer string.
The asset.
The account debited.
Examplegenerated
{ "amount": "example", "asset": "example", "reference": "example", "source": "example"}Responses
Section titled “ Responses ”Decided. For a transfer or a reservation, the reply to a repeat once the core has decided (REQ-CS-3).
The reply to a command (REQ-CS-2): an acknowledgement, not an outcome. Its state may be
Received; a caller learns completion by notification or by operation(reference)
(REQ-CS-6). There is no blocking “wait until terminal” reply.
object
The API key a register_credential with scheme api-key issued (F-028): on the one
reply that decided it, and never again. aledgent keeps only its hash (REQ-AU-8).
The client key the command was taken under: the caller’s, or the one derived from the
request when the caller gave none (REQ-OP-11). A retry with it gets this reply again.
Whether ingress derived the client key.
The operation reference: service-derived, opaque, never supplied by a caller
(REQ-OP-10).
What a decided command produced. Only the fields of the command’s result are present.
object
A new ledger account.
What an anchoring command produced.
object
A checkpoint on the wire.
object
The commitment, hex.
When it was created.
The sequence of the last entry it covers.
The kernel root, hex.
Its number: the settlement layer’s anchor number.
pending, submitted or final.
A settlement comparison at an inbox cut (F-017, REQ-PR-5).
object
The final checkpoints it is the recorded comparison of.
When the core compared.
The cut: the inbox length at the finalized block compared.
Whether any asset differs.
The block’s height.
Every asset either side holds.
One asset of a settlement comparison (F-017).
object
The asset.
What the book records as held on the settlement layer: minor units, a signed decimal-integer string.
The layer’s less the book’s.
What the layer holds, minor units.
The disclosure, hex.
Its first credential.
The credentials an import added, in order (F-028, REQ-MG-7).
When that pending change may complete (F-012).
A new grant.
A new identity.
An integrating party registered (REQ-ID-7).
A pending recovery or succession opened or completed (F-012).
The posting sequence numbers the command appended, in order.
What a settlement command produced.
object
Where an anchor’s checkpoint stands: pending, submitted or final (F-017).
What the core made of an attestation (DEC-20). Informative: nothing is held on it.
object
The registered asset the adapter maps there.
For book_only: why a binding to this location would be refused now (absent,
mapping, symbol, decimals, status); absent when it would be admitted.
unregistered, book_only, binding or bound: where the mapped asset stands.
A settlement comparison at an inbox cut (F-017, REQ-PR-5).
object
The final checkpoints it is the recorded comparison of.
When the core compared.
The cut: the inbox length at the finalized block compared.
Whether any asset differs.
The block’s height.
Every asset either side holds.
One asset of a settlement comparison (F-017).
object
The asset.
What the book records as held on the settlement layer: minor units, a signed decimal-integer string.
The layer’s less the book’s.
What the layer holds, minor units.
A condition a check detected on the way (ERR-AmountMismatch).
An instruction in the outbox, as the adapter reads it (REQ-SO-5).
object
The exact amount: minor units, as a decimal-integer string.
The asset.
A plain account on the settlement layer: 32 bytes of hex.
object
Another deployment on the same settlement layer (REQ-SL-6).
object
object
The opaque account reference it resolves: 32 bytes of hex.
Its instance.
Its identity, which the acknowledgement names: 32 bytes of hex.
The settlement-layer height after which it can no longer take effect (REQ-SL-4).
The operation reference, which the layer’s record of the movement carries.
That a reservation exists for it: always true (INV-13).
Operations a finalised head moved.
An operation a finalised head moved.
object
The operation.
The state it entered.
What a re-scan found.
object
Positions the layer holds that were never ingested.
One position of a re-scan and the digest the layer holds there.
object
The digest, 32 bytes of hex.
The position.
Unassociated records of the range.
Final coordinates the core holds that the layer no longer shows.
A settlement-layer record cited by its coordinate.
object
The entry’s digest, hex.
The instance.
The position in its inbox.
Taken as evidence; the operation’s state is the reply’s.
Stored; no transition.
The coordinate was seen before (ERR-ObservationDuplicate on the refusal path).
It relates to nothing aledgent holds (ERR-ObservationUnassociated on the refusal path).
The operation’s state at the moment of the reply, where the command has a lifecycle.
Whether this reply is terminal. false whenever the state is not terminal (REQ-OP-7).
Example
{ "class": "terminal", "result": { "settlement": { "verdict": "applied" } }}Refused, with the named condition. The status is the alternative’s x-http-status.
- ERR-NotAuthorised
- ERR-AuthorityRevoked
- ERR-CredentialInvalid
- ERR-RecoveryNotElapsed
- ERR-UnboundedGrant
- ERR-BoundExceeded
- ERR-UnknownAccount
- ERR-AccountFrozen
- ERR-AccountClosed
- ERR-AccountNotEmpty
- ERR-IdentityRestricted
- ERR-UnknownAsset
- ERR-AssetDeprecated
- ERR-PrecisionExceeded
- ERR-ZeroAmount
- ERR-InsufficientAvailable
- ERR-AmountMismatch
- ERR-ReleaseUnsafe
- ERR-OperationTerminal
- ERR-InvalidTransition
- ERR-UnknownOperation
- ERR-DeadlineRequired
- ERR-ClientKeyReused
- ERR-BatchTooLarge
- ERR-UnsupportedLeg
- ERR-SettlementLayerUnavailable
- ERR-DecisionUnavailable
- ERR-ObservationDuplicate
- ERR-ObservationUnassociated
- ERR-EvidenceInsufficient
- ERR-JustificationRequired
- ERR-ApprovalRequired
- ERR-DisclosureUnsupported
- ERR-DisclosureFalse
- ERR-NotDisclosable
- ERR-AnchorNotFinal
- ERR-QueryUnbounded
- ERR-MalformedCommand
- ERR-InitialStateNotSealed
- ERR-IdentifierArchived
- ERR-Internal
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
Example
{ "description": "The initiating principal holds no authority that covers this operation, account, asset or bound", "error": "ERR-NotAuthorised"}Refused, with the named condition. The status is the alternative’s x-http-status.
- ERR-NotAuthorised
- ERR-AuthorityRevoked
- ERR-CredentialInvalid
- ERR-RecoveryNotElapsed
- ERR-UnboundedGrant
- ERR-BoundExceeded
- ERR-UnknownAccount
- ERR-AccountFrozen
- ERR-AccountClosed
- ERR-AccountNotEmpty
- ERR-IdentityRestricted
- ERR-UnknownAsset
- ERR-AssetDeprecated
- ERR-PrecisionExceeded
- ERR-ZeroAmount
- ERR-InsufficientAvailable
- ERR-AmountMismatch
- ERR-ReleaseUnsafe
- ERR-OperationTerminal
- ERR-InvalidTransition
- ERR-UnknownOperation
- ERR-DeadlineRequired
- ERR-ClientKeyReused
- ERR-BatchTooLarge
- ERR-UnsupportedLeg
- ERR-SettlementLayerUnavailable
- ERR-DecisionUnavailable
- ERR-ObservationDuplicate
- ERR-ObservationUnassociated
- ERR-EvidenceInsufficient
- ERR-JustificationRequired
- ERR-ApprovalRequired
- ERR-DisclosureUnsupported
- ERR-DisclosureFalse
- ERR-NotDisclosable
- ERR-AnchorNotFinal
- ERR-QueryUnbounded
- ERR-MalformedCommand
- ERR-InitialStateNotSealed
- ERR-IdentifierArchived
- ERR-Internal
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
Example
{ "description": "The initiating principal holds no authority that covers this operation, account, asset or bound", "error": "ERR-NotAuthorised"}Headers
Section titled “Headers”On ERR-DecisionUnavailable (503): seconds to wait before retrying with the same client key (DEC-27 (g)).
© 2026 Pagos Cube LLC · Code: Apache-2.0 OR MIT · agents/: AGPL-3.0-or-later · Docs: CC-BY-4.0