A statement for a period. The period is required.
const url = 'https://example.com/v1/statements?account=example&asset=example';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://example.com/v1/statements?account=example&asset=example' \ --header 'Authorization: Bearer <token>'Reads one account’s statement in one asset for a period, with its opening and closing
balances. account, asset, from and to are all required; without any of them the request
is refused as ERR-QueryUnbounded, and so is from after to, an as_of the book has not
reached, and a period of more than 1000 movements (ask for a shorter one, or page through
movements). A parameter this route does not know, a value that does not parse (from=abc)
and an account or asset that is not a valid identifier or symbol are refused as ERR-MalformedCommand
(amendment 0032, REQ-ER-3).
Authorizations
Section titled “Authorizations”Parameters
Section titled “ Parameters ”Query Parameters
Section titled “Query Parameters”The account, as a did:aledgent:acct: identifier. Required: a missing one is
ERR-QueryUnbounded (REQ-CS-5).
Read at this view, for a statement that must not move: the view of an earlier balances
or movements read. A view the book has not reached is refused.
The asset, by its symbol. Required, as account is.
The period’s start, in milliseconds since the Unix epoch. Inclusive. Required.
The period’s end, in milliseconds since the Unix epoch. Exclusive. Required.
Responses
Section titled “ Responses ”The answer, from one consistent view (REQ-QR-2).
statement (SPEC §8.2).
object
The account.
The asset.
Whether the period is closed: no posting can still enter it.
The closing balances.
object
Available.
Encumbered.
Reserved.
The period’s start.
The first posting of the period.
The movements.
One movement: one entry against one account.
object
The account.
Minor units.
The asset.
The posting’s time.
The authorities that caused it.
An authority a posting relied on, and who used it (REQ-AU-7, INV-20).
object
The credential it presented.
The grant, where one was used.
owner, delegated, operator, issuance or recovery.
Whom it acted for.
The principal that used it.
available, reserved or encumbered.
The ledger account on the other side, where there is one.
debit or credit.
The posting’s kind.
The operation.
The posting’s sequence number.
held, completed, returned, reversed or opening.
The opening balances.
object
Available.
Encumbered.
Reserved.
The period’s end.
The last.
Examplegenerated
{ "account": "example", "asset": "example", "closed": true, "closing": { "available": "example", "encumbered": "example", "reserved": "example" }, "from": 1, "from_seq": 1, "movements": [ { "account": "example", "amount": "example", "asset": "example", "at": 1, "authorities": [ { "credential": "example", "grant": "example", "kind": "example", "on_behalf_of": "example", "principal": "example" } ], "balance": "example", "counterparty": "example", "direction": "example", "kind": "example", "operation": "example", "reference": "example", "seq": 1, "status": "example" } ], "opening": { "available": "example", "encumbered": "example", "reserved": "example" }, "to": 1, "to_seq": 1}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