Weather + nature intelligence: current conditions, 7-day forecasts, earthquakes, volcanoes, air quality, solar activity, and marine data. Multi-source (ECMWF, NOAA GFS, USGS, NASA) with premium AI reasoning endpoint for natural-language weather questions.
Pay from $0.001 per request in USDC on Base, settled onchain via the x402 protocol, no signup, no API key needed.
UPTIME 24H 100% │ 7D 100% │ 30D 100%
ENDPOINTS
| METHOD | PATH | DESCRIPTION | PRICE | NETWORK | ASSET |
|---|---|---|---|---|---|
| GET | /climate/historical | $0.001 | Base | USDC | |
| GET | /nature/air-quality | $0.001 | Base | USDC | |
| GET | /nature/earthquakes | $0.001 | Base | USDC | |
| GET | /nature/marine | $0.001 | Base | USDC | |
| GET | /nature/solar | $0.001 | Base | USDC | |
| GET | /nature/volcanoes | $0.001 | Base | USDC | |
| GET | /weather/ask | --- | USDC | ||
| GET | /weather/current | $0.001 | Base | USDC | |
| GET | /weather/forecast | $0.001 | Base | USDC |
9 endpoints
REQUEST / RESPONSE EXAMPLE
An unpaid request to GET /climate/historical returns HTTP 402 with the payment terms. Settle onchain via your facilitator, then retry with the X-Payment header.
// request
curl -i 'https://weather.x402.press/climate/historical'
// 402 response (captured by monitor)
[
{
"error": "Payment required",
"accepts": [
{
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"payTo": "0x3C74Ce3f8566Ff04B312320E7c264A691c409992",
"amount": "1000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 300
},
{
"asset": "0x60a3E35Cc302bFA44Cb288Bc5a4F316Fdb1adb42",
"extra": {
"name": "EURC",
"version": "2"
},
"payTo": "0x3C74Ce3f8566Ff04B312320E7c264A691c409992",
"amount": "1000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 300
}
],
"resource": {
"url": "https://weather.x402.press/weather/current",
"tags": [
"weather",
"data",
"climate",
"x402"
],
"mimeType": "application/json",
"description": "Current weather conditions for any location â temperature, humidity, wind.",
"serviceName": "Weather"
},
"extensions": {
"bazaar": {
"info": {
"input": {
"body": {
"latitude": 51.5,
"longitude": -0.12
},
"type": "http",
"method": "GET",
"bodyType": "json"
},
"output": {
"type": "json",
"example": {
"current": {
"source": "Open-Meteo (ECMWF)",
"conditions": "Overcast",
"feels_like_c": 18.4,
"humidity_pct": 86,
"weather_code": 3,
"temperature_c": 18,
"wind_speed_kmh": 9.7,
"precipitation_mm": 0
},
"location": {
"lat": 51.5,
"lon": -0.12,
"timezone": "Europe/London"
}
}
}
},
"schema": {
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"type",
"method",
"bodyType",
"body"
],
"properties": {
"body": {
"required": [
"latitude",
"longitude"
],
"properties": {
"latitude": {
"type": "number",
"description": "Latitude (-90 to 90)"
},
"longitude": {
"type": "number",
"description": "Longitude (-180 to 180)"
}
}
},
"type": {
"type": "string",
"const": "http"
},
"method": {
"enum": [
"POST",
"PUT",
"PATCH"
],
"type": "string"
},
"bodyType": {
"enum": [
"json",
"form-data",
"text"
],
"type": "string"
}
},
"additionalProperties": false
},
"output": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string"
},
"example": {
"type": "object"
}
}
}
}
}
}
},
"x402Version": 2
},
{
"error": "Payment required",
"accepts": [
{
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"payTo": "0x3C74Ce3f8566Ff04B312320E7c264A691c409992",
"amount": "1000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 300
},
{
"asset": "0x60a3E35Cc302bFA44Cb288Bc5a4F316Fdb1adb42",
"extra": {
"name": "EURC",
"version": "2"
},
"payTo": "0x3C74Ce3f8566Ff04B312320E7c264A691c409992",
"amount": "1000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 300
}
],
"resource": {
"url": "https://weather.x402.press/weather/forecast",
"tags": [
"weather",
"data",
"forecast",
"x402"
],
"mimeType": "application/json",
"description": "7-day weather forecast â daily highs, lows, precipitation.",
"serviceName": "Weather"
},
"extensions": {
"bazaar": {
"info": {
"input": {
"body": {
"days": 7,
"latitude": 51.5,
"longitude": -0.12
},
"type": "http",
"method": "GET",
"bodyType": "json"
},
"output": {
"type": "json",
"example": {
"forecast": [
{
"date": "2026-06-18",
"low_c": 16,
"high_c": 28,
"conditions": "Sunny"
}
],
"location": {
"lat": 51.5,
"lon": -0.12,
"timezone": "Europe/London"
}
}
}
},
"schema": {
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"type",
"method",
"bodyType",
"body"
],
"properties": {
"body": {
"required": [
"latitude",
"longitude"
],
"properties": {
"days": {
"type": "integer",
"default": 7,
"description": "Forecast days (1-16)"
},
"latitude": {
"type": "number",
"description": "Latitude (-90 to 90)"
},
"longitude": {
"type": "number",
"description": "Longitude (-180 to 180)"
}
}
},
"type": {
"type": "string",
"const": "http"
},
"method": {
"enum": [
"POST",
"PUT",
"PATCH"
],
"type": "string"
},
"bodyType": {
"enum": [
"json",
"form-data",
"text"
],
"type": "string"
}
},
"additionalProperties": false
},
"output": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string"
},
"example": {
"type": "object"
}
}
}
}
}
}
},
"x402Version": 2
},
{
"error": "Payment required",
"accepts": [
{
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"payTo": "0x3C74Ce3f8566Ff04B312320E7c264A691c409992",
"amount": "1000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 300
},
{
"asset": "0x60a3E35Cc302bFA44Cb288Bc5a4F316Fdb1adb42",
"extra": {
"name": "EURC",
"version": "2"
},
"payTo": "0x3C74Ce3f8566Ff04B312320E7c264A691c409992",
"amount": "1000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 300
}
],
"resource": {
"url": "https://weather.x402.press/nature/earthquakes",
"tags": [
"nature",
"earthquake",
"seismic",
"data",
"x402"
],
"mimeType": "application/json",
"description": "Recent earthquake activity near a location â queries multiple seismic monitoring portals in parallel. Magnitude, depth, and distance.",
"serviceName": "Weather"
},
"extensions": {
"bazaar": {
"info": {
"input": {
"body": {
"latitude": 35.68,
"longitude": 139.76,
"radius_km": 200
},
"type": "http",
"method": "GET",
"bodyType": "json"
},
"output": {
"type": "json",
"example": {
"count": 1,
"source": "USGS Earthquake Hazards Program",
"location": {
"lat": 35.68,
"lon": 139.76
},
"earthquakes": [
{
"time": "2026-06-18T04:00:00Z",
"depth_km": 45,
"location": "50 km E of Tokyo",
"magnitude": 3.2,
"distance_km": 52
}
]
}
}
},
"schema": {
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"type",
"method",
"bodyType",
"body"
],
"properties": {
"body": {
"required": [
"latitude",
"longitude"
],
"properties": {
"latitude": {
"type": "number",
"description": "Latitude (-90 to 90)"
},
"longitude": {
"type": "number",
"description": "Longitude (-180 to 180)"
},
"radius_km": {
"type": "integer",
"default": 200,
"description": "Search radius in km"
},
"min_magnitude": {
"type": "number",
"default": 2.5,
"description": "Minimum magnitude"
}
}
},
"type": {
"type": "string",
"const": "http"
},
"method": {
"enum": [
"POST",
"PUT",
"PATCH"
],
"type": "string"
},
"bodyType": {
"enum": [
"json",
"form-data",
"text"
],
"type": "string"
}
},
"additionalProperties": false
},
"output": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string"
},
"example": {
"type": "object"
}
}
}
}
}
}
},
"x402Version": 2
},
{
"error": "Payment required",
"accepts": [
{
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"payTo": "0x3C74Ce3f8566Ff04B312320E7c264A691c409992",
"amount": "1000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 300
},
{
"asset": "0x60a3E35Cc302bFA44Cb288Bc5a4F316Fdb1adb42",
"extra": {
"name": "EURC",
"version": "2"
},
"payTo": "0x3C74Ce3f8566Ff04B312320E7c264A691c409992",
"amount": "1000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 300
}
],
"resource": {
"url": "https://weather.x402.press/nature/volcanoes",
"tags": [
"nature",
"volcano",
"volcanic",
"data",
"x402"
],
"mimeType": "application/json",
"description": "Recent volcanic activity near a location â global volcano event monitoring.",
"serviceName": "Weather"
},
"extensions": {
"bazaar": {
"info": {
"input": {
"body": {
"latitude": 35.68,
"longitude": 139.76,
"radius_km": 500
},
"type": "http",
"method": "GET",
"bodyType": "json"
},
"output": {
"type": "json",
"example": {
"count": 1,
"source": "NASA EONET / Smithsonian GVP",
"location": {
"lat": 35.68,
"lon": 139.76
},
"volcanoes": [
{
"date": "2026-05-30T00:00:00Z",
"name": "Telica Volcano, Nicaragua",
"status": "active",
"distance_km": 0
}
]
}
}
},
"schema": {
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"type",
"method",
"bodyType",
"body"
],
"properties": {
"body": {
"required": [
"latitude",
"longitude"
],
"properties": {
"latitude": {
"type": "number",
"description": "Latitude (-90 to 90)"
},
"longitude": {
"type": "number",
"description": "Longitude (-180 to 180)"
},
"radius_km": {
"type": "integer",
"default": 500,
"description": "Search radius in km"
}
}
},
"type": {
"type": "string",
"const": "http"
},
"method": {
"enum": [
"POST",
"PUT",
"PATCH"
],
"type": "string"
},
"bodyType": {
"enum": [
"json",
"form-data",
"text"
],
"type": "string"
}
},
"additionalProperties": false
},
"output": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string"
},
"example": {
"type": "object"
}
}
}
}
}
}
},
"x402Version": 2
},
{
"error": "Payment required",
"accepts": [
{
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"payTo": "0x3C74Ce3f8566Ff04B312320E7c264A691c409992",
"amount": "1000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 300
},
{
"asset": "0x60a3E35Cc302bFA44Cb288Bc5a4F316Fdb1adb42",
"extra": {
"name": "EURC",
"version": "2"
},
"payTo": "0x3C74Ce3f8566Ff04B312320E7c264A691c409992",
"amount": "1000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 300
}
],
"resource": {
"url": "https://weather.x402.press/nature/air-quality",
"tags": [
"nature",
"air-quality",
"pollution",
"data",
"x402"
],
"mimeType": "application/json",
"description": "Air quality index and pollutants at any location â European AQI, US AQI, PM2.5, PM10, ozone, and NO2.",
"serviceName": "Weather"
},
"extensions": {
"bazaar": {
"info": {
"input": {
"body": {
"latitude": 51.5,
"longitude": -0.12
},
"type": "http",
"method": "GET",
"bodyType": "json"
},
"output": {
"type": "json",
"example": {
"source": "Open-Meteo Air Quality",
"location": {
"lat": 51.5,
"lon": -0.12
},
"air_quality": {
"pm10": 14.2,
"ozone": 64.1,
"pm2_5": 8.7,
"us_aqi": 47,
"european_aqi": 38
}
}
}
},
"schema": {
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"type",
"method",
"bodyType",
"body"
],
"properties": {
"body": {
"required": [
"latitude",
"longitude"
],
"properties": {
"latitude": {
"type": "number",
"description": "Latitude (-90 to 90)"
},
"longitude": {
"type": "number",
"description": "Longitude (-180 to 180)"
}
}
},
"type": {
"type": "string",
"const": "http"
},
"method": {
"enum": [
"POST",
"PUT",
"PATCH"
],
"type": "string"
},
"bodyType": {
"enum": [
"json",
"form-data",
"text"
],
"type": "string"
}
},
"additionalProperties": false
},
"output": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string"
},
"example": {
"type": "object"
}
}
}
}
}
}
},
"x402Version": 2
},
{
"error": "Payment required",
"accepts": [
{
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"payTo": "0x3C74Ce3f8566Ff04B312320E7c264A691c409992",
"amount": "1000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 300
},
{
"asset": "0x60a3E35Cc302bFA44Cb288Bc5a4F316Fdb1adb42",
"extra": {
"name": "EURC",
"version": "2"
},
"payTo": "0x3C74Ce3f8566Ff04B312320E7c264A691c409992",
"amount": "1000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 300
}
],
"resource": {
"url": "https://weather.x402.press/nature/marine",
"tags": [
"nature",
"marine",
"ocean",
"waves",
"data",
"x402"
],
"mimeType": "application/json",
"description": "Marine conditions â wave height, sea surface temperature, swell height, and current velocity.",
"serviceName": "Weather"
},
"extensions": {
"bazaar": {
"info": {
"input": {
"body": {
"latitude": 30,
"longitude": -80
},
"type": "http",
"method": "GET",
"bodyType": "json"
},
"output": {
"type": "json",
"example": {
"marine": {
"wave_height_m": 1.02,
"swell_wave_height_m": 0.56,
"sea_surface_temperature_c": 29.1
},
"source": "Open-Meteo Marine",
"location": {
"lat": 30,
"lon": -80
}
}
}
},
"schema": {
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"type",
"method",
"bodyType",
"body"
],
"properties": {
"body": {
"required": [
"latitude",
"longitude"
],
"properties": {
"latitude": {
"type": "number",
"description": "Latitude (-90 to 90)"
},
"longitude": {
"type": "number",
"description": "Longitude (-180 to 180)"
}
}
},
"type": {
"type": "string",
"const": "http"
},
"method": {
"enum": [
"POST",
"PUT",
"PATCH"
],
"type": "string"
},
"bodyType": {
"enum": [
"json",
"form-data",
"text"
],
"type": "string"
}
},
"additionalProperties": false
},
"output": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string"
},
"example": {
"type": "object"
}
}
}
}
}
}
},
"x402Version": 2
},
{
"error": "Payment required",
"accepts": [
{
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"payTo": "0x3C74Ce3f8566Ff04B312320E7c264A691c409992",
"amount": "1000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 300
},
{
"asset": "0x60a3E35Cc302bFA44Cb288Bc5a4F316Fdb1adb42",
"extra": {
"name": "EURC",
"version": "2"
},
"payTo": "0x3C74Ce3f8566Ff04B312320E7c264A691c409992",
"amount": "1000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 300
}
],
"resource": {
"url": "https://weather.x402.press/nature/solar",
"tags": [
"nature",
"solar",
"radiation",
"sun",
"data",
"x402"
],
"mimeType": "application/json",
"description": "Solar radiation data â shortwave and direct radiation, and sunshine duration.",
"serviceName": "Weather"
},
"extensions": {
"bazaar": {
"info": {
"input": {
"body": {
"latitude": 51.5,
"longitude": -0.12
},
"type": "http",
"method": "GET",
"bodyType": "json"
},
"output": {
"type": "json",
"example": {
"solar": {
"sunshine_duration_h": 8.5,
"shortwave_radiation_sum_mj": 24.21
},
"source": "Open-Meteo",
"location": {
"lat": 51.5,
"lon": -0.12
}
}
}
},
"schema": {
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"type",
"method",
"bodyType",
"body"
],
"properties": {
"body": {
"required": [
"latitude",
"longitude"
],
"properties": {
"latitude": {
"type": "number",
"description": "Latitude (-90 to 90)"
},
"longitude": {
"type": "number",
"description": "Longitude (-180 to 180)"
}
}
},
"type": {
"type": "string",
"const": "http"
},
"method": {
"enum": [
"POST",
"PUT",
"PATCH"
],
"type": "string"
},
"bodyType": {
"enum": [
"json",
"form-data",
"text"
],
"type": "string"
}
},
"additionalProperties": false
},
"output": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string"
},
"example": {
"type": "object"
}
}
}
}
}
}
},
"x402Version": 2
},
{
"error": "Payment required",
"accepts": [
{
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"payTo": "0x3C74Ce3f8566Ff04B312320E7c264A691c409992",
"amount": "1000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 300
},
{
"asset": "0x60a3E35Cc302bFA44Cb288Bc5a4F316Fdb1adb42",
"extra": {
"name": "EURC",
"version": "2"
},
"payTo": "0x3C74Ce3f8566Ff04B312320E7c264A691c409992",
"amount": "1000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 300
}
],
"resource": {
"url": "https://weather.x402.press/climate/historical",
"tags": [
"climate",
"historical",
"data",
"x402"
],
"mimeType": "application/json",
"description": "Historical weather data from 1940 to present â temperature, precipitation, and more.",
"serviceName": "Weather"
},
"extensions": {
"bazaar": {
"info": {
"input": {
"body": {
"end_date": "2020-01-07",
"latitude": 51.5,
"longitude": -0.12,
"start_date": "2020-01-01"
},
"type": "http",
"method": "GET",
"bodyType": "json"
},
"output": {
"type": "json",
"example": {
"data": [
{
"date": "2020-01-01",
"temp_max_c": 9.8,
"temp_min_c": 4.2
}
],
"days": 7,
"source": "Open-Meteo Archive (ERA5)",
"end_date": "2020-01-07",
"location": {
"lat": 51.5,
"lon": -0.12
},
"start_date": "2020-01-01"
}
}
},
"schema": {
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"type",
"method",
"bodyType",
"body"
],
"properties": {
"body": {
"required": [
"latitude",
"longitude",
"start_date",
"end_date"
],
"properties": {
"end_date": {
"type": "string",
"description": "End date YYYY-MM-DD"
},
"latitude": {
"type": "number",
"description": "Latitude (-90 to 90)"
},
"longitude": {
"type": "number",
"description": "Longitude (-180 to 180)"
},
"start_date": {
"type": "string",
"description": "Start date YYYY-MM-DD"
}
}
},
"type": {
"type": "string",
"const": "http"
},
"method": {
"enum": [
"POST",
"PUT",
"PATCH"
],
"type": "string"
},
"bodyType": {
"enum": [
"json",
"form-data",
"text"
],
"type": "string"
}
},
"additionalProperties": false
},
"output": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string"
},
"example": {
"type": "object"
}
}
}
}
}
}
},
"x402Version": 2
}
] UPTIME
RESPONSE TIME
30d UPTIME 100%
UPTIME 30D 100%
AVG RESP 242ms
TOTAL CHECKS 130
RECENT CHECKS
TIME STATUS RESP
● OK 179ms
● SLOW 372ms
● OK 221ms
● OK 218ms
● OK 266ms
● OK 172ms
● OK 171ms
● OK 261ms
● OK 181ms
● OK 205ms
● SLOW 401ms
● OK 197ms
● OK 263ms
● OK 289ms
● OK 256ms
EMBED THIS BADGE
// HTML
<a href="https://x402-list.com/services/weather?utm_source=badge&utm_medium=referral&utm_campaign=embed"> <img src="https://x402-list.com/badge/weather.svg" alt="Weather listed on x402-list" height="26"> </a>
// Markdown
[](https://x402-list.com/services/weather?utm_source=badge&utm_medium=referral&utm_campaign=embed)