# List Sub-Ledger Entries

Every movement of the omnibus's sub-ledger, newest first: openings, deposits, withdrawals, their reversals, the house's deposits, the fees and Aurea's adjustments.

## Overview

- Each entry: `id`, `chainId`, `asset`, `accountId` — the customer, or `null` for the house —, `kind`, `delta` (signed: a credit positive, a debit negative, in the asset's smallest unit), `sourceKind` and `sourceId` — what posted it: `opening`, `inbound_transfer` (an incoming transfer), `omnibus_transfer` (a sweep or a withdrawal, by its id) or `adjustment` (Aurea's adjustment, by its id) —, and `createdAt`.
- `kind`: `opening`, `deposit`, `deposit_reversal`, `withdrawal`, `withdrawal_reversal` — a customer's —; `house_opening`, `house_deposit`, `house_deposit_reversal`, `fee` and `adjustment` — the house's: an `adjustment` is Aurea closing a shortfall the reconciliation found on the house's side, with no customer's claim touched. When each is posted: [Account Structures](https://docs.aureahub.com/docs/guide-account-structures.md) › The Sub-Ledger.
- **Filters**: `accountId` (one customer's entries), `chainId`, `asset`. Up to `limit` (1–200, default 50); `nextCursor` to send as `cursor` for the next page — `null` on the last. A cursor the route did not give answers `400` `STRUCTURE_REQUEST_INVALID` (`cursor: not one this API gave`), as does any other parameter.
- **Empty until the omnibus processing comes**: `{ "entries": [], "nextCursor": null }`. Entries are never changed or removed.
- For `owner`, `tenantadmin`, `non_signing_admin`, `signer`, `approver`, `editor`, `viewer` and `auditor`, on their own tenant, with an access token.

## Endpoint

### `GET /v1/structures/{network}/ledger/entries`

Authentication: bearer token required.

The sub-ledger's entries, newest first.

**Path parameters**

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `network` | string | yes | `mainnet` or `testnet` |

**Query parameters**

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `accountId` | string (uuid) | no | One customer's collection account |
| `chainId` | integer | no | One chain, e.g. `8453` |
| `asset` | string | no | `native`, or a token's contract address |
| `cursor` | string | no | The previous page's `nextCursor` |
| `limit` | integer | no | 1–200, default 50 |

**Responses**

`200` OK

```json
{
  "entries": [
    {
      "id": "af8ab94d-1961-4fcb-a586-5c4eb32ef90d",
      "chainId": 8453,
      "asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
      "accountId": "f22d2b25-338e-444c-93ef-71693565f346",
      "kind": "withdrawal",
      "delta": "-125000000",
      "sourceKind": "omnibus_transfer",
      "sourceId": "482892fb-a38c-4abd-90cd-ea8755233426",
      "createdAt": "2026-10-14T06:41:12.330Z"
    },
    {
      "id": "040c7f6c-84f9-4329-8d16-1826b3f852ad",
      "chainId": 8453,
      "asset": "native",
      "accountId": null,
      "kind": "fee",
      "delta": "-1843200000000",
      "sourceKind": "omnibus_transfer",
      "sourceId": "3d8f139b-71b6-4ca0-8914-c4b8c1b4f898",
      "createdAt": "2026-10-13T22:01:04.527Z"
    },
    {
      "id": "4ed0b1e1-11c1-45f1-9111-372894522a0a",
      "chainId": 8453,
      "asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
      "accountId": "3cb0a94e-6358-445d-99a2-021749a80e0a",
      "kind": "deposit",
      "delta": "310000000",
      "sourceKind": "inbound_transfer",
      "sourceId": "8b43dfc5-9f49-498c-839b-6360e76a340b",
      "createdAt": "2026-10-13T16:24:51.208Z"
    },
    {
      "id": "484337f9-b389-418c-8ca6-ec9b41ab900f",
      "chainId": 8453,
      "asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
      "accountId": "f22d2b25-338e-444c-93ef-71693565f346",
      "kind": "opening",
      "delta": "200500000",
      "sourceKind": "opening",
      "sourceId": "b87f9c73-0b35-4ee4-b0eb-28ba40c8cb2d",
      "createdAt": "2026-10-13T09:30:02.664Z"
    }
  ],
  "nextCursor": "MjAyNi0xMC0xM1QwOTozMDowMi42NjRafDQ4NDMzN2Y5LWIzODktNDE4Yy04Y2E2LWVjOWI0MWFiOTAwZg"
}
```

`400` Cursor

```json
{
  "statusCode": 400,
  "error": "BadRequestError",
  "message": "Invalid request",
  "details": {
    "code": "STRUCTURE_REQUEST_INVALID",
    "errors": ["cursor: not one this API gave"]
  }
}
```

**Example request**

```bash
curl "https://api.aureahub.com/v1/structures/mainnet/ledger/entries?accountId=f22d2b25-338e-444c-93ef-71693565f346&limit=20" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
```

---

Web version: https://docs.aureahub.com/#structures-ledger-entries
