FX rates

Returns JSON with the European Central Bank euro reference rates for about 30 currencies, rebased to any of them, with an optional amount conversion and the ECB reference date.

Use this when you need currency exchange rates, forex conversion of an amount or a reference rate between two currencies.

Do not use for live trading quotes, intraday or crypto rates (ECB rates update once per business day).

Price: 0.005 USDC per call (x402, eip155:8453). Typical response time: 1500 ms (p95).

Call it over HTTP (x402)

POST https://x402-gateway.blackwoodstate8.workers.dev/v1/fx-rates. A request without payment gets 402 Payment Required with the PAYMENT-REQUIRED header; any x402 client signs an EIP-3009 authorization and retries with PAYMENT-SIGNATURE (or X-PAYMENT). Invalid input is answered with 400 and not charged.

curl -i -X POST https://x402-gateway.blackwoodstate8.workers.dev/v1/fx-rates -H 'content-type: application/json' -d '{"base":"USD","symbols":["EUR","BRL","JPY","GBP"],"amount":100}'
Pay to0xFf918CFB0690FdEd4224DBDab916F6E6F78882b7
Asset0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 (USDC)
Amount5000 atomic units (0.005 USDC)
Authorization window60 s

Call it over MCP

Streamable HTTP at https://x402-gateway.blackwoodstate8.workers.dev/mcp, tool blackwood_fx_rates. Payment goes in _meta["x402/payment"]; without it the tool returns the payment requirements.

Input

FieldTypeMeaning
base (optional)stringBase currency, ISO 4217 (EUR when omitted), e.g. USD
symbols (optional)arrayCurrencies to return, e.g. ["BRL", "JPY"] (all ECB currencies when omitted)
amount (optional)numberAmount in the base currency to convert, e.g. 100

Example:

{
  "base": "USD",
  "symbols": [
    "EUR",
    "BRL",
    "JPY",
    "GBP"
  ],
  "amount": 100
}

Output

Real example:

{
  "date": "2026-10-16",
  "base": "USD",
  "rates": {
    "EUR": 0.888652,
    "BRL": 5.08282,
    "JPY": 158.02,
    "GBP": 0.749889
  },
  "amount": 100,
  "converted": {
    "EUR": 88.87,
    "BRL": 508.28,
    "JPY": 15802,
    "GBP": 74.99
  },
  "attribution": "Source: European Central Bank, euro foreign exchange reference rates (ecb.europa.eu)",
  "note": "ECB reference rates are published for information purposes only, once per business day; they are not trading rates."
}
JSON Schema
{
  "type": "object",
  "properties": {
    "date": {
      "type": "string"
    },
    "base": {
      "type": "string"
    },
    "rates": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "number"
      }
    },
    "amount": {
      "type": [
        "number",
        "null"
      ]
    },
    "converted": {
      "anyOf": [
        {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": "number"
          }
        },
        {
          "type": "null"
        }
      ]
    },
    "attribution": {
      "type": "string"
    },
    "note": {
      "type": "string"
    }
  },
  "required": [
    "date",
    "base",
    "rates",
    "amount",
    "converted",
    "attribution",
    "note"
  ],
  "additionalProperties": false
}

More

Free schema and example: GET https://x402-gateway.blackwoodstate8.workers.dev/v1/fx-rates. OpenAPI 3.1 · llms.txt · All services