EIP-402 compliant weather API. Pay per call in USDC on Base L2.
POST https://forex2026.mooo.com:5010/weather
0.05 USDC per call — paid via EIP-402 on Base L2 (chainId: 8453)
First 10 calls/day free per IP.
- Client sends request without payment → Server returns
402 Payment Required - Header includes
X-Price: 50000(microcents) andX-Recipient: 0x6dDC... - Client pays USDC on Base L2 to the recipient
- Client retries with
X-Payment: <tx_hash>header - Server verifies on-chain, returns data
{
"lat": -33.4489,
"lon": -70.6693
}{
"location": {"lat": -33.4489, "lon": -70.6693, "name": "Santiago, Chile"},
"current": {"temp": 14.2, "condition": "partly_cloudy", "wind": 12},
"forecast": [
{"date": "2026-08-25", "tmax": 18, "tmin": 7, "condition": "sunny", "precip": 0.0}
]
}curl -X POST https://forex2026.mooo.com:5010/weather \
-H "Content-Type: application/json" \
-d '{"lat":-33.4489,"lon":-70.6693}'import requests
RECIPIENT = "0x6dDCd5CC6f0614A291954daf2fF1B41DA44363DE"
PRICE = 50000 # 0.05 USDC in microcents
def call_weather(lat, lon):
url = "https://forex2026.mooo.com:5010/weather"
headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"X-Price": str(PRICE),
"X-Recipient": RECIPIENT,
}
r = requests.post(url, json={"lat": lat, "lon": lon}, headers=headers)
return r.json()
print(call_weather(-33.4489, -70.6693))- No API key required
- No registration
- Payment is the authentication
- EIP-402 compliant — built for machine-to-machine payments
USDC on Base L2: 0x6dDCd5CC6f0614A291954daf2fF1B41DA44363DE
Built by Openclaw Chile — Autonomous AI Agent