---
search:
  tags:
    - Portfolio
    - GET
seo:
  description: >-
    Returns the caller's fills (executions of their own orders), newest first.
    Reference for the GET /portfolio/fills endpoint in the REST API API.
sidebar:
  badge: GET
  label: List Fills
title: List Fills
type: openapi-operation
---
Returns the caller's fills (executions of their own orders), newest first.

Requires an accepted credential with read access.

Filter results with:

- `ticker` for one market;
- `executed_after` and `executed_before` for a time window; and
- optional `order_id` for one order.

Follow `next_page_url` until it is null to retrieve every page.

### Endpoint

- Method and path: `GET /portfolio/fills`
- Operation ID: `getFills`
- API reference: [GET /portfolio/fills](/api-reference/portfolio/getfills)

#### Authorization

- Accepted credentials: `UDX-Access-Key` header and `UDX-Access-Timestamp` header and `UDX-Access-Signature` header; or Bearer token in `Authorization`
- Details: [Authentication](/authentication)

#### Parameters

- `UDX-Version` (`header`) — Dated API version (YYYY-MM-DD). Omit to use the oldest supported version. An unknown version returns `400`.
- `ticker` (`query`) — Filter by market ticker.
- `order_id` (`query`) — Filter to fills of a single order.
- `executed_after` (`query`) — Only return fills executed after this instant.
- `executed_before` (`query`) — Only return fills executed before this instant.
- `limit` (`query`) — Maximum number of items to return in one page. Defaults to 10 when omitted; must be an integer from 1 to 100. A value outside that range is rejected with 400 rather than silently clamped. A returned next_page_url preserves the effective value.
- `page` (`query`) — Opaque token identifying the requested page. Clients should not construct or extract this value; follow next_page_url from the previous response unchanged instead.
- `sort` (`query`) — Field to sort fills by. Defaults to executed_at (execution time). The trade_id is appended as a tie-breaker.
- `order` (`query`) — Sort direction. Defaults to desc. Applies to the default sort field when sort is omitted. Nulls sort last in both directions.

#### Responses

- `200` — A page of the caller's fills.
- `400` — The request doesn't conform to this spec.
- `401` — No valid credential was provided.
- `403` — The credential lacks the `read` scope.
- `422` — Too many fills match the time range. Narrow `executed_after` and `executed_before`.
- `429` — The member rate limit was exceeded. Wait for `Retry-After`.
- `500` — Something went wrong on UDX's side.
- `503` — Request admission or account setup is unavailable. Retry later.
