latitudestringrequired
WGS84 latitude of the location. Multiple coordinates can be comma-separated.
https://api.sandbase.ai/v1/api/open-meteo/forecastUp to 16-day hourly, daily and current weather forecast by coordinates: temperature, precipitation, wind, cloud cover and more.
Your output will appear here
Complete the inputs, then click Run.
Up to 16-day hourly, daily and current weather forecast by coordinates: temperature, precipitation, wind, cloud cover and more.
The result is returned in outputs[0].data as the official Open-Meteo API response, unchanged.
curl -X POST "https://api.sandbase.ai/v1/api/open-meteo/forecast" \
-H "Authorization: Bearer $SANDBASE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"latitude": "52.52", "longitude": "13.41", "current": "temperature_2m,wind_speed_10m"}'
| Name | Type | Required | Description |
|---|---|---|---|
cell_selection | string | No | Grid-cell preference for the coordinate. Default land. |
current | string | No | Comma-separated list of current-condition variables to return. Common values: temperature_2m, relative_humidity_2m, apparent_temperature, is_day, `preci |
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 |
elevation | string | No | Manual elevation (meters) for statistical downscaling. Defaults to a 90m DEM. Use nan to disable downscaling. |
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. |
forecast_hours | integer | No | Limit the forecast to a given number of hours from now. |
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. |
minutely_15 | string | No | Comma-separated 15-minutely variables (Central Europe & North America high-resolution models only). |
models | string | No | Comma-separated forecast models to use. Default auto selects the best model mix per location. |
past_days | integer | No | Number of past days to include (0-92). Default 0. |
past_hours | integer | No | Include a given number of past hours. |
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. |
Flat price per call. Failed calls are not charged.
Start building
Platform API endpoint with unified authentication and usage tracking.
# The quoted heredoc keeps Unicode and shell metacharacters unchanged.
result=$(curl --fail-with-body --silent \
-X POST "https://api.sandbase.ai/v1/api/open-meteo/forecast" \
-H "Authorization: Bearer $SANDBASE_API_KEY" \
-H "Content-Type: application/json" \
--data-binary @- <<'SANDBASE_JSON'
{
"daily": "temperature_2m_max,temperature_2m_min,precipitation_sum",
"hourly": "temperature_2m,precipitation,wind_speed_10m",
"models": "auto",
"current": "temperature_2m,weather_code",
"end_date": "2024-01-07",
"latitude": "52.52",
"timezone": "Europe/Berlin",
"elevation": "38",
"longitude": "13.41",
"past_days": 0,
"start_date": "2024-01-01",
"timeformat": "iso8601",
"minutely_15": "temperature_2m,precipitation",
"forecast_days": 7,
"cell_selection": "land",
"wind_speed_unit": "kmh",
"temperature_unit": "celsius",
"precipitation_unit": "mm"
}
SANDBASE_JSON
)
printf '%s\n' "$result"Set your SandBase API key in your server environment. Requests use Bearer authentication.
export SANDBASE_API_KEY="YOUR_API_KEY"Keep your key on the server. Do not expose it in browser code.
latitudestringrequiredWGS84 latitude of the location. Multiple coordinates can be comma-separated.
longitudestringrequiredWGS84 longitude of the location (negative for the Americas). Multiple coordinates can be comma-separated.
cell_selectionstringGrid-cell preference for the coordinate. Default `land`.
Default: "land"
Possible values: land, sea, nearest
currentstringComma-separated list of current-condition variables to return. Common values: `temperature_2m`, `relative_humidity_2m`, `apparent_temperature`, `is_day`, `precipitation`, `weather_code`, `wind_speed_10m`, `wind_direction_10m`.
dailystringComma-separated list of daily aggregation variables to return. Requires `timezone`. Common values: `temperature_2m_max`, `temperature_2m_min`, `temperature_2m_mean`, `precipitation_sum`, `rain_sum`, `snowfall_sum`, `weather_code`, `sunrise`, `sunset`, `sunshine_duration`, `wind_speed_10m_max`, `uv_i
elevationstringManual elevation (meters) for statistical downscaling. Defaults to a 90m DEM. Use `nan` to disable downscaling.
end_datestringEnd of the interval, `yyyy-mm-dd` (ISO 8601).
forecast_daysintegerNumber of forecast days to return (0-16). Default 7.
Default: 7
forecast_hoursintegerLimit the forecast to a given number of hours from now.
hourlystringComma-separated list of hourly variables to return. Common values: `temperature_2m`, `relative_humidity_2m`, `dew_point_2m`, `apparent_temperature`, `precipitation`, `rain`, `showers`, `snowfall`, `weather_code`, `pressure_msl`, `cloud_cover`, `wind_speed_10m`, `wind_direction_10m`, `wind_gusts_10m`
minutely_15stringComma-separated 15-minutely variables (Central Europe & North America high-resolution models only).
modelsstringComma-separated forecast models to use. Default `auto` selects the best model mix per location.
past_daysintegerNumber of past days to include (0-92). Default 0.
Default: 0
past_hoursintegerInclude a given number of past hours.
precipitation_unitstringPrecipitation unit. Default `mm`.
Default: "mm"
Possible values: mm, inch
start_datestringStart of the interval, `yyyy-mm-dd` (ISO 8601).
temperature_unitstringTemperature unit. Default `celsius`.
Default: "celsius"
Possible values: celsius, fahrenheit
timeformatstringTime output format. Default `iso8601`.
Default: "iso8601"
Possible values: iso8601, unixtime
timezonestringIANA time zone name (e.g. `Europe/Berlin`) or `auto` to resolve from coordinates. Defaults to `GMT`.
wind_speed_unitstringWind speed unit. Default `kmh`.
Default: "kmh"
Possible values: kmh, ms, mph, kn
Saved example response for this API; no live request is made when viewing it.
No saved response has been published. Run the API in Playground to inspect its response.
Explore more
| API | Price | Response |
|---|---|---|
Open-Meteo Weather ForecastThis API Open-Meteo | $0.0001 per call | JSON |
Open-Meteo | $0.0001 per call | JSON |
Open-Meteo | $0.0001 per call | JSON |
Open-Meteo | $0.0001 per call | JSON |
Open-Meteo | $0.0001 per call | JSON |
Open-Meteo | $0.0001 per call | JSON |
Questions
Send a POST request to https://api.sandbase.ai/v1/api/open-meteo/forecast 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.
$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.
Required: latitude (string) and longitude (string). Optional: cell_selection (one of land, sea, nearest), current (string), daily (string), elevation (string), end_date (string) and forecast_days (integer) and 12 more. The Parameters table and the Playground on this page list every field.
A JSON response returned in the same HTTP request (synchronous).
No. Open-Meteo Weather Forecast 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.