# List Address Book Entries

Your tenant's address book, newest first, filtered as you ask.

## Overview

- Every filter is optional and they add up. `status` is the entry's status now: an entry whose cooling period has ended counts as `active`. `chain` matches the entries of that chain exactly — not those for every chain (`chain` `null`). `tag` matches one of an entry's tags. `address`: an EVM address in any case is compared with its checksum.
- Up to `limit` entries (1–200, default 50) in `entries`, and `nextCursor`: send it as `cursor` for the next page; `null` on the last one. The history of an entry is in [Get an Entry](https://docs.aureahub.com/docs/address-book-entry-get.md).
- A query parameter that is not one of these answers `400` `ADDRESS_BOOK_REQUEST_INVALID`. For the roles that read the book ([Address Book](https://docs.aureahub.com/docs/guide-address-book.md)).

## Endpoint

### `GET /v1/address-book/entries`

Authentication: bearer token required.

Your tenant's address book entries, newest first.

**Query parameters**

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `status` | string | no | `pending_approval`, `cooling`, `active`, `rejected` or `removed` |
| `kind` | string | no | `internal`, `external` or `contract` |
| `family` | string | no | `evm` or `solana` |
| `network` | string | no | `mainnet` or `testnet` |
| `chain` | string | no | A chain's slug, e.g. `base` |
| `tag` | string | no | One tag |
| `accountId` | string (uuid) | no | The entries serving that account's wallets |
| `address` | string | no | An address, up to 100 characters |
| `proven` | boolean | no | Proven by its owner, or not |
| `cursor` | string (uuid) | no | The previous page's `nextCursor` |
| `limit` | integer | no | 1–200, default 50 |

**Responses**

`200` OK

```json
{
  "entries": [
    {
      "id": "8f3c2a71-5d4e-4b9a-a6c1-2e7f9d0b3c58",
      "accountId": null,
      "kind": "external",
      "family": "evm",
      "network": "mainnet",
      "chain": "base",
      "chainId": null,
      "address": "0x5aAeb6053F3E94C9b9A09f33669435E7Ef1BeAed",
      "walletId": null,
      "label": "Supplier payouts",
      "tags": ["suppliers"],
      "customerRefId": "SUP-0042",
      "status": "active",
      "version": 1,
      "requestedBy": "0d2f6b8a-4c1e-4a93-b7d5-2e9f1c3a8b60",
      "requestedScope": "tenant",
      "requestedAt": "2026-10-08T08:00:12.000Z",
      "approval": {
        "approvedBy": null,
        "approvedScope": "tenant",
        "approvedAt": "2026-10-08T08:10:41.000Z",
        "requiredApprovals": 0
      },
      "coolingPeriodSeconds": 86400,
      "activeAt": "2026-10-09T08:10:41.000Z",
      "coolingSecondsLeft": null,
      "proof": { "proven": true, "method": "eip191", "provenAt": "2026-10-08T08:10:41.000Z" },
      "rejectedBy": null,
      "rejectedAt": null,
      "removedBy": null,
      "removedAt": null,
      "createdAt": "2026-10-08T08:00:12.000Z",
      "updatedAt": "2026-10-08T08:30:00.000Z"
    }
  ],
  "nextCursor": null
}
```

`400` Invalid

```json
{
  "statusCode": 400,
  "error": "BadRequestError",
  "message": "Invalid request",
  "details": { "code": "ADDRESS_BOOK_REQUEST_INVALID", "errors": ["(body): Unrecognized key(s) in object: 'state'"] }
}
```

**Example request**

```bash
curl "https://api.aureahub.com/v1/address-book/entries?status=active&kind=external&limit=50" \
  -H "Authorization: Bearer $TOKEN"
```

---

Web version: https://docs.aureahub.com/#address-book-entries-list
