List exchanges
GET
/fx/exchangesAll your exchanges, newest first, whether made through the API or in the portal. A portal exchange has no merchantReference, and one waiting for approval in the portal reads pending. Requires fx:read.
Parameters
limitintegerqueryDefault:
20≥ 1 · ≤ 100
cursorstringqueryOpaque cursor from a previous page'snextCursor.max length 512
createdAfterstring (date-time)queryInclusive lower bound oncreatedAt.createdBeforestring (date-time)queryExclusive upper bound oncreatedAt.statusstringqueryAllowed values:
pendingprocessingcompletedfailedcancelledmerchantReferencestringqueryExact match on your merchant reference. Returns at most one item.max length 100
Responses
A page of exchanges.
Headers
X-Request-IdstringThe client'sX-Request-Idif supplied, otherwise a server-generated id. EqualstraceIdin problems.RateLimit-LimitintegerRateLimit-RemainingintegerRateLimit-ResetintegerSeconds until the window resets.
Schema application/json
objectstringrequiredAllowed values:
listdataarray<FxExchange>objectstringrequiredAllowed values:
fx_exchangeidstringrequiredAn exchange's id. Opaque — use it as you received it.Example:
fx_019985c24a6e7c3b9f102d5e8a1b3c4dpattern ^fx_[0-9a-f]{32}$
merchantReferencestringAbsent on an exchange made in the portal.statusstringrequiredAllowed values:
pendingprocessingcompletedfailedcancelledsellMoneyrequiredDecimal amount as a string — never a float, never minor units. An amount you send may carry no more decimal places than its currency has (and never more than 8); trailing zeros do not count, so10.100 EURis fine and10.123 EURis400 validation_failedonamount.value.buyobjectThe quoted amount until a venue exchange settles; then what it filled.ratestringThe rate applied, as a string.feeobjectAbsent while it is not known — as on a portal exchange that has not executed yet, and on some older portal exchanges.totalDebitedobjectPresent withfee.sellAccountIdstringrequiredOpaque account identifier. Treat as a string; never parse or construct it.Example:
acc_AAAAAAAAAAcpattern ^acc_[A-Za-z0-9_-]{11}$
buyAccountIdstringOpaque account identifier. Treat as a string; never parse or construct it.Example:
acc_AAAAAAAAAAcpattern ^acc_[A-Za-z0-9_-]{11}$
createdAtstring (date-time)requiredRFC 3339, UTC, with millisecond precision.Example:
2026-09-18T10:15:30.123ZupdatedAtstring (date-time)requiredRFC 3339, UTC, with millisecond precision.Example:
2026-09-18T10:15:30.123ZcompletedAtstring (date-time)RFC 3339, UTC, with millisecond precision.Example:
2026-09-18T10:15:30.123Z
hasMorebooleanrequirednextCursorstringnullablePass ascursorto fetch the next page.nullwhenhasMoreis false.