# Open-Meteo Previous Model Runs API

> Weather forecasts from earlier model runs for the same coordinates, to compare how forecasts changed day by day.

Source: https://www.sandbase.ai/apis/open-meteo/previous-runs
API reference: https://www.sandbase.ai/apis/open-meteo/previous-runs/docs

## Facts

- Provider: Open-Meteo
- Type: Data API
- Endpoint: `POST https://api.sandbase.ai/v1/api/open-meteo/previous-runs`
- Price: $0.0001 per call
- Free allowance: 100 calls per organization per UTC day, shared across eligible APIs
- Capabilities: api, open meteo, weather
- Billing: pay per use from one SandBase balance; no provider account or subscription needed

## Call it

`POST https://api.sandbase.ai/v1/api/open-meteo/previous-runs` with `Authorization: Bearer $SANDBASE_API_KEY` and the parameters as a JSON body.

| Parameter | Type | Required | Allowed values |
| --- | --- | --- | --- |
| `latitude` | string | yes |  |
| `longitude` | string | yes |  |
| `cell_selection` | string | no | land, sea, nearest |
| `daily` | string | no |  |
| `end_date` | string | no |  |
| `forecast_days` | integer | no |  |
| `hourly` | string | no |  |
| `models` | string | no |  |
| `past_days` | integer | no |  |
| `precipitation_unit` | string | no | mm, inch |
| `start_date` | string | no |  |
| `temperature_unit` | string | no | celsius, fahrenheit |
| `timeformat` | string | no | iso8601, unixtime |
| `timezone` | string | no |  |
| `wind_speed_unit` | string | no | kmh, ms, mph, kn |

## FAQ

### How do I use the Open-Meteo Previous Model Runs API?

Send a POST request to https://api.sandbase.ai/v1/api/open-meteo/previous-runs with your SandBase API key in the Authorization header (Bearer) and the parameters as a JSON body. You can also try it in the Playground on this page without writing code.

### How much does the Open-Meteo Previous Model Runs API cost?

$0.0001 per call. Every organization gets 100 free calls per UTC day, shared across eligible SandBase APIs including this one; after that each call is billed at this price from your SandBase balance. There is no subscription.

### What parameters does the Open-Meteo Previous Model Runs API accept?

Required: latitude (string) and longitude (string). Optional: cell_selection (one of land, sea, nearest), daily (string), end_date (string), forecast_days (integer), hourly (string) and models (string) and 7 more. The Parameters table and the Playground on this page list every field.

### What does the Open-Meteo Previous Model Runs API return?

A JSON response returned in the same HTTP request (synchronous).

### Do I need a Open-Meteo developer account or API key?

No. Open-Meteo Previous Model Runs runs through SandBase, so one SandBase API key covers this endpoint and every other API and model in the catalog. You do not need to apply for Open-Meteo API access separately.

## README

### Open-Meteo Previous Model Runs API

Weather forecasts from earlier model runs for the same coordinates, to compare how forecasts changed day by day.

The result is returned in `outputs[0].data` as the official Open-Meteo API response, unchanged.

#### Request

```bash
curl -X POST "https://api.sandbase.ai/v1/api/open-meteo/previous-runs" \
  -H "Authorization: Bearer $SANDBASE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"latitude": "52.52", "longitude": "13.41", "hourly": "temperature_2m_previous_day1", "forecast_days": 1}'
```

#### Parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `cell_selection` | string | No | Grid-cell preference for the coordinate. Default `land`. |
| `daily` | string | No | Comma-separated list of daily aggregation variables to return. Requires `timezone`. Common values: `temperature_2m_max`, `temperature_2m_min`, `temperature_2m_m |
| `end_date` | string | No | End of the interval, `yyyy-mm-dd` (ISO 8601). |
| `forecast_days` | integer | No | Number of forecast days to return (0-16). Default 7. |
| `hourly` | string | No | Comma-separated list of hourly variables to return. Common values: `temperature_2m`, `relative_humidity_2m`, `dew_point_2m`, `apparent_temperature`, `precipitat |
| `latitude` | string | Yes | WGS84 latitude of the location. Multiple coordinates can be comma-separated. |
| `longitude` | string | Yes | WGS84 longitude of the location (negative for the Americas). Multiple coordinates can be comma-separated. |
| `models` | string | No | Comma-separated forecast models. Default best match. |
| `past_days` | integer | No | Number of past days to include (0-92). Default 0. |
| `precipitation_unit` | string | No | Precipitation unit. Default `mm`. |
| `start_date` | string | No | Start of the interval, `yyyy-mm-dd` (ISO 8601). |
| `temperature_unit` | string | No | Temperature unit. Default `celsius`. |
| `timeformat` | string | No | Time output format. Default `iso8601`. |
| `timezone` | string | No | IANA time zone name (e.g. `Europe/Berlin`) or `auto` to resolve from coordinates. Defaults to `GMT`. |
| `wind_speed_unit` | string | No | Wind speed unit. Default `kmh`. |

#### Pricing

Flat price per call. Failed calls are not charged.
