---
title: "List Transactions"
method: GET
path: "/v0/transactions"
tags: ["Transactions"]
---

# List Transactions

`GET /v0/transactions`

<Callout intent="warning">
  The endpoints exposed here are currently in **Beta**! As we continue to build our initial offering, these endpoints may implement breaking changes. Be sure to check back for our change log regularly as a precaution.
</Callout>

List your settled transactions, newest first, with cursor pagination. Each entry summarizes the `source` and `recipient`, the per-currency totals each side moved, and the `type` (`mint`, `redeem`, `bridge`, `reward`, `return`). `type` and `status` are open enums; tolerate unknown values. Fetch one transaction's legs with [Get a Transaction by ID](/api/endpoints/transactions/getbyid).

Narrow the list with `type`, `sourceChain`, `recipientChain`, `isInstantSettlement`, and an `initiatedAt` range; every filter you send must hold (see [Filtering list endpoints](/api#filtering-list-endpoints)). The chain filters match the `source` and `recipient` the response reports, so a mint funded by wire matches on `recipientChain` only.

## Query parameters

- `cursor` string
- `limit` integer
- `initiatedAt.gt` string, date-time
- `initiatedAt.gte` string, date-time
- `initiatedAt.lt` string, date-time
- `initiatedAt.lte` string, date-time
- `isInstantSettlement` 'true' | 'false' — Return only transactions whose settlement path matches. `true` is the instant-settlement path; `false` is standard settlement, which includes movement types that have no settlement path of their own, such as rewards and returns.
- `recipientChain` V0TransactionsGetParametersRecipientChainSchemaItems[]
- `sourceChain` V0TransactionsGetParametersSourceChainSchemaItems[]
- `type` V0TransactionsGetParametersTypeSchemaItems[]

## Headers

- `Authorization` string, required

## Response `200`

OK

- TransactionsListResponse200
  - `data` V0TransactionsGetResponsesContentApplicationJsonSchemaDataItems[], required — Page of transactions, newest first (by initiated time, tie-broken by id).
    - `id` string, uuid, required — Stable UUID identifying this transaction; pass to the detail endpoint to fetch legs.
    - `initiatedAt` string, date-time, required — ISO-8601 timestamp of the first leg.
    - `isInstantSettlement` boolean, required — True if this transaction used Agora's instant-settlement path rather than standard settlement.
    - `legCount` integer, required — Number of customer-facing legs in this transaction.
    - `recipient` union, required — The counterparty receiving value, with the totals it received.
      - V0TransactionsGetResponsesContentApplicationJsonSchemaDataItemsRecipient0
        - `kind` 'bank', required — Discriminator: the counterparty is a bank account.
        - `accountId` string, uuid, nullable, required — UUID of the customer account this counterparty maps to (same id as `/v0/accounts`), or null when the address is not a known account (e.g. the Agora side). Bank counterparties currently always return null; bank-to-account linkage is not derived yet.
        - `accountNumber` string, nullable, required — Bank account number. Null when unknown.
        - `bankName` string, nullable, required — Name of the financial institution, when known.
        - `name` string, nullable, required — Display label for the counterparty. The Agora side of a leg is labelled `"Agora"`.
        - `amounts` V0TransactionsGetResponsesContentApplicationJsonSchemaDataItemsRecipientOneOf0AmountsItems[], required — Per-currency totals moved on this side of the transaction, one entry per currency.
          - `amount` string, required — Decimal amount as a string (avoids floating-point precision loss).
          - `currency` string, required — Currency code, e.g. `usd`, `ausd`, `usdc`.
      - V0TransactionsGetResponsesContentApplicationJsonSchemaDataItemsRecipient1
        - `kind` 'wallet', required — Discriminator: the counterparty is a blockchain address.
        - `accountId` string, uuid, nullable, required — UUID of the customer account this counterparty maps to (same id as `/v0/accounts`), or null when the address is not a known account (e.g. the Agora side). Bank counterparties currently always return null; bank-to-account linkage is not derived yet.
        - `address` string, nullable, required — On-chain address, EIP-55 checksummed for EVM. Public on-chain data, returned in full. Null when unknown.
        - `chain` string, required — Chain the address is on, as the public-API network id (e.g. `ethereum`, `base`). Non-public/historical chains fall back to the raw chain id. Treated as an open enum; tolerate unknown values.
        - `name` string, nullable, required — Display label for the counterparty. The Agora side of a leg is labelled `"Agora"`.
        - `amounts` V0TransactionsGetResponsesContentApplicationJsonSchemaDataItemsRecipientOneOf1AmountsItems[], required — Per-currency totals moved on this side of the transaction, one entry per currency.
          - `amount` string, required — Decimal amount as a string (avoids floating-point precision loss).
          - `currency` string, required — Currency code, e.g. `usd`, `ausd`, `usdc`.
    - `settledAt` string, date-time, nullable, required — ISO-8601 timestamp when the transaction settled. Null until settled.
    - `source` union, required — The counterparty sending value, with the totals it sent.
      - V0TransactionsGetResponsesContentApplicationJsonSchemaDataItemsSource0
        - `kind` 'bank', required — Discriminator: the counterparty is a bank account.
        - `accountId` string, uuid, nullable, required — UUID of the customer account this counterparty maps to (same id as `/v0/accounts`), or null when the address is not a known account (e.g. the Agora side). Bank counterparties currently always return null; bank-to-account linkage is not derived yet.
        - `accountNumber` string, nullable, required — Bank account number. Null when unknown.
        - `bankName` string, nullable, required — Name of the financial institution, when known.
        - `name` string, nullable, required — Display label for the counterparty. The Agora side of a leg is labelled `"Agora"`.
        - `amounts` V0TransactionsGetResponsesContentApplicationJsonSchemaDataItemsSourceOneOf0AmountsItems[], required — Per-currency totals moved on this side of the transaction, one entry per currency.
          - `amount` string, required — Decimal amount as a string (avoids floating-point precision loss).
          - `currency` string, required — Currency code, e.g. `usd`, `ausd`, `usdc`.
      - V0TransactionsGetResponsesContentApplicationJsonSchemaDataItemsSource1
        - `kind` 'wallet', required — Discriminator: the counterparty is a blockchain address.
        - `accountId` string, uuid, nullable, required — UUID of the customer account this counterparty maps to (same id as `/v0/accounts`), or null when the address is not a known account (e.g. the Agora side). Bank counterparties currently always return null; bank-to-account linkage is not derived yet.
        - `address` string, nullable, required — On-chain address, EIP-55 checksummed for EVM. Public on-chain data, returned in full. Null when unknown.
        - `chain` string, required — Chain the address is on, as the public-API network id (e.g. `ethereum`, `base`). Non-public/historical chains fall back to the raw chain id. Treated as an open enum; tolerate unknown values.
        - `name` string, nullable, required — Display label for the counterparty. The Agora side of a leg is labelled `"Agora"`.
        - `amounts` V0TransactionsGetResponsesContentApplicationJsonSchemaDataItemsSourceOneOf1AmountsItems[], required — Per-currency totals moved on this side of the transaction, one entry per currency.
          - `amount` string, required — Decimal amount as a string (avoids floating-point precision loss).
          - `currency` string, required — Currency code, e.g. `usd`, `ausd`, `usdc`.
    - `status` string, required — Lifecycle status. v1 emits only `"settled"`. This is an open, extensible enum; future values (e.g. `pending`) may appear, so clients must tolerate unknown values.
    - `type` string, required — Customer-facing transaction type: `mint`, `redeem`, `bridge`, `reward`, or `return`. Treated as an open enum; tolerate unknown values.
  - `nextCursor` string, nullable, required — Opaque cursor for the next page. Pass back verbatim as the `cursor` query param; null when no more results.

## Other responses

- `400` — One or more request parameters are invalid.
- `401` — Authentication is required.
- `403` — The account is not eligible for the requested route direction.
- `404` — Resource not found.
- `429` — Too many requests.
- `500` — An unexpected error occurred.

---

[API](https://skmtc.net/agora/apis/endpoints.md) · [All operations](https://skmtc.net/agora/apis/endpoints/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/agora/endpoints/revisions/8525bfff7634/schema)
