Probabilistic daily maximum temperature forecasts for the 51 cities behind Polymarket weather markets. Multi-model ensemble (ECMWF, GFS, ICON, Météo-France, UKMO) with seasonal per-model bias correction, refreshed hourly.
Payment is the credential: x402 micropayments in USDC on Base. No accounts, no API keys.
Skip the months of data collection. The per-model bias correction behind this API is calibrated on years of paired forecast-vs-observed history, captured at the right lead hour every day — data that cannot be backfilled, only lived. $0.30/day (the all-cities bundle) buys all of it, plus the public track record to verify it.
| Endpoint | Price | Returns |
|---|---|---|
GET /forecast/{station}/point | $0.005 | median max + 80% interval |
GET /forecast/{station}/buckets | $0.02 | p per actual market outcome + YES token IDs |
GET /forecast/all/buckets | $0.30 | bundle: all 51 cities, one call |
GET /forecast/{station}/distribution | $0.05 | full CDF, 0.1°C grid |
GET /forecast/{station}/ensemble | $0.01 | raw per-model members + spread |
GET /climate/{station} | $0.02 | monthly climatology 2021+, records |
Free: /sample (a real, resolved buckets payload — exact format + our p vs what actually happened) · /markets (catalog: stations, units, next update) · /accuracy (verifiable 30-day track record — the exact product sold, scored at morning lead against observed maxima, no leakage) · /openapi.json (machine-readable spec with x402 metadata)
curl https://91-197-235-206.sslip.io/forecast/SBGR/buckets # → 402 with x402 v2 challenge (USDC on Base); pay with any x402 client
Runnable examples (Python, MIT): github.com/czimbr/weather-oracle-examples — free catalog demo, a ~20-line paid request, and an edge table vs the live Polymarket book.
Optional ?date=YYYY-MM-DD (today through day+3, city-local).
Bucket grid: 1°C international / 2°F US cities. Forecast prior only — model consensus,
no proprietary execution signals. Listed on
x402scan.