2s-rjsw718bb-alleyford.vercel.app · timeseries
2s-rjsw718bb-alleyford.vercel.app · https://2s-rjsw718bb-alleyford.vercel.app/api/fx/timeseries
Historical daily exchange-rate series from the European Central Bank (via Frankfurter), with computed summary statistics. Pass base = 3-letter ISO 4217 currency (default USD), start = YYYY-MM-DD, optional end = YYYY-MM-DD (default = latest available), optional symbols = comma-separated target codes (default all), optional amount to scale rates (default 1). Range is capped at 366 days. Returns, per target currency, first/last/min/max/mean rate plus absolute and percentage change over the window, alongside the full daily series. ECB publishes on business days only; weekends and holidays are omitted.
This endpoint speaks x402: an unpaid request returns
HTTP 402 with machine-readable payment
terms, your agent pays the $0.0014 USDC in USDC on-chain, and retries automatically. Pays to TW6ntaGzvj63ZgPjszd4FCGmVTGfzv1MAYZbjYcyWhn.Call it in 30 seconds
JavaScriptPythoncurl
// This service settles on Base Sepolia.
// Use an x402 client with a matching signer (e.g. an @x402 Solana client).
// First, inspect the payment terms for free:
const r = await fetch("https://2s-rjsw718bb-alleyford.vercel.app/api/fx/timeseries"); // returns HTTP 402 + machine-readable terms
console.log(r.status, await r.json());
# This service settles on Base Sepolia.
# Use an x402 client with a matching signer. To see the terms first, for free:
import httpx
r = httpx.get("https://2s-rjsw718bb-alleyford.vercel.app/api/fx/timeseries") # HTTP 402 + machine-readable payment terms
print(r.status_code, r.json())
# 1) An unpaid request returns HTTP 402 with the exact payment terms: curl -i "https://2s-rjsw718bb-alleyford.vercel.app/api/fx/timeseries?base=USD&end=2025-03-31&start=2025-01-01&symbols=EUR,GBP" # 2) Paying + retrying requires an x402 client that can sign the USDC # authorization (curl alone cannot). See the JS / Python tabs below.
New to x402? Read the 5-minute quickstart →
ad slot · a crypto-native, no-tracking ad loads here in production
Query this registry programmatically. Every service here is searchable through the
x402hub API, an x402-payable endpoint your agents call and pay per request in USDC.
https://api-service-sandy.vercel.app · GET /api/search?q=... · $0.002 / call
Prefer to just support the project? Tip USDC on Base to
0x40BbeB1BEd1D4ba6f1d4C0eE0C9D93e2dA3347C6. This hub is free and ad-light.