Skip to main content
GET
List trades

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Scopes

trades_read
bearer_auth
trades_read
api_key

Headers

X-Workspace-Id
string<uuid>

The workspace the request acts in. An API key bound to a workspace implies it: omit the header, or send that same id (another id answers 403 WORKSPACE_SCOPE_MISMATCH). A member session must send it (400 MISSING_WORKSPACE without it).

Path Parameters

workspaceId
string
required

Workspace ID

Query Parameters

scope
enum<string>

mine, workspace or umbrella. Default: workspace. umbrella needs a broker workspace and permission to view its clients' compliance records; mine needs a member session. Whose rows the list reads.

Available options:
mine,
workspace,
umbrella
perspective
enum<string>

taker (default, in every workspace) or maker. maker needs an LP workspace and permission to view settlements. Which side of the trade the workspace was on.

Available options:
taker,
maker
kind
enum<string>

all, order or venueTrade. Default: all for taker and umbrella; for maker the fills default (on-chain orders); umbrella has orders only. Explicit population selection, not an unsupported-filter exclusion.

Available options:
all,
order,
venueTrade
status
string

Settlement status filter, as the projection names it.

counterpartyId
string

Counterparty: the LP's catalogue venue id, the row's lpVenueId (taker; a venue trade matches its execution type's venue) or an LP workspace UUID (orders only), the client workspace (umbrella) or the taker (maker).

venueId
string

Exact execution-type identity: the maker of an order (taker), or one of the LP's own venues (maker).

client
string

The member or client who placed the order: member (taker), user id (umbrella), entity (maker).

settlementStage
string

Settlement stage of an unsettled order (maker only).

minAgeSeconds
integer<int64>

Only orders at least this many seconds old (maker only, with settlementStage).

from
string<date-time>

Placed at or after this RFC 3339 instant (umbrella: a UTC midnight).

to
string<date-time>

Placed at or before this RFC 3339 instant (umbrella: a UTC midnight).

limit
integer<int32>

Page size; the projection's own bounds apply (default 25).

Required range: x >= 0
cursor
string

The nextCursor of the previous page.

format
enum<string>

json (default) or csv. csv returns the projection's export of the same filters. The representation of the list.

Available options:
json,
csv
lifecycle
string

Taker: comma-separated lifecycle buckets (inProgress, completed, failed, refunded, unknown). Maker: the fills lifecycle filter

nextActor
string

Taker: taker, support, counterparty or none

asset
string

Taker: either side's display asset symbol (case-insensitive)

corridor
string

Corridor (source-dest)

walletId
string

Taker: linked wallet id

address
string

Taker: wallet address (custody vault or linked wallet)

routingPath
string

The row's routingPath type: direct or via_broker

amountMin
number<double>

Minimum USD notional

amountMax
number<double>

Maximum USD notional

sort
string

field (ascending) or -field (descending). Every projection: createdAt. Taker: amountUsd, status, corridor, counterparty, member (workspace scope), orderId, settlementSpeedMs. Umbrella: amountUsd. Maker: status, orderId. A cursor pages only the order it was returned for

fields
string

Comma-separated top-level fields of each row to return; tradeId, kind, projection, id and status are always kept. JSON only

include
string

Related objects to expand into included, comma-separated: settlement, each listed trade's settlement by tradeId, as GET …/trades/{tradeId}/settlement answers this caller in the row's perspective, or null with that read's refusal. Unknown relation 400 INCLUDE_UNKNOWN, malformed or repeated 400 INCLUDE_INVALID; not on a signed API-key request or with format=csv

actionRequired
boolean

Taker: only orders whose nextAction is present

Response

One page of trades; with format=csv, the projection's CSV of the same filters

One page of the trade history.

items
object[]
required

One taker trade with tradeId, kind and projection, and the fields of its order or venue trade. Session-only maker, settlement and umbrella projections are not available to a programmatic credential.

limit
integer<int32>
required

The page size applied.

Required range: x >= 0
total
integer<int64>
required

Rows matching the filters in this projection.

Required range: x >= 0
coverage
object[]

Taker projections: kinds whose rows could not be read; the list shows the rest.

excludedKinds
object[]

Taker projections: kinds a filter or sort left out, each with the parameter it could not apply.

included
null | object

With include: each relation's object per listed trade, keyed by tradeId, as that relation's own GET answers this caller, or null with its refusal.

latestTradeAt
string<date-time> | null

Newest createdAt the caller may see in this projection, ignoring every filter.

makerContext
object

Maker projections only: what the fills or settlement-queue read returned about the page beyond its rows, unchanged. Absent for every taker projection.

nextCursor
string | null

Pass as cursor for the next page; null on the last page.

scope
null | enum<string>

Taker projections: whose orders the list holds (every workspace order, or the caller's own).

Available options:
workspace,
own