forecast: Get weather forecast

API: open-meteo.com:open-meteo
Endpoint: /v1/forecast
Response format: application/json
Auth: unknown
Method: GET
Last Status: 200
Latency: 166ms

Description

Returns weather forecast data for a specific location. Supports hourly, daily, and current weather variables.

Parameters (17)

apikey (string, query, optional)

Required for commercial use.

cell_selection (string, query, optional, default: land)

Grid cell selection strategy.

Constraints: {'enum': ['land', 'sea', 'nearest']}

current (array, query, optional)

A list of current condition variables to return.

daily (array, query, optional)

A list of daily weather variable aggregations to return. Requires timezone parameter. Options: temperature_2m_max, temperature_2m_min, precipitation_sum, etc.

elevation (number, query, optional)

The elevation used for statistical downscaling. Set to 'nan' to disable downscaling.

end_date (string, query, optional)

End date (yyyy-mm-dd).

forecast_days (integer, query, optional)

Number of forecast days (0-16). Default is 7.

Constraints: {'minimum': 0, 'maximum': 16}

hourly (array, query, optional)

A list of hourly weather variables to return. Options: temperature_2m, relative_humidity_2m, dew_point_2m, apparent_temperature, precipitation, rain, showers, snowfall, weather_code, cloud_cover, wind_speed_10m, wind_direction_10m, wind_gusts_10m, pressure_msl, surface_pressure.

latitude (number, query, required)

Geographical WGS84 latitude of the location. Multiple coordinates can be comma separated.

longitude (number, query, required)

Geographical WGS84 longitude of the location. Multiple coordinates can be comma separated.

past_days (integer, query, optional)

Number of past days to include (0-92).

Constraints: {'minimum': 0, 'maximum': 92}

precipitation_unit (string, query, optional, default: mm)

Precipitation unit.

Constraints: {'enum': ['mm', 'inch']}

start_date (string, query, optional)

Start date (yyyy-mm-dd).

temperature_unit (string, query, optional, default: celsius)

Temperature unit.

Constraints: {'enum': ['celsius', 'fahrenheit']}

timeformat (string, query, optional, default: iso8601)

Time format. 'unixtime' returns UNIX epoch time in seconds.

Constraints: {'enum': ['iso8601', 'unixtime']}

timezone (string, query, optional)

Timezone for local timestamps. Use 'auto' for automatic resolution from coordinates.

wind_speed_unit (string, query, optional, default: kmh)

Wind speed unit.

Constraints: {'enum': ['kmh', 'ms', 'mph', 'kn']}

Examples (1)

Get weather forecast probe-gate
curl 'https://api.open-meteo.com/v1/forecast?temperature_unit=celsius&wind_speed_unit=kmh&precipitation_unit=mm&timeformat=iso8601&cell_selection=land'
import requests

resp = requests.get(
    "https://api.open-meteo.com/v1/forecast",
    params={
        'temperature_unit': 'celsius',
        'wind_speed_unit': 'kmh',
        'precipitation_unit': 'mm',
        'timeformat': 'iso8601',
        'cell_selection': 'land',
    },
)
data = resp.json()
import zingu_apis

api = zingu_apis.api("open-meteo")
result = api.fetch("v1/forecast", temperature_unit="celsius", wind_speed_unit="kmh", precipitation_unit="mm", timeformat="iso8601", cell_selection="land")

for item in result:
    print(item)
const resp = await fetch("https://api.open-meteo.com/v1/forecast?temperature_unit=celsius&wind_speed_unit=kmh&precipitation_unit=mm&timeformat=iso8601&cell_selection=land");
const data = await resp.json();

Probe History

Latency

Status Codes

TimeStatusLatencySize
2026-04-16 02:13:51.312556 200 166ms
2026-04-15 01:35:56.338474 200 176ms
2026-04-14 00:59:43.512505 200 166ms
2026-04-12 14:56:26.480693 200 163ms
2026-04-10 05:09:31.439109 200 109ms
2026-04-09 02:43:45.084963 200 165ms
2026-03-27T23:17:42.306441 200 107ms