# Ask for a Report

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

A file of your tenant's movements, balances, addresses or approvals, made in the background.

## Overview

- **Reports are on request** [Coming soon, upon request](https://docs.aureahub.com/docs/feature-availability.md); until your tenant has them, `503` `REPORTS_OFF` ([Reports](https://docs.aureahub.com/docs/guide-reports.md)).
- `type`: `movements`, `balances`, `addresses` or `approvals` — the rows and columns of each are in the guide. `format`: `csv` or `json`.
- `filters`, all optional: `walletIds` and `accountIds` (UUIDs, up to 100 each), `chains` (up to 20), and, for movements and approvals only, `from` and `to` (ISO 8601). The report keeps them as it applies them — ids in lower case, sorted.
- `202` with the report, `status` `queued`. Read it with [Get a Report](https://docs.aureahub.com/docs/report-get.md) until it is `ready`.
- At most 5 reports of your tenant waiting at once (by default): `429` `REPORTS_TOO_MANY`. `400` `REPORT_FILTER_INVALID` for `from`/`to` on balances or addresses, or a `from` not before `to`.
- For `owner`, `tenantadmin`, `non_signing_admin`, `auditor`, `security_admin` and `security_auditor`, on their own tenant. Written to your audit trail as `report.requested`.

## Endpoint

### `POST /v1/admin/tenants/{id}/reports`

Authentication: bearer token required.

Queues a report of the tenant's movements, balances, addresses or approvals, in CSV or JSON.

**Path parameters**

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

**Request body**

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `type` | string | yes | `movements`, `balances`, `addresses` or `approvals` |
| `format` | string | yes | `csv` or `json` |
| `filters` | object | no | `from`, `to` (movements, approvals), `walletIds`, `accountIds`, `chains` |

**Responses**

`202` Queued

```json
{
  "id": "4c8e2a19-7d3b-4f60-9a1e-5b2d8c6f0e73",
  "type": "movements",
  "format": "csv",
  "filters": { "from": "2026-10-01T00:00:00.000Z", "to": "2026-10-13T00:00:00.000Z", "chains": ["base"] },
  "status": "queued",
  "failureCode": null,
  "rowCount": null,
  "byteSize": null,
  "sha256": null,
  "requestedBy": "6a1c9e3f-2b7d-4f50-8e4a-0c5d3b9f7e12",
  "createdAt": "2026-10-13T11:00:00.000Z",
  "startedAt": null,
  "finishedAt": null,
  "expiresAt": null,
  "downloads": 0,
  "download": null
}
```

`503` Switched off

```json
{
  "statusCode": 503,
  "error": "ServiceUnavailableError",
  "message": "Reports are switched off on this platform",
  "details": { "code": "REPORTS_OFF" }
}
```

`429` Too many waiting

```json
{
  "statusCode": 429,
  "error": "AppError",
  "message": "Too many reports are waiting to be made",
  "details": { "code": "REPORTS_TOO_MANY" }
}
```

**Example request**

```bash
curl -X POST https://api.aureahub.com/v1/admin/tenants/$TENANT_ID/reports \
  -H "Authorization: Bearer $TENANT_ADMIN_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ "type": "movements", "format": "csv", "filters": { "from": "2026-10-01T00:00:00Z", "to": "2026-10-13T00:00:00Z", "chains": ["base"] } }'
```

---

Web version: https://docs.aureahub.com/#report-request
