GET /api/fx List FX Pairs
Returns all tracked FX pairs with their latest computed metrics. The canonical zero-ambiguity surface for FX-only consumers — see the FX Namespace overview for how this relates to /api/rates and the polymorphic /api/assets?type=fx.
Request
curl https://api.bytetree.io/api/fx
# Search by pair (substring match on symbol or pretty form)
curl "https://api.bytetree.io/api/fx?q=EUR"
# Cherry-pick fields
curl "https://api.bytetree.io/api/fx?fields=byteTrendCapr200w,trendRegimeCapr200w,changeCapr200w"
# Paginate
curl "https://api.bytetree.io/api/fx?limit=20&offset=0"
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
q | string | No | Substring match on the concatenated symbol (EURUSD) or the slash-form pretty name (EUR/USD). Case-insensitive. |
fields | string | No | Comma-separated list of metric keys to include. symbol, name, type, date, and close are always returned. |
limit | number | No | Maximum number of pairs per page. Default 500, capped at 1000. |
offset | number | No | Number of records to skip. Default 0. |
Response
This endpoint uses the paginated list envelope:
| Field | Type | Description |
|---|---|---|
count | number | Length of the returned data array (records on this page) |
total | number | Full match count for the same filter, ignoring limit and offset |
limit | number | Echoed input limit |
offset | number | Echoed input offset |
data | array | Array of FX pair records |
Each record in data:
| Field | Type | Description |
|---|---|---|
symbol | string | Concatenated pair code (e.g. EURUSD) |
name | string | Pretty slash form (e.g. EUR/USD) |
type | string | Always "fx" |
date | string | ISO 8601 date of the latest record |
close | number | Latest close rate |
| metric fields | various | Computed metric fields merged at the top level — see Latest Metrics for the full set and definitions |
{
"count": 34,
"total": 34,
"limit": 500,
"offset": 0,
"data": [
{
"symbol": "EURUSD",
"name": "EUR/USD",
"type": "fx",
"date": "2026-05-05T00:00:00.000Z",
"close": 1.16838,
"byteTrendCapr200w": 4,
"trendRegimeCapr200w": "Emerging Trend",
"changeCapr200w": 1
}
]
}
Notes
- Use
?fields=to trim the response when you only need a subset of metrics (e.g. score and regime for a dashboard list). - The
namefield is sourced from aprettifyPairutility that splits the concatenated symbol into base/quote currency codes. A future engine release will replace this with full ISO 4217 currency names (e.g."Euro / US Dollar"). - For a polymorphic call that returns FX rows alongside stocks, crypto, and others, see
/api/assets?type=fx.