ToolAssay

Official daily foreign exchange reference rates from the European Central Bank (

Official daily foreign exchange reference rates from the European Central Bank (~30 currencies vs EUR, published each business day around 16:00 CET), rebased on request to any listed currency via EUR cross-rates and filtered to a requested symbol list; returns the reference date, the rate table and the ECB source attribution.

Answeringour last check, 2026-09-24
1 of 1checks answered this week
951 msmedian answer time
$0.005listed price per call
$0.005price it asked us

Paid test badge: not yet. The checks above are free: we call the tool without paying and read the payment request it sends back. The Verified badge needs paid calls whose answers match the promised output, and nobody can buy a badge.

Endpoint

GET https://4yearcycle.com/x402/fx-rates

CategoryMarket data
Provider host4yearcycle.com
Networkseip155:8453
Payment schemesexact
Self-reported calls, 30 days2 from 2 payers (the provider's figure, not ours)

Our checks, last 30 days

DayResultHTTPAskedTime
2026-09-24 valid payment request 402$0.005 951 ms

Example input (from the provider)

{
  "method": "GET",
  "queryParams": {
    "base": "USD",
    "symbols": "EUR,GBP,JPY,CHF"
  },
  "type": "http"
}

Promised output schema (from the provider)

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "method": {
          "enum": [
            "GET"
          ],
          "type": "string"
        },
        "queryParams": {
          "additionalProperties": false,
          "properties": {
            "base": {
              "default": "EUR",
              "description": "Base currency as ISO 4217 code (case-insensitive). EUR or any of the ~30 ECB-listed currencies (USD, GBP, JPY, CHF, ...); non-EUR bases are computed as cross-rates via EUR. Default: EUR.",
              "examples": [
                "EUR",
                "USD",
                "GBP"
              ],
              "pattern": "^[A-Za-z]{3}$",
              "type": "string"
            },
            "symbols": {
              "description": "Optional comma-separated ISO 4217 codes to restrict the rate table to (case-insensitive); codes the ECB does not list are ignored. Empty = all listed currencies.",
              "examples": [
                "USD,GBP,JPY",
                "CHF"
              ],
              "type": "string"
            }
          },
          "required": [],
          "type": "object"
        },
        "type": {
          "const": "http",
          "type": "string"
        }
      },
      "required": [
        "type",
        "method"
      ],
      "type": "object"
    },
    "output": {
      "properties": {
        "example": {
          "properties": {
            "base": {
              "description": "Base currency of the rate table (ISO 4217)",
              "type": "string"
            },
            "date": {
              "description": "ECB reference date of the rates (YYYY-MM-DD, last business day)",
              "type": "string"
            },
            "notice": {
              "description": "ECB attribution notice: the underlying data is available free of charge from the ECB; cross-rates are computed values",
              "type": "string"
            },
            "rates": {
              "additionalProperties": {
                "type": "number"
              },
              "description": "Units of each quoted currency per 1 unit of base, e.g. rates.USD = USD per base. ECB publishes vs EUR; other bases are cross-rates via EUR rounded to 6 decimals.",
              "type": "object"
            },
            "source": {
              "description": "Always \"ECB\" \u2014 European Central Bank euro foreign exchange reference rates",
              "type": "string"
            }
          },
          "required": [
            "base",
            "date",
            "rates",
            "source",
            "notice"
          ],
          "type": "object"
        },
        "type": {
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "type": "object"
    }
  },
  "required": [
    "input"
  ],
  "type": "object"
}

This page as JSON