# List Operations

> Coming soon, upon request — this feature is turned on for your tenant by the Aurea team. [Contact us](https://www.aureahub.com/contact)

The operations the money routes started, newest first, with their public state.

## Overview

- **Empty unless your tenant has operation records** [Coming soon, upon request](https://docs.aureahub.com/docs/feature-availability.md) ([Operations & Fees](https://docs.aureahub.com/docs/guide-operations.md)): otherwise every page is `{ "operations": [], "nextCursor": null }`.
- A user reads their own operations, whatever `userId` says; the tenant roles that read the tenant's transactions read every operation of the tenant, and can narrow with `userId`.
- Filters: `state`, `type`, `chain`, `walletId`, `userId`, `from` (created at or after) and `to` (created before; `400` `` `from` must be before `to` `` otherwise). Page with `limit` (1–200, default 50) and `cursor`, the previous page's `nextCursor` (`null` on the last page).
- Institutional tenants: `state` `PENDING_AUTHORIZATION` finds the operations waiting for their approvers (`subState` `awaiting_approval`) or for your [institution callback](https://docs.aureahub.com/docs/guide-institution-callback.md) (`awaiting_callback`).
- Each operation without its history: [Get an Operation](https://docs.aureahub.com/docs/operation-get.md) adds `events`. `tokenizedOperationId`: the tokenized assets operation it carries out, or `null`. `sourceAccountId`: the [account](https://docs.aureahub.com/docs/guide-accounts.md) of its wallet — or `null` without one.

## Endpoint

### `GET /v1/operations`

Authentication: bearer token required.

The caller's operations — or the tenant's, for the roles that read them — newest first.

**Query parameters**

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `state` | string | no | One state, e.g. `CONFIRMING` |
| `type` | string | no | One type, e.g. `TRANSFER` |
| `chain` | string | no | A chain slug, e.g. `base` |
| `walletId` | string | no | One wallet |
| `userId` | string | no | One user's (tenant readers only) |
| `from` | string (date-time) | no | Created at or after |
| `to` | string (date-time) | no | Created before |
| `cursor` | string | no | The previous page's `nextCursor` |
| `limit` | integer | no | 1–200, default 50 |

**Responses**

`200` Recording off

```json
{
  "operations": [],
  "nextCursor": null
}
```

`200` Recording on

```json
{
  "operations": [
    {
      "id": "1d7a3c52-8e4b-4f19-a0c6-2b9e7d5f3a18",
      "type": "TRANSFER",
      "state": "CONFIRMING",
      "subState": "awaiting_confirmation",
      "failureReason": null,
      "legacyStatus": "pending",
      "origin": "transactions.create",
      "userId": "5d2c1b0a-9e8f-4a7b-8c6d-5e4f3a2b1c0d",
      "walletId": "7c1e9b24-3f5a-4d8e-9b6c-1a2f3e4d5c6b",
      "chain": "base",
      "chainId": 8453,
      "isTestnet": false,
      "asset": "native",
      "amount": "1000000000000000000",
      "destination": "0x8ba1f109551bD432803012645Ac136ddd64DBA72",
      "externalTxId": null,
      "idempotencyKey": "order-7781",
      "transactionId": "4b2e6f81-0c3d-4a5e-9f7b-8d1c2e3f4a5b",
      "preparedTxId": "9e3d1a7c-5b2f-4c68-8a0e-3f6b1d9c4e27",
      "providerRef": null,
      "tokenizedOperationId": null,
      "txHashes": ["0x5c9e1b7a3d2f4e6c8b0a9d1e3f5c7b9a2d4e6f8a0c1b3d5e7f9a1c3e5b7d9f1a"],
      "createdAt": "2026-10-06T12:01:44.120Z",
      "updatedAt": "2026-10-06T12:02:03.587Z",
      "finishedAt": null,
      "sourceAccountId": "5d2c1b0a-9e8f-4a7b-8c6d-5e4f3a2b1c0d"
    }
  ],
  "nextCursor": null
}
```

`400` Window

```json
{
  "statusCode": 400,
  "error": "BadRequestError",
  "message": "`from` must be before `to`"
}
```

---

Web version: https://docs.aureahub.com/#operations-list
