European Central Bank — Foreign Exchange Statistics (FXI)
Foreign Exchange Statistics (FXI) — official time series from the European Central Bank Data Portal, published as the FXI dataflow over SDMX 2.1 REST. One endpoint serves XML (SDMX-ML), CSV (?format=csvdata) and JSON (?format=jsondata); extract exactly the series you need with a key path and startPeriod / endPeriod / lastNObservations filters. Browse and chart the same series on the ECB Data Portal.
Trust score
How is this computed?Weighted across five axes. Tap a ring for what it measures.
Data schema (24 fields)
Click a field to see example values.
| Field | Type | Description |
|---|---|---|
| FREQFrequency | dimension | 1 codes (e.g. Daily) |
| REF_AREAReference area | dimension | 1 codes (e.g. European Central Bank (ECB)) |
| FXS_OP_TYPEOperation type in FXS context | dimension | 3 codes (e.g. Unilateral intervention, Coordinated intervention, ERM II intervention) |
| DATA_TYPE_FXSData type in FXS context | dimension | 2 codes (e.g. Aggregate gross flows - all, Net flows - all) |
| MARKET_TRANSFXS market type transaction | dimension | 1 codes (e.g. In or off) |
| CURRENCY_P_HCurrency purchase - holding | dimension | 1 codes (e.g. Euro) |
| CURRENCY_SCurrency sale | dimension | 2 codes (e.g. Japanese yen, US dollar) |
| SERIES_DENOMSeries denominat/spec calcul | dimension | 1 codes (e.g. Euro) |
| TIME_PERIODTime period or range | time | Time dimension — filter with startPeriod / endPeriod query params. |
| OBS_VALUEObservation value | number | The observed numeric value for each cell. |
| TIME_FORMATTime format code | attribute | — |
| COLLECTIONCollection indicator | attribute | — |
| COMPILING_ORGCompiling organisation | attribute | — |
| DISS_ORGData dissemination organisation | attribute | — |
| DECIMALS | attribute | — |
| SOURCE_AGENCY | attribute | — |
| TITLE | attribute | — |
| TITLE_COMPLTitle complement | attribute | — |
| UNIT | attribute | — |
| UNIT_MULTUnit multiplier | attribute | — |
| OBS_STATUSObservation status | attribute | — |
| OBS_CONFObservation confidentiality | attribute | — |
| OBS_PRE_BREAKPre-break observation value | attribute | — |
| OBS_COMObservation comment | attribute | — |
Schema captured from sdmx 1 month ago.
Query the data
Pick columns and a sort, then fetch a live preview straight from the source. Choose an API-filterable column (marked ▾) under “Where” to pick from its list of values.
Sample data (5 records)
Record 1FREQ: D · REF_AREA: 4F
{
"FREQ": "D",
"REF_AREA": "4F",
"OBS_VALUE": 0,
"CURRENCY_S": "JPY",
"FXS_OP_TYPE": "21",
"TIME_PERIOD": "2026-03-31",
"CURRENCY_P_H": "EUR",
"MARKET_TRANS": "A",
"SERIES_DENOM": "E",
"DATA_TYPE_FXS": "200"
}Record 2FREQ: D · REF_AREA: 4F
{
"FREQ": "D",
"REF_AREA": "4F",
"OBS_VALUE": 0,
"CURRENCY_S": "USD",
"FXS_OP_TYPE": "21",
"TIME_PERIOD": "2026-03-31",
"CURRENCY_P_H": "EUR",
"MARKET_TRANS": "A",
"SERIES_DENOM": "E",
"DATA_TYPE_FXS": "200"
}Record 3FREQ: D · REF_AREA: 4F
{
"FREQ": "D",
"REF_AREA": "4F",
"OBS_VALUE": 0,
"CURRENCY_S": "JPY",
"FXS_OP_TYPE": "21",
"TIME_PERIOD": "2026-03-31",
"CURRENCY_P_H": "EUR",
"MARKET_TRANS": "A",
"SERIES_DENOM": "E",
"DATA_TYPE_FXS": "400"
}Record 4FREQ: D · REF_AREA: 4F
{
"FREQ": "D",
"REF_AREA": "4F",
"OBS_VALUE": 0,
"CURRENCY_S": "USD",
"FXS_OP_TYPE": "21",
"TIME_PERIOD": "2026-03-31",
"CURRENCY_P_H": "EUR",
"MARKET_TRANS": "A",
"SERIES_DENOM": "E",
"DATA_TYPE_FXS": "400"
}Record 5FREQ: D · REF_AREA: 4F
{
"FREQ": "D",
"REF_AREA": "4F",
"OBS_VALUE": 0,
"CURRENCY_S": "JPY",
"FXS_OP_TYPE": "22",
"TIME_PERIOD": "2026-03-31",
"CURRENCY_P_H": "EUR",
"MARKET_TRANS": "A",
"SERIES_DENOM": "E",
"DATA_TYPE_FXS": "200"
}Live sample captured at profiling time — values may have changed upstream.
Verification Status
Using the API
Query examples
curl -s 'https://data-api.ecb.europa.eu/service/dataflow/ECB' -H 'Accept: application/vnd.sdmx.structure+xml;version=2.1'All dataflows (datasets) published by this agency, as SDMX-ML.
Machine-readable & source
Embed this badge in a README or wiki — it always shows the latest verification state and quality tier.