Skip to content
UDX
2026-07-15

List Fills

Returns the caller’s fills (executions of their own orders) in execution-time order. Without an account_id filter, the response covers every account you can read, and an account is included only after its setup and the setup of your access to it have both completed.

GET/portfolio/fills
Authorization
Authorization
UDX-Access-KeyAPI key · headerrequired

Opaque API key ID.

UDX-Access-TimestampAPI key · headerrequired

Unix time in milliseconds, within 30 seconds of server time.

UDX-Access-SignatureAPI key · headerrequired

Standard-base64 RSA-PSS/SHA-256 signature with a 32-byte salt.

or
AuthorizationBearer token (JWT) · headerrequired

Bearer token for an active signed-in UDX user.

Header parameters
Header parameters
UDX-Versionstring

Dated API version (YYYY-MM-DD).

min length 10 · max length 10
Query parameters
tickerTicker

Filter by market ticker.

min length 1 · max length 128
order_idEntityId

Filter to fills of a single order.

min length 1
account_idEntityId

Filter to an account the caller can read.

min length 1
client_order_idClientId

Filter by the client-assigned order identifier.

parent_order_idEntityId

Filter by the exchange-assigned parent order identifier.

min length 1
execution_idEntityId[]

Filter by exchange-assigned execution identifiers. Repeat this parameter to select multiple executions.

executed_on_or_afterstring<date>

Return fills whose exchange-assigned execution trading date is on or after this date (inclusive).

executed_on_or_beforestring<date>

Return fills whose exchange-assigned execution trading date is on or before this date (inclusive).

executed_at_or_afterstring<date-time>

Return fills executed at or after this instant.

max length 40
executed_at_or_beforestring<date-time>

Return fills executed at or before this instant.

max length 40
limitinteger

Maximum number of items to return in one page.

min 1 · max 100 · default: 10
pagestring

Opaque token identifying the requested page.

max length 512
orderstring

Sort direction. Applies to the default sort field when sort is omitted. Nulls sort last in both directions.

default: "desc"
Allowed:ascdesc
Responses
200A page of the caller's fills.
fillsFill[]required

One page of fills.

max items 100
Show properties
Array of Fill
trade_idstringrequired

Exchange-assigned trade identifier.

max length 64
order_idEntityIdrequired

An exchange-assigned identifier. Treat it as an opaque, stable key with no internal structure.

min length 1
client_order_idClientId

A client-supplied correlation identifier.

account_idstringrequired

The account the filled order was placed under.

min length 1
tickerTickerrequired

A human-meaningful natural key naming a single-leg or multi-leg market.

min length 1 · max length 128
sideOrderSiderequired

Order side.

Allowed:buysell
pricestringrequired

Fill price, in YES dollars.

max length 24 · matches ^[0-9]+(\.[0-9]{1,6})?$
quantitystringrequired

Contracts filled.

max length 24 · matches ^[0-9]+(\.[0-9]{1,2})?$
feestringrequired

Fee collected for this execution.

max length 24 · matches ^[0-9]+(\.[0-9]{1,6})?$
is_takerbooleanrequired

Whether the caller's order was the aggressor (taker) of the trade.

executed_atstring<date-time>required

When this fill's execution occurred.

max length 40
next_page_urlNextPageURL | nullrequired

Root-relative URL for the next page. Null when there are no more items.

