# ForgeMesh Historical Weather API

> ForgeMesh Historical Weather API is a paid API for AI agents from x402.forgemesh.io, paid per call via x402, $0.005/call, status unknown (last checked 2026-09-15).

Returns daily max/min temperature and total precipitation for any lat/lon coordinate over a historical date range back to 1940, sourced from a reanalysis weather model.

## Facts

- Endpoint: POST https://x402.forgemesh.io/historical-weather
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/forgemesh-historical-weather-api-9c08d4c9
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_ksjg7bHy8dLE85E8g-Wic

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability forgemesh-historical-weather-api-9c08d4c9 -d '<json body>'
```

Example prompt: Can you pull up the daily high and low temperatures and total precipitation for Houston, TX (lat 29.76, lon -95.36) from June 1 to June 30, 2023? I need the actual recorded historical conditions, not a forecast.

## When to prefer this

Use this endpoint when you need actual historical weather records (not forecasts) for any latitude/longitude going back to 1940. Ideal for insurance claim verification, agricultural analysis, financial backtesting, and research requiring structured daily temperature and precipitation data at arbitrary global coordinates.

## Known failure modes

- Invalid or missing latitude/longitude returns an error
- Date range outside supported historical window (pre-1940) may return an error or empty data
- Malformed date strings (not YYYY-MM-DD format) cause validation errors
- Future dates or dates beyond the model's coverage may return incomplete data
- Coordinates over land areas with no station coverage may have lower accuracy
- Payment failure via x402 protocol blocks the request

## How this service works

Historical weather API: daily maximum temperature, minimum temperature, and total precipitation for any latitude/longitude over a past date range, back to 1940, as structured JSON from a reanalysis weather model. Use for backtesting, insurance claim verification, agriculture, and research agents that need actual recorded conditions. Cached 6 hours.

## Output

A structured JSON object containing daily records for each day in the requested date range, including maximum temperature, minimum temperature, and total precipitation, sourced from a reanalysis weather model. Results are cached for 6 hours.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "end_date": {
   "type": "string",
   "description": "End date, YYYY-MM-DD, e.g. 2026-06-05"
  },
  "latitude": {
   "type": "string",
   "description": "Latitude, e.g. 29.76"
  },
  "longitude": {
   "type": "string",
   "description": "Longitude, e.g. -95.36"
  },
  "start_date": {
   "type": "string",
   "description": "Start date, YYYY-MM-DD, e.g. 2026-06-01"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "data": {
   "daily": {
    "time": [
     "2026-06-01",
     "2026-06-02"
    ],
    "precipitation_sum": [
     0.2,
     0
    ],
    "temperature_2m_max": [
     22.4,
     25.5
    ],
    "temperature_2m_min": [
     13.7,
     10.8
    ]
   },
   "daily_units": {
    "precipitation_sum": "mm",
    "temperature_2m_max": "°C",
    "temperature_2m_min": "°C"
   }
  },
  "attribution": "Open-Meteo.com (CC BY 4.0), ERA5 reanalysis"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/forgemesh-historical-weather-api-9c08d4c9/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402.forgemesh.io](https://www.zero.xyz/host/x402.forgemesh.io/llms.txt)
