# List Gas Station Top-Ups

Your tenant's top-ups and skips, newest first.

## Overview

- Every top-up the Gas Station made of one of your wallets — under your policies or Aurea's defaults, whoever pays —, and every skip: a wallet below its threshold that was not topped up, with why. Nothing is recorded while your tenant is not in `station` or the Gas Station is not running ([Gas Station Settings](https://docs.aureahub.com/docs/gas-station-settings.md)).
- `status` and `walletId` narrow it. Up to `limit` (1–200, default 50) in `topUps`, and `nextCursor` to send as `cursor` for the next page — `null` on the last. A cursor the route did not give, or any other parameter (`tenantId` included), answers `400` `GAS_STATION_INVALID`.
- For `owner`, `tenantadmin`, `non_signing_admin`, `signer`, `approver`, `editor`, `viewer` and `auditor`, on their own tenant.

## A Top-Up

| Field | Meaning |
| --- | --- |
| status | `planned` → `signed` → `sent` → `confirmed`, or `failed`; `skipped` ([Gas Station](https://docs.aureahub.com/docs/guide-gas-station.md) › A Top-Up's Statuses). |
| skipReason | A skip's reason — `day_cap_reached`, `gas_price_above_max`, `no_funding_wallet`, `funding_unreadable`, `funding_insufficient` —, else `null`. |
| failureCode | Why a failed top-up failed, e.g. `REVERTED`, `NONCE_TAKEN`, `NOT_SIGNED`; else `null`. |
| policyId | The policy that covered the wallet: yours, or one of Aurea's defaults (`platformDefaults` in [List Policies](https://docs.aureahub.com/docs/gas-station-policies.md)). |
| fundingWalletId | The funding wallet that pays it — or would have, for a skip; `null` when there is none (`no_funding_wallet`). Under Aurea's default, Aurea's own. |
| walletId | Your wallet topped up. `chain`, `chainId`, `isTestnet` and `asset` (`native` or the token's address) are the policy's. |
| balanceBefore | The wallet's balance of the asset when the top-up was planned — for a skip, at its last occurrence. |
| amount | What the top-up sends — for a skip, what it would have sent (`0` for `day_cap_reached`). |
| gasPriceWei | The network's gas price read when it was planned — for a skip, at its last occurrence. |
| txHash | The transaction's hash, once signed; else `null`. |
| operationId | Its `GAS_TOPUP` operation ([Get an Operation](https://docs.aureahub.com/docs/operation-get.md)), where your tenant has operation records; else `null`. |
| occurrences | `1`, or how many passes found the same skip. |
| createdAt, lastSeenAt | When it was recorded; its last change, or a skip's last occurrence. |
| sentAt, finishedAt | When the node took it; when it ended — for a skip, when it was first recorded. |

## Endpoint

### `GET /v1/gas-station/top-ups`

Authentication: bearer token required.

Your tenant's Gas Station top-ups and skips, newest first.

**Query parameters**

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `status` | string | no | `planned`, `signed`, `sent`, `confirmed`, `failed` or `skipped` |
| `walletId` | string (uuid) | no | One of your wallets |
| `cursor` | string | no | The previous page's `nextCursor` |
| `limit` | integer | no | 1–200, default 50 |

**Responses**

`200` OK

```json
{
  "topUps": [
    {
      "id": "6e2b9d41-7c3a-4f58-b0e1-9a5d2c8f4b17",
      "policyId": "8c3e1f5a-2b7d-4e90-a1c6-3d5f7b9e2a14",
      "fundingWalletId": "2d9f4a6c-8e1b-4c73-a5d0-7b3e9f1c6a28",
      "walletId": "7c1e9b24-3f5a-4d8e-9b6c-1a2f3e4d5c6b",
      "chain": "base",
      "chainId": 8453,
      "isTestnet": false,
      "asset": "native",
      "status": "confirmed",
      "skipReason": null,
      "failureCode": null,
      "balanceBefore": "150000000000000",
      "amount": "850000000000000",
      "gasPriceWei": "12000000",
      "txHash": "0x372b426d3a84766fad5f789869918d2505fb2ea56d5c3bbd58ab1aace8488f2b",
      "operationId": "3f8a1c6e-9d2b-4e70-b5a4-0c7e2d9f1b63",
      "occurrences": 1,
      "createdAt": "2026-10-14T12:00:04.211Z",
      "lastSeenAt": "2026-10-14T12:01:05.876Z",
      "sentAt": "2026-10-14T12:00:04.903Z",
      "finishedAt": "2026-10-14T12:01:05.876Z"
    },
    {
      "id": "c4a7e2f9-1b5d-4a83-9e60-2f8b4d1c7a95",
      "policyId": "8c3e1f5a-2b7d-4e90-a1c6-3d5f7b9e2a14",
      "fundingWalletId": "2d9f4a6c-8e1b-4c73-a5d0-7b3e9f1c6a28",
      "walletId": "0b5d8f2a-6c4e-4d19-8a7b-3e1f9c2d5a60",
      "chain": "base",
      "chainId": 8453,
      "isTestnet": false,
      "asset": "native",
      "status": "skipped",
      "skipReason": "funding_insufficient",
      "failureCode": null,
      "balanceBefore": "90000000000000",
      "amount": "910000000000000",
      "gasPriceWei": "11000000",
      "txHash": null,
      "operationId": null,
      "occurrences": 4,
      "createdAt": "2026-10-14T11:57:02.540Z",
      "lastSeenAt": "2026-10-14T12:00:04.388Z",
      "sentAt": null,
      "finishedAt": "2026-10-14T11:57:02.540Z"
    }
  ],
  "nextCursor": "MjAyNi0xMC0xNFQxMTo1NzowMi41NDBafGM0YTdlMmY5LTFiNWQtNGE4My05ZTYwLTJmOGI0ZDFjN2E5NQ"
}
```

`400` Cursor

```json
{
  "statusCode": 400,
  "error": "BadRequestError",
  "message": "Invalid request",
  "details": {
    "code": "GAS_STATION_INVALID",
    "errors": ["cursor: is not a cursor this route gave"]
  }
}
```

**Example request**

```bash
curl "https://api.aureahub.com/v1/gas-station/top-ups?status=failed&limit=20" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
```

## By Tenant Id

The same, with your tenant's id, for the same roles; another tenant's id answers `403`.

### `GET /v1/admin/tenants/{id}/gas-station/top-ups`

Authentication: bearer token required.

A tenant's Gas Station top-ups and skips, newest first.

**Path parameters**

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `id` | string (uuid) | yes | Your tenant's id |

**Query parameters**

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `status` | string | no | `planned`, `signed`, `sent`, `confirmed`, `failed` or `skipped` |
| `walletId` | string (uuid) | no | One of your wallets |
| `cursor` | string | no | The previous page's `nextCursor` |
| `limit` | integer | no | 1–200, default 50 |

**Responses**

`403` Another tenant

```json
{ "statusCode": 403, "error": "ForbiddenError", "message": "Admin access required or you can only access your own tenant." }
```

---

Web version: https://docs.aureahub.com/#gas-station-top-ups