max length 4096 · matches ^/[^/\s#][^\s#]*$
400The request doesn't conform to this spec.
typestring<uri-reference>required

A stable URN identifying the kind of problem, for example urn:udx:problem:insufficient-permissions. Branch on it rather than on the localized detail. It is an identifier, not a URL to dereference.

max length 2048
titlestringrequired

A localized, human-readable summary of the error category. Stable for a given status code and resolved language — clients must not use it as a machine-readable discriminator.

max length 40
statusintegerrequired

The HTTP status code, repeated from the response itself.

detailstring

A localized, human-readable explanation specific to this occurrence. Clients must not parse it for machine-readable information.

max length 500
instancestring<uri-reference>

An identifier for this specific occurrence, so it can be correlated with server-side logs if you need to report it.

max length 100
401No valid credential was provided.
typestring<uri-reference>required

A stable URN identifying the kind of problem, for example urn:udx:problem:insufficient-permissions. Branch on it rather than on the localized detail. It is an identifier, not a URL to dereference.

max length 2048
titlestringrequired

A localized, human-readable summary of the error category. Stable for a given status code and resolved language — clients must not use it as a machine-readable discriminator.

max length 40
statusintegerrequired

The HTTP status code, repeated from the response itself.

detailstring

A localized, human-readable explanation specific to this occurrence. Clients must not parse it for machine-readable information.

max length 500
instancestring<uri-reference>

An identifier for this specific occurrence, so it can be correlated with server-side logs if you need to report it.

max length 100
403The credential lacks the read scope.
typestring<uri-reference>required

A stable URN identifying the kind of problem, for example urn:udx:problem:insufficient-permissions. Branch on it rather than on the localized detail. It is an identifier, not a URL to dereference.

max length 2048
titlestringrequired

A localized, human-readable summary of the error category. Stable for a given status code and resolved language — clients must not use it as a machine-readable discriminator.

max length 40
statusintegerrequired

The HTTP status code, repeated from the response itself.

detailstring

A localized, human-readable explanation specific to this occurrence. Clients must not parse it for machine-readable information.

max length 500
instancestring<uri-reference>

An identifier for this specific occurrence, so it can be correlated with server-side logs if you need to report it.

max length 100
429The member rate limit was exceeded.
typestring<uri-reference>required

A stable URN identifying the kind of problem, for example urn:udx:problem:insufficient-permissions. Branch on it rather than on the localized detail. It is an identifier, not a URL to dereference.

max length 2048
titlestringrequired

A localized, human-readable summary of the error category. Stable for a given status code and resolved language — clients must not use it as a machine-readable discriminator.

max length 40
statusintegerrequired

The HTTP status code, repeated from the response itself.

detailstring

A localized, human-readable explanation specific to this occurrence. Clients must not parse it for machine-readable information.

max length 500
instancestring<uri-reference>

An identifier for this specific occurrence, so it can be correlated with server-side logs if you need to report it.

max length 100
500Something went wrong on UDX's side.
typestring<uri-reference>required

A stable URN identifying the kind of problem, for example urn:udx:problem:insufficient-permissions. Branch on it rather than on the localized detail. It is an identifier, not a URL to dereference.

max length 2048
titlestringrequired

A localized, human-readable summary of the error category. Stable for a given status code and resolved language — clients must not use it as a machine-readable discriminator.

max length 40
statusintegerrequired

The HTTP status code, repeated from the response itself.

detailstring

A localized, human-readable explanation specific to this occurrence. Clients must not parse it for machine-readable information.

max length 500
instancestring<uri-reference>

An identifier for this specific occurrence, so it can be correlated with server-side logs if you need to report it.

max length 100
503Request admission or account setup is unavailable, or the read could not be completed in time; retry.
typestring<uri-reference>required

A stable URN identifying the kind of problem, for example urn:udx:problem:insufficient-permissions. Branch on it rather than on the localized detail. It is an identifier, not a URL to dereference.

max length 2048
titlestringrequired

A localized, human-readable summary of the error category. Stable for a given status code and resolved language — clients must not use it as a machine-readable discriminator.

max length 40
statusintegerrequired

The HTTP status code, repeated from the response itself.

detailstring

A localized, human-readable explanation specific to this occurrence. Clients must not parse it for machine-readable information.

max length 500
instancestring<uri-reference>

An identifier for this specific occurrence, so it can be correlated with server-side logs if you need to report it.

max length 100
Request
curl -X GET "https://api.underdogexchange.com/portfolio/fills" \
  -H "UDX-Access-Key: API_KEY_ID" \
  -H "UDX-Access-Timestamp: UNIX_MILLISECONDS" \
  -H "UDX-Access-Signature: BASE64_SIGNATURE"
Response
{
  "fills": [
    {
      "trade_id": "BP1ZQ131E04J",
      "order_id": "BK9BZNTK8022",
      "client_order_id": "order-20260804-001",
      "account_id": "6820943174116859281",
      "ticker": "UDX-EXAMPLE-MULTI",
      "side": "buy",
      "price": "0.05",
      "quantity": "2",
      "fee": "0.03",
      "is_taker": true,
      "executed_at": "2026-01-01T00:00:00.000000Z"
    }
  ],
  "next_page_url": null
}