Skip to content

Point forecast (Open-Meteo compatible)

GET
/v1/forecast
curl --request GET \
--url 'https://api.vertexmaps.com/v1/forecast?latitude=example&longitude=example' \
--header 'Authorization: Bearer <token>'

Hourly, current and daily values at one or more locations. Same parameter names and response shape as Open-Meteo’s /v1/forecast, plus Vertex fields (wstar, top_of_lift, cloud_base, cu_depth, winds aloft per 1000 ft, smoke). Several models → fields suffixed _model on a shared time axis. Alias: /v1/point. History parameters are rejected (400) until the archive-backed history ships.

latitude
required
string

Comma list, WGS84

longitude
required
string

Comma list, same length

hourly
string

Comma list of: temperature_2m, dew_point_2m, relative_humidity_2m, cloud_cover, cloud_cover_low, cloud_cover_mid, cloud_cover_high, precipitation, wind_speed_10m, wind_direction_10m, wind_gusts_10m, cape, surface_pressure, pressure_msl, boundary_layer_height, wstar, hcrit, top_of_lift, top_of_lift_agl, cloud_base, cloud_base_agl, cu_depth, snowfall, snowfall_water_equivalent, snow_depth, snow_water_equivalent, smoke, us_aqi, wind_speed_{1000..18000}ft, wind_direction_{1000..18000}ft

current
string

Comma list of hourly field names; value at the current hour

daily
string

Comma list of: temperature_2m_max, temperature_2m_min, precipitation_sum, snowfall_sum, wind_speed_10m_max, wind_gusts_10m_max, cloud_cover_mean, relative_humidity_2m_mean, cape_max, wstar_max, top_of_lift_max, cloud_base_min, smoke_max, us_aqi_max

models
string

Comma list of hrrr|rrfs|gfs|ecmwf|nam (default hrrr; Open-Meteo slugs accepted)

temperature_unit
string

Celsius | fahrenheit

wind_speed_unit
string

Kmh | ms | mph | kn

precipitation_unit
string

Mm | inch (also drives snowfall/snow_depth)

timezone
string

IANA name, GMT, or auto (CONUS approximation)

timeformat
string

Iso8601 | unixtime

format
string

Json | csv | flatbuffers (the Open-Meteo SDK binary)

forecast_days
integer

1-16, counted from today in the response timezone

forecast_hours
integer

1-384, counted from the current hour

start_hour
string

YYYY-MM-DDTHH:MM in the response timezone

end_hour
string

YYYY-MM-DDTHH:MM in the response timezone

elevation
number

Metres; overrides the 90 m DEM for the lapse-rate correction

dry_run
integer

1 → return {product, credits} without executing

One object, or an array when several locations were given

Media typeapplication/json
Example
{
"latitude": 46.87,
"longitude": -113.99,
"elevation": 980,
"model": "hrrr",
"model_run": "2026-09-19T00:00Z",
"model_elevation": 1204,
"utc_offset_seconds": -21600,
"timezone": "America/Denver",
"timezone_abbreviation": "MDT",
"hourly_units": {
"time": "iso8601",
"temperature_2m": "°C",
"wstar": "m/s",
"top_of_lift": "m"
},
"hourly": {
"time": [
"2026-09-18T18:00"
],
"temperature_2m": [
23.1
],
"wstar": [
2.4
],
"top_of_lift": [
3820
]
}
}

Bad parameter, unknown field, field not available for the model, location outside CONUS

Missing or invalid API key

Quota exceeded (daily, monthly or spend cap); body has scope + resets_at

Burst limit; retry after 10 s

Model has no published store yet