---
title: "List batches for an orchestration address"
method: GET
path: "/v2/users/{userId}/orchestration-addresses/{orchestrationAddressId}/batches"
tags: ["Orchestration Address"]
---

# List batches for an orchestration address

`GET /v2/users/{userId}/orchestration-addresses/{orchestrationAddressId}/batches`

## Request

- Base URL: `https://production.hifibridge.com`
- URL: `https://production.hifibridge.com/v2/users/{userId}/orchestration-addresses/{orchestrationAddressId}/batches`
- Auth: HTTP bearer

List batches produced from this address's deposits. Each batch carries
the IDs of the deposits it rolled up and (once the worker runs) the
`offrampTransactionId` of the produced offramp.

To get full offramp details, call `GET /v2/offramps/{offrampTransactionId}`.

## Path parameters

- `userId` string, required
- `orchestrationAddressId` string, uuid, required

## Query parameters

- `status` 'PENDING' | 'PROCESSING' | 'COMPLETED' | 'FAILED'
- `createdAfter` string, date-time
- `createdBefore` string, date-time
- `limit` integer

## Response `200`

A paginated list of batches for the named orchestration address.

- OrchestrationBatchAllRecordsObject: Paginated list of batches for an orchestration address.
  - `count` integer
  - `records` OrchestrationBatchObject[]
    - `id` string, uuid
    - `orchestrationAddressId` string, uuid
    - `totalAmount` string: Sum of the included deposits' amounts, in the source `currency`.
    - `currency` 'usdc' | 'usdt'
    - `status` 'PENDING' | 'PROCESSING' | 'COMPLETED' | 'FAILED': Batch lifecycle. * `PENDING` — created; the worker has not yet picked it up. * `PROCESSING` — the linked offramp has been created and is in flight. * `COMPLETED` — the linked offramp reached `COMPLETED`. * `FAILED` — terminal failure. See `failureReason`.
    - `failureReason` 'ADDRESS_NOT_ACTIVE' | 'NOT_INITIATED' | 'QUOTE_FAILED' | 'CRYPTO_FAILED' | 'FIAT_FAILED' | 'EXPIRED' | 'REJECTED' | 'CANCELLED': Populated when `status=FAILED`. * `ADDRESS_NOT_ACTIVE` — the address was deactivated before the worker created the offramp. The only input condition that terminally fails a batch. * All other values are terminal statuses surfaced from the linked offramp transaction (e.g. lost product access → `NOT_INITIATED`, a rejected AML review → a terminal status). Internal inconsistencies (missing address, payout account lost its rail, a processor-validation bug) do **not** appear here — the worker pauses the batch (leaves it `PENDING`) and alerts ops instead of marking it `FAILED`.
    - `createdAt` string, date-time
    - `updatedAt` string, date-time
    - `depositIds` string[]: IDs of all deposits included in this batch.
    - `offrampTransactionId` string, uuid, nullable: ID of the offramp transaction produced from this batch. `null` while `status=PENDING` (the worker has not yet created the offramp). Call `GET /v2/offramps/{transferId}` for full offramp details.
  - `nextCursor` string, date-time, nullable: Pass this value as `createdBefore` to retrieve the next page. `null` means no next page is advertised.

## Other responses

- `401`: Unauthorized
- `404`: Resource not found
- `500`: Internal Server Error

---

[API](https://skmtc.dev/hifi/apis/hifi-api.md) - [All operations](https://skmtc.dev/hifi/apis/hifi-api/llms.txt) - [OpenAPI document](https://skmtc.dev/hifi/apis/hifi-api/revisions/319fa6bd5bc6?raw)
