This endpoint returns gridded forecast output for a single variable, or for all variables when variable is all, as NetCDF (default) or Zarr.
The variable and level parameters are used to specify the variable and level to retrieve.
Use the model-specific URL below to choose which weather model's forecast to retrieve. You can find a list of available models here.
WeatherMesh-6
WeatherMesh-6 processes its 128 member-ensemble to output a number of summary statistics, including mean, standard deviation, percentiles, threshold probabilities, and precipitation-type probabilities. Use the variables endpoint to query which fields are available for each parameter. Use the include_distribution parameter to request these fields, or include_members to get all 128 raw ensemble members.
Individual variables are only available for active forecasts. For archived forecasts, only the complete dataset with all variables is available. Set the variable parameter to all .
For upper-level atmospheric variables, set the pressure level in hectopascals (hPa) using the level query parameter alongside the variable . To get the same list as JSON via the API, see the Variables endpoint
| Available levels (hPa) |
|---|
| 10 30 50 70 100 150 200 250 300 350 400 450 500 550 600 650 700 750 800 850 900 925 950 975 1000 |
| Available levels (hPa) |
|---|
| Surface variables only. |
| Available levels (hPa) |
|---|
| Only surface level variables are available. |
| Available levels (hPa) |
|---|
| Only surface level variables are available. |
| Available levels (hPa) |
|---|
| Only surface level variables are available. |
| Available levels (hPa) |
|---|
| Only surface level variables are available. |
| Available levels (hPa) |
|---|
| Only surface level variables are available. |
All variables for each model are listed below. To get the same list as JSON via the API, see the Variables endpoint .
| Name | Type | Description | Unit |
|---|---|---|---|
| all | all | All variables at all heights. Only variable available for archived initialization_times. | - |
| boundary_layer_height | surface | Boundary layer height | m |
| cape | surface | Convective available potential energy | J/kg |
| cloud_base_height | surface | Cloud base height | m |
| dewpoint_2m | surface | 2m dewpoint temperature | K |
| direct_solar_radiation_3h | surface | 3h total sky direct solar radiation at surface | J/m2 |
| forecast_surface_roughness | surface | Forecast surface roughness | m |
| high_cloud_cover | surface | High cloud cover | 0-1 |
| latent_heat_flux_3h | surface | 3h surface latent heat flux | J/m2 |
| low_cloud_cover | surface | Low cloud cover | 0-1 |
| max_temperature_2m_3h | surface | Maximum temperature over the next three hours | K |
| mean_total_precipitation_rate | surface | Mean total precipitation rate | kg/m2/s |
| medium_cloud_cover | surface | Medium cloud cover | 0-1 |
| min_temperature_2m_3h | surface | Minimum temperature over the next three hours | K |
| p_type | surface | Precipitation type 0 rain, 1 freezing rain, 2 ice pellets, 3 snow | category |
| pressure_msl | surface | Mean sea level pressure | Pa |
| runoff_3h | surface | 3h runoff | mm |
| sensible_heat_flux_3h | surface | 3h surface sensible heat flux | J/m2 |
| short_wave_radiation | surface | Mean surface net short wave radiation flux | W/m2 |
| skin_temperature | surface | Skin temperature | K |
| snowfall_3h | surface | 3h snowfall | mm |
| soil_moisture_level_1 | surface | Volumetric soil water layer 1 | m3/m3 |
| soil_moisture_level_2 | surface | Volumetric soil water layer 2 | m3/m3 |
| soil_temperature_level_1 | surface | Soil temperature level 1 | K |
| soil_temperature_level_2 | surface | Soil temperature level 2 | K |
| solar_radiation_downwards_3h | surface | 3h surface solar radiation downwards | J/m2 |
| surface_pressure | surface | Surface pressure | Pa |
| surface_solar_radiation_3h | surface | 3h surface net solar radiation | J/m2 |
| temperature_2m | surface | 2m temperature | K |
| thermal_radiation_downwards_3h | surface | 3h surface thermal radiation downwards | J/m2 |
| top_solar_radiation_3h | surface | 3h top net solar radiation | J/m2 |
| total_cloud_cover | surface | Total cloud cover | 0-1 |
| total_column_water_vapour | surface | Total column water vapour | kg/m2 |
| total_precipitation_3h | surface | Total precipitation over the last three hours | mm |
| wind_speed_100m | surface | 100m wind speed Separately trained field, independent of u/v components. | m/s |
| wind_speed_10m | surface | 10m wind speed Separately trained field, independent of u/v components. | m/s |
| wind_speed_250 | surface | 250 hPa wind speed | m/s |
| wind_u_100m | surface | 100m u-component of windwind_speed_100m is a separately trained field, independent of wind_u/v_100m. | m/s |
| wind_u_10m | surface | 10m u-component of windwind_speed_10m is a separately trained field, independent of wind_u/v_10m. | m/s |
| wind_v_100m | surface | 100m v-component of windwind_speed_100m is a separately trained field, independent of wind_u/v_100m. | m/s |
| wind_v_10m | surface | 10m v-component of windwind_speed_10m is a separately trained field, independent of wind_u/v_10m. | m/s |
| geopotential | upper-level | Geopotential Not geopotential height | m2/s2 |
| specific_humidity | upper-level | The mass of water vapor per unit mass of dry air | kg/kg |
| temperature | upper-level | Temperature | K |
| wind_u | upper-level | U-component of wind | m/s |
| wind_v | upper-level | V-component of wind | m/s |
| Name | Type | Description | Unit |
|---|---|---|---|
| all | all | All variables. | - |
| dewpoint_2m | surface | 2m dewpoint temperature | K |
| temperature_2m | surface | 2m temperature | K |
| wind_gust_10m | surface | 10m wind gust | m/s |
| wind_speed_100m | surface | 100m wind speed Separately trained field, independent of u/v components. | m/s |
| wind_u_100m | surface | 100m u-component of windwind_speed_100m is a separately trained field, independent of wind_u/v_100m. | m/s |
| wind_u_10m | surface | 10m u-component of wind | m/s |
| wind_v_100m | surface | 100m v-component of windwind_speed_100m is a separately trained field, independent of wind_u/v_100m. | m/s |
| wind_v_10m | surface | 10m v-component of wind | m/s |
| Name | Type | Description | Unit |
|---|---|---|---|
| all | all | All variables at all heights. Only variable available for archived initialization_times. | - |
| dewpoint_2m | surface | 2m dewpoint temperature | K |
| pressure_msl | surface | Mean sea level pressure | Pa |
| temperature_2m | surface | 2m temperature | K |
| total_precipitation_1h | surface | Total precipitation over the last hour | mm |
| wind_u_100m | surface | 100m u-component of wind | m/s |
| wind_u_10m | surface | 10m u-component of wind | m/s |
| wind_v_100m | surface | 100m v-component of wind | m/s |
| wind_v_10m | surface | 10m v-component of wind | m/s |
| Name | Type | Description | Unit |
|---|---|---|---|
| all | all | All variables at all heights. Only variable available for archived initialization_times. | - |
| temperature_2m | surface | 2m temperature | K |
| Name | Type | Description | Unit |
|---|---|---|---|
| all | all | All variables at all heights. Only variable available for archived initialization_times. | - |
| dewpoint_2m | surface | 2m dewpoint temperature | K |
| pressure_msl | surface | Mean sea level pressure | Pa |
| temperature_2m | surface | 2m temperature | K |
| total_precipitation_1h | surface | Total precipitation over the last hour | mm |
| wind_u_100m | surface | 100m u-component of wind | m/s |
| wind_u_10m | surface | 10m u-component of wind | m/s |
| wind_v_100m | surface | 100m v-component of wind | m/s |
| wind_v_10m | surface | 10m v-component of wind | m/s |
| Name | Type | Description | Unit |
|---|---|---|---|
| all | all | All variables at all heights. Only variable available for archived initialization_times. | - |
| dewpoint_2m | surface | 2m dewpoint temperature | K |
| pressure_msl | surface | Mean sea level pressure | Pa |
| temperature_2m | surface | 2m temperature | K |
| total_precipitation_1h | surface | Total precipitation over the last hour | mm |
| wind_u_100m | surface | 100m u-component of wind | m/s |
| wind_u_10m | surface | 10m u-component of wind | m/s |
| wind_v_100m | surface | 100m v-component of wind | m/s |
| wind_v_10m | surface | 10m v-component of wind | m/s |
| Name | Type | Description | Unit |
|---|---|---|---|
| all | all | All variables at all heights. Only variable available for archived initialization_times. | - |
| dewpoint_2m | surface | 2m dewpoint temperature | K |
| pressure_msl | surface | Mean sea level pressure | Pa |
| temperature_2m | surface | 2m temperature | K |
| total_precipitation_1h | surface | Total precipitation over the last hour | mm |
| wind_u_10m | surface | 10m u-component of wind | m/s |
| wind_v_10m | surface | 10m v-component of wind | m/s |
| Name | Description | Format |
|---|---|---|
| variable Required | Variable to download. Use the Variables endpoint to list what's available for your model. Set all to retrieve all variables at all heights. Specify a surface variable (e.g., temperature_2m) or combine with level for upper-level variables (e.g., temperature at 500 hPa). | string |
| level Optional | Pressure level in hectopascals for upper-level variables. | integer |
| include_distribution Optional | If true, adds distribution outputs such as percentiles, standard deviation, thresholds, and precipitation-type probabilities. Default: false. Only available for selected variables. | boolean |
| include_members Optional | If true, adds all 128 ensemble members to the output. Default: false. Only available for selected variables. | boolean |
| time Required | The time at which the forecast is valid. Alternatively, you can specify initialization_time and forecast_hour. This looks solely at the date and the hour; minutes and seconds are discarded. If there is no forecast available within an hour of the requested time, it will return a 404. | YYYY-MM-DDThh:mm:ssZ |
| initialization_time Alternative | The initialization time for the forecast. Must be used with forecast_hour. Cannot be used with time. Uses only date, hour and minutes. Seconds are discarded. | YYYY-MM-DDThh:mm:ssZ |
| forecast_hour Alternative | Hours from the initialization_time for which to get the forecast. Must be used with initialization_time. Cannot be used with time. If initialization_time is 2023-01-01T00:00:00 and forecast_hour is 6, the forecast will be for 2023-01-01T06:00:00. | integer |
| format Optional | Output file format, defaults to Zarr. | zarr or netcdf |
| as_url Optional | If true, returns a JSON response with a presigned download URL instead of the binary file directly. The URL points to the full archived Zarr file — variable and level filtering are not applied. Useful for MCP clients and programmatic access. Default: false. | boolean |
| Name | Description | Format |
|---|---|---|
| variable Required | Variable to download. Use the Variables endpoint to list what's available for your model. Set all to retrieve all variables at all heights. Specify a surface variable (e.g., temperature_2m) or combine with level for upper-level variables (e.g., temperature at 500 hPa). | string |
| level Optional | Pressure level in hectopascals for upper-level variables. | integer |
| time Required | The time at which the forecast is valid. Alternatively, you can specify initialization_time and forecast_hour. This looks solely at the date and the hour; minutes and seconds are discarded. If there is no forecast available within an hour of the requested time, it will return a 404. | YYYY-MM-DDThh:mm:ssZ |
| initialization_time Alternative | The initialization time for the forecast. Must be used with forecast_hour. Cannot be used with time. Uses only date, hour and minutes. Seconds are discarded. | YYYY-MM-DDThh:mm:ssZ |
| forecast_hour Alternative | Hours from the initialization_time for which to get the forecast. Must be used with initialization_time. Cannot be used with time. If initialization_time is 2023-01-01T00:00:00 and forecast_hour is 6, the forecast will be for 2023-01-01T06:00:00. | integer |
| format Optional | Output file format, defaults to Zarr. | zarr or netcdf |
| domain Optional | Regional domain to retrieve. Default: conus. Europe available soon. | conus or europe |
| as_url Optional | If true, returns a JSON response with a presigned download URL instead of the binary file directly. The URL points to the full archived Zarr file — variable and level filtering are not applied. Useful for MCP clients and programmatic access. Default: false. | boolean |
| Name | Description | Format |
|---|---|---|
| variable Required | Variable to download. Use the Variables endpoint to list what's available for your model. Set all to retrieve all variables at all heights. Specify a surface variable (e.g., temperature_2m) or combine with level for upper-level variables (e.g., temperature at 500 hPa). | string |
| time Required | The time at which the forecast is valid. Alternatively, you can specify initialization_time and forecast_hour. This looks solely at the date and the hour; minutes and seconds are discarded. If there is no forecast available within an hour of the requested time, it will return a 404. | YYYY-MM-DDThh:mm:ssZ |
| initialization_time Alternative | The initialization time for the forecast. Must be used with forecast_hour. Cannot be used with time. Uses only date, hour and minutes. Seconds are discarded. | YYYY-MM-DDThh:mm:ssZ |
| forecast_hour Alternative | Hours from the initialization_time for which to get the forecast. Must be used with initialization_time. Cannot be used with time. If initialization_time is 2023-01-01T00:00:00 and forecast_hour is 6, the forecast will be for 2023-01-01T06:00:00. | integer |
| format Optional | Output file format, defaults to NetCDF. | netcdf or zarr |
| as_url Optional | If true, returns a JSON response with a presigned download URL instead of the binary file directly. The URL points to the full archived Zarr file — variable and level filtering are not applied. Useful for MCP clients and programmatic access. Default: false. | boolean |
| Name | Description | Format |
|---|---|---|
| variable Required | Variable to download. Use the Variables endpoint to list what's available for your model. Set all to retrieve all variables at all heights. Specify a surface variable (e.g., temperature_2m) or combine with level for upper-level variables (e.g., temperature at 500 hPa). | string |
| time Required | The time at which the forecast is valid. Alternatively, you can specify initialization_time and forecast_hour. This looks solely at the date and the hour; minutes and seconds are discarded. If there is no forecast available within an hour of the requested time, it will return a 404. | YYYY-MM-DDThh:mm:ssZ |
| initialization_time Alternative | The initialization time for the forecast. Must be used with forecast_hour. Cannot be used with time. Uses only date, hour and minutes. Seconds are discarded. | YYYY-MM-DDThh:mm:ssZ |
| forecast_hour Alternative | Hours from the initialization_time for which to get the forecast. Must be used with initialization_time. Cannot be used with time. If initialization_time is 2023-01-01T00:00:00 and forecast_hour is 6, the forecast will be for 2023-01-01T06:00:00. | integer |
| format Optional | Output file format, defaults to NetCDF. | netcdf or zarr |
| as_url Optional | If true, returns a JSON response with a presigned download URL instead of the binary file directly. The URL points to the full archived Zarr file — variable and level filtering are not applied. Useful for MCP clients and programmatic access. Default: false. | boolean |
| Name | Description | Format |
|---|---|---|
| variable Required | Variable to download. Use the Variables endpoint to list what's available for your model. Set all to retrieve all variables at all heights. Specify a surface variable (e.g., temperature_2m) or combine with level for upper-level variables (e.g., temperature at 500 hPa). | string |
| time Required | The time at which the forecast is valid. Alternatively, you can specify initialization_time and forecast_hour. This looks solely at the date and the hour; minutes and seconds are discarded. If there is no forecast available within an hour of the requested time, it will return a 404. | YYYY-MM-DDThh:mm:ssZ |
| initialization_time Alternative | The initialization time for the forecast. Must be used with forecast_hour. Cannot be used with time. Uses only date, hour and minutes. Seconds are discarded. | YYYY-MM-DDThh:mm:ssZ |
| forecast_hour Alternative | Hours from the initialization_time for which to get the forecast. Must be used with initialization_time. Cannot be used with time. If initialization_time is 2023-01-01T00:00:00 and forecast_hour is 6, the forecast will be for 2023-01-01T06:00:00. | integer |
| format Optional | Output file format, defaults to NetCDF. | netcdf or zarr |
| as_url Optional | If true, returns a JSON response with a presigned download URL instead of the binary file directly. The URL points to the full archived Zarr file — variable and level filtering are not applied. Useful for MCP clients and programmatic access. Default: false. | boolean |
| Name | Description | Format |
|---|---|---|
| variable Required | Variable to download. Use the Variables endpoint to list what's available for your model. Set all to retrieve all variables at all heights. Specify a surface variable (e.g., temperature_2m) or combine with level for upper-level variables (e.g., temperature at 500 hPa). | string |
| time Required | The time at which the forecast is valid. Alternatively, you can specify initialization_time and forecast_hour. This looks solely at the date and the hour; minutes and seconds are discarded. If there is no forecast available within an hour of the requested time, it will return a 404. | YYYY-MM-DDThh:mm:ssZ |
| initialization_time Alternative | The initialization time for the forecast. Must be used with forecast_hour. Cannot be used with time. Uses only date, hour and minutes. Seconds are discarded. | YYYY-MM-DDThh:mm:ssZ |
| forecast_hour Alternative | Hours from the initialization_time for which to get the forecast. Must be used with initialization_time. Cannot be used with time. If initialization_time is 2023-01-01T00:00:00 and forecast_hour is 6, the forecast will be for 2023-01-01T06:00:00. | integer |
| format Optional | Output file format, defaults to NetCDF. | netcdf or zarr |
| as_url Optional | If true, returns a JSON response with a presigned download URL instead of the binary file directly. The URL points to the full archived Zarr file — variable and level filtering are not applied. Useful for MCP clients and programmatic access. Default: false. | boolean |
| Name | Description | Format |
|---|---|---|
| variable Required | Variable to download. Use the Variables endpoint to list what's available for your model. Set all to retrieve all variables at all heights. Specify a surface variable (e.g., temperature_2m) or combine with level for upper-level variables (e.g., temperature at 500 hPa). | string |
| time Required | The time at which the forecast is valid. Alternatively, you can specify initialization_time and forecast_hour. This looks solely at the date and the hour; minutes and seconds are discarded. If there is no forecast available within an hour of the requested time, it will return a 404. | YYYY-MM-DDThh:mm:ssZ |
| initialization_time Alternative | The initialization time for the forecast. Must be used with forecast_hour. Cannot be used with time. Uses only date, hour and minutes. Seconds are discarded. | YYYY-MM-DDThh:mm:ssZ |
| forecast_hour Alternative | Hours from the initialization_time for which to get the forecast. Must be used with initialization_time. Cannot be used with time. If initialization_time is 2023-01-01T00:00:00 and forecast_hour is 6, the forecast will be for 2023-01-01T06:00:00. | integer |
| format Optional | Output file format, defaults to NetCDF. | netcdf or zarr |
| as_url Optional | If true, returns a JSON response with a presigned download URL instead of the binary file directly. The URL points to the full archived Zarr file — variable and level filtering are not applied. Useful for MCP clients and programmatic access. Default: false. | boolean |
| Name | Description |
|---|---|
| -m, --model | Set to wm-6 . |
| variable Required | Variable to download. Can be 'all', a surface variable (e.g., temperature_2m), or an upper-level variable (e.g., 500/temperature). |
| level Optional | Integer pressure level in hectopascals for upper-level variables (e.g., 500). |
| time Required | An ISO 8601 date string representing the time at which the forecast is valid. Format: YYYY-MM-DDThh:mm:ssZ. Minutes/seconds are typically ignored by the backend when finding the closest cycle. |
| initialization_time Alternative | The initialization time for the forecast. Must be used with forecast_hour. Cannot be used with time. Format: YYYY-MM-DDThh:mm:ssZ. Uses only date, hour and minutes. Seconds are discarded. |
| forecast_hour Alternative | Hours from the initialization_time for which to get the forecast. Must be used with initialization_time. Cannot be used with time. If initialization_time is 2023-01-01T00:00:00Z and forecast_hour is 6, the forecast will be for 2023-01-01T06:00:00Z. |
| output_file Required | Path to save the file. |
| --include-distribution Optional | If true, adds distribution outputs such as percentiles, standard deviation, thresholds, and precipitation-type probabilities. Default: false. Only available for selected variables. |
| --include-members Optional | If true, adds all 128 ensemble members to the output. Default: false. Only available for selected variables. |
| -f --format Optional | Output file format, defaults to Zarr. Can be "zarr" or "netcdf". |
| Name | Description |
|---|---|
| -m, --model | Set to wm-6-3km . |
| variable Required | Variable to download. Can be 'all', a surface variable (e.g., temperature_2m), or an upper-level variable (e.g., 500/temperature). |
| level Optional | Integer pressure level in hectopascals for upper-level variables (e.g., 500). |
| time Required | An ISO 8601 date string representing the time at which the forecast is valid. Format: YYYY-MM-DDThh:mm:ssZ. Minutes/seconds are typically ignored by the backend when finding the closest cycle. |
| initialization_time Alternative | The initialization time for the forecast. Must be used with forecast_hour. Cannot be used with time. Format: YYYY-MM-DDThh:mm:ssZ. Uses only date, hour and minutes. Seconds are discarded. |
| forecast_hour Alternative | Hours from the initialization_time for which to get the forecast. Must be used with initialization_time. Cannot be used with time. If initialization_time is 2023-01-01T00:00:00Z and forecast_hour is 6, the forecast will be for 2023-01-01T06:00:00Z. |
| output_file Required | Path to save the file. |
| -f --format Optional | Output file format, defaults to Zarr. Can be "zarr" or "netcdf". |
| --domain Optional | Regional domain to retrieve. Default: conus. Options: "conus" or "europe". |
| Name | Description |
|---|---|
| -m, --model | Set to ecmwf-det . |
| variable Required | Variable to download. Can be 'all', a surface variable (e.g., temperature_2m), or an upper-level variable (e.g., 500/temperature). |
| time Required | An ISO 8601 date string representing the time at which the forecast is valid. Format: YYYY-MM-DDThh:mm:ssZ. Minutes/seconds are typically ignored by the backend when finding the closest cycle. |
| initialization_time Alternative | The initialization time for the forecast. Must be used with forecast_hour. Cannot be used with time. Format: YYYY-MM-DDThh:mm:ssZ. Uses only date, hour and minutes. Seconds are discarded. |
| forecast_hour Alternative | Hours from the initialization_time for which to get the forecast. Must be used with initialization_time. Cannot be used with time. If initialization_time is 2023-01-01T00:00:00Z and forecast_hour is 6, the forecast will be for 2023-01-01T06:00:00Z. |
| output_file Required | Path to save the NetCDF (.nc) file. |
| -f --format Optional | Output file format, defaults to NetCDF. Can be "netcdf" or "zarr". |
| Name | Description |
|---|---|
| -m, --model | Set to ecmwf-ens . |
| variable Required | Variable to download. Can be 'all', a surface variable (e.g., temperature_2m), or an upper-level variable (e.g., 500/temperature). |
| time Required | An ISO 8601 date string representing the time at which the forecast is valid. Format: YYYY-MM-DDThh:mm:ssZ. Minutes/seconds are typically ignored by the backend when finding the closest cycle. |
| initialization_time Alternative | The initialization time for the forecast. Must be used with forecast_hour. Cannot be used with time. Format: YYYY-MM-DDThh:mm:ssZ. Uses only date, hour and minutes. Seconds are discarded. |
| forecast_hour Alternative | Hours from the initialization_time for which to get the forecast. Must be used with initialization_time. Cannot be used with time. If initialization_time is 2023-01-01T00:00:00Z and forecast_hour is 6, the forecast will be for 2023-01-01T06:00:00Z. |
| output_file Required | Path to save the NetCDF (.nc) file. |
| -f --format Optional | Output file format, defaults to NetCDF. Can be "netcdf" or "zarr". |
| Name | Description |
|---|---|
| -m, --model | Set to aifs . |
| variable Required | Variable to download. Can be 'all', a surface variable (e.g., temperature_2m), or an upper-level variable (e.g., 500/temperature). |
| time Required | An ISO 8601 date string representing the time at which the forecast is valid. Format: YYYY-MM-DDThh:mm:ssZ. Minutes/seconds are typically ignored by the backend when finding the closest cycle. |
| initialization_time Alternative | The initialization time for the forecast. Must be used with forecast_hour. Cannot be used with time. Format: YYYY-MM-DDThh:mm:ssZ. Uses only date, hour and minutes. Seconds are discarded. |
| forecast_hour Alternative | Hours from the initialization_time for which to get the forecast. Must be used with initialization_time. Cannot be used with time. If initialization_time is 2023-01-01T00:00:00Z and forecast_hour is 6, the forecast will be for 2023-01-01T06:00:00Z. |
| output_file Required | Path to save the NetCDF (.nc) file. |
| -f --format Optional | Output file format, defaults to NetCDF. Can be "netcdf" or "zarr". |
| Name | Description |
|---|---|
| -m, --model | Set to gfs . |
| variable Required | Variable to download. Can be 'all', a surface variable (e.g., temperature_2m), or an upper-level variable (e.g., 500/temperature). |
| time Required | An ISO 8601 date string representing the time at which the forecast is valid. Format: YYYY-MM-DDThh:mm:ssZ. Minutes/seconds are typically ignored by the backend when finding the closest cycle. |
| initialization_time Alternative | The initialization time for the forecast. Must be used with forecast_hour. Cannot be used with time. Format: YYYY-MM-DDThh:mm:ssZ. Uses only date, hour and minutes. Seconds are discarded. |
| forecast_hour Alternative | Hours from the initialization_time for which to get the forecast. Must be used with initialization_time. Cannot be used with time. If initialization_time is 2023-01-01T00:00:00Z and forecast_hour is 6, the forecast will be for 2023-01-01T06:00:00Z. |
| output_file Required | Path to save the NetCDF (.nc) file. |
| -f --format Optional | Output file format, defaults to NetCDF. Can be "netcdf" or "zarr". |
| Name | Description |
|---|---|
| -m, --model | Set to hrrr . |
| variable Required | Variable to download. Can be 'all', a surface variable (e.g., temperature_2m), or an upper-level variable (e.g., 500/temperature). |
| time Required | An ISO 8601 date string representing the time at which the forecast is valid. Format: YYYY-MM-DDThh:mm:ssZ. Minutes/seconds are typically ignored by the backend when finding the closest cycle. |
| initialization_time Alternative | The initialization time for the forecast. Must be used with forecast_hour. Cannot be used with time. Format: YYYY-MM-DDThh:mm:ssZ. Uses only date, hour and minutes. Seconds are discarded. |
| forecast_hour Alternative | Hours from the initialization_time for which to get the forecast. Must be used with initialization_time. Cannot be used with time. If initialization_time is 2023-01-01T00:00:00Z and forecast_hour is 6, the forecast will be for 2023-01-01T06:00:00Z. |
| output_file Required | Path to save the NetCDF (.nc) file. |
| -f --format Optional | Output file format, defaults to NetCDF. Can be "netcdf" or "zarr". |
| Name | Description |
|---|---|
| variable Required | Specifies the forecast variable(s) to download. Options: 'all' (all variables), surface variable (e.g., temperature_2m), or level/variable (e.g., 500/temperature). |
| level Optional | Integer pressure level in hectopascals for upper-level variables (e.g., 500). |
| model Required | Set to wm-6 . |
| time Required | An ISO 8601 date string representing the time at which the forecast is valid. Format: YYYY-MM-DDThh:mm:ssZ. Minutes/seconds are typically ignored by the backend when finding the closest cycle. |
| initialization_time Alternative | The initialization time for the forecast. Must be used with forecast_hour. Cannot be used with time. Format: YYYY-MM-DDThh:mm:ssZ. Uses only date, hour and minutes. Seconds are discarded. |
| forecast_hour Alternative | Hours from the initialization_time for which to get the forecast. Must be used with initialization_time. Cannot be used with time. If initialization_time is 2023-01-01T00:00:00Z and forecast_hour is 6, the forecast will be for 2023-01-01T06:00:00Z. |
| output_file Required | Path to save the file. |
| include_distribution Optional | If true, adds distribution outputs such as percentiles, standard deviation, thresholds, and precipitation-type probabilities. Default: false. Only available for selected variables. |
| include_members Optional | If true, adds all 128 ensemble members to the output. Default: false. Only available for selected variables. |
| format Optional | Output file format, defaults to Zarr. Can be "zarr" or "netcdf". |
| Name | Description |
|---|---|
| variable Required | Specifies the forecast variable(s) to download. Options: 'all' (all variables), surface variable (e.g., temperature_2m), or level/variable (e.g., 500/temperature). |
| level Optional | Integer pressure level in hectopascals for upper-level variables (e.g., 500). |
| model Required | Set to wm-6-3km . |
| time Required | An ISO 8601 date string representing the time at which the forecast is valid. Format: YYYY-MM-DDThh:mm:ssZ. Minutes/seconds are typically ignored by the backend when finding the closest cycle. |
| initialization_time Alternative | The initialization time for the forecast. Must be used with forecast_hour. Cannot be used with time. Format: YYYY-MM-DDThh:mm:ssZ. Uses only date, hour and minutes. Seconds are discarded. |
| forecast_hour Alternative | Hours from the initialization_time for which to get the forecast. Must be used with initialization_time. Cannot be used with time. If initialization_time is 2023-01-01T00:00:00Z and forecast_hour is 6, the forecast will be for 2023-01-01T06:00:00Z. |
| output_file Required | Path to save the file. |
| format Optional | Output file format, defaults to Zarr. Can be "zarr" or "netcdf". |
| domain Optional | Regional domain to retrieve. Default: conus. Options: "conus" or "europe". |
| Name | Description |
|---|---|
| variable Required | Specifies the forecast variable(s) to download. Options: 'all' (all variables), surface variable (e.g., temperature_2m), or level/variable (e.g., 500/temperature). |
| model Required | Set to ecmwf-det . |
| time Required | An ISO 8601 date string representing the time at which the forecast is valid. Format: YYYY-MM-DDThh:mm:ssZ. Minutes/seconds are typically ignored by the backend when finding the closest cycle. |
| initialization_time Alternative | The initialization time for the forecast. Must be used with forecast_hour. Cannot be used with time. Format: YYYY-MM-DDThh:mm:ssZ. Uses only date, hour and minutes. Seconds are discarded. |
| forecast_hour Alternative | Hours from the initialization_time for which to get the forecast. Must be used with initialization_time. Cannot be used with time. If initialization_time is 2023-01-01T00:00:00Z and forecast_hour is 6, the forecast will be for 2023-01-01T06:00:00Z. |
| output_file Required | Path to save the file. |
| format Optional | Output file format, defaults to NetCDF. Can be "netcdf" or "zarr". |
| Name | Description |
|---|---|
| variable Required | Specifies the forecast variable(s) to download. Options: 'all' (all variables), surface variable (e.g., temperature_2m), or level/variable (e.g., 500/temperature). |
| model Required | Set to ecmwf-ens . |
| time Required | An ISO 8601 date string representing the time at which the forecast is valid. Format: YYYY-MM-DDThh:mm:ssZ. Minutes/seconds are typically ignored by the backend when finding the closest cycle. |
| initialization_time Alternative | The initialization time for the forecast. Must be used with forecast_hour. Cannot be used with time. Format: YYYY-MM-DDThh:mm:ssZ. Uses only date, hour and minutes. Seconds are discarded. |
| forecast_hour Alternative | Hours from the initialization_time for which to get the forecast. Must be used with initialization_time. Cannot be used with time. If initialization_time is 2023-01-01T00:00:00Z and forecast_hour is 6, the forecast will be for 2023-01-01T06:00:00Z. |
| output_file Required | Path to save the file. |
| format Optional | Output file format, defaults to NetCDF. Can be "netcdf" or "zarr". |
| Name | Description |
|---|---|
| variable Required | Specifies the forecast variable(s) to download. Options: 'all' (all variables), surface variable (e.g., temperature_2m), or level/variable (e.g., 500/temperature). |
| model Required | Set to aifs . |
| time Required | An ISO 8601 date string representing the time at which the forecast is valid. Format: YYYY-MM-DDThh:mm:ssZ. Minutes/seconds are typically ignored by the backend when finding the closest cycle. |
| initialization_time Alternative | The initialization time for the forecast. Must be used with forecast_hour. Cannot be used with time. Format: YYYY-MM-DDThh:mm:ssZ. Uses only date, hour and minutes. Seconds are discarded. |
| forecast_hour Alternative | Hours from the initialization_time for which to get the forecast. Must be used with initialization_time. Cannot be used with time. If initialization_time is 2023-01-01T00:00:00Z and forecast_hour is 6, the forecast will be for 2023-01-01T06:00:00Z. |
| output_file Required | Path to save the file. |
| format Optional | Output file format, defaults to NetCDF. Can be "netcdf" or "zarr". |
| Name | Description |
|---|---|
| variable Required | Specifies the forecast variable(s) to download. Options: 'all' (all variables), surface variable (e.g., temperature_2m), or level/variable (e.g., 500/temperature). |
| model Required | Set to gfs . |
| time Required | An ISO 8601 date string representing the time at which the forecast is valid. Format: YYYY-MM-DDThh:mm:ssZ. Minutes/seconds are typically ignored by the backend when finding the closest cycle. |
| initialization_time Alternative | The initialization time for the forecast. Must be used with forecast_hour. Cannot be used with time. Format: YYYY-MM-DDThh:mm:ssZ. Uses only date, hour and minutes. Seconds are discarded. |
| forecast_hour Alternative | Hours from the initialization_time for which to get the forecast. Must be used with initialization_time. Cannot be used with time. If initialization_time is 2023-01-01T00:00:00Z and forecast_hour is 6, the forecast will be for 2023-01-01T06:00:00Z. |
| output_file Required | Path to save the file. |
| format Optional | Output file format, defaults to NetCDF. Can be "netcdf" or "zarr". |
| Name | Description |
|---|---|
| variable Required | Specifies the forecast variable(s) to download. Options: 'all' (all variables), surface variable (e.g., temperature_2m), or level/variable (e.g., 500/temperature). |
| model Required | Set to hrrr . |
| time Required | An ISO 8601 date string representing the time at which the forecast is valid. Format: YYYY-MM-DDThh:mm:ssZ. Minutes/seconds are typically ignored by the backend when finding the closest cycle. |
| initialization_time Alternative | The initialization time for the forecast. Must be used with forecast_hour. Cannot be used with time. Format: YYYY-MM-DDThh:mm:ssZ. Uses only date, hour and minutes. Seconds are discarded. |
| forecast_hour Alternative | Hours from the initialization_time for which to get the forecast. Must be used with initialization_time. Cannot be used with time. If initialization_time is 2023-01-01T00:00:00Z and forecast_hour is 6, the forecast will be for 2023-01-01T06:00:00Z. |
| output_file Required | Path to save the file. |
| format Optional | Output file format, defaults to NetCDF. Can be "netcdf" or "zarr". |
Returns a netCDF (.nc) or Zarr (.zarr.zip) file containing gridded forecast data for the specified variable. This will generally be a redirect to a presigned URL on R2, so you will need to follow the redirect to get the file. Use the -L flag in curl. Only in the short time it takes for the file to be uploaded will it be served directly.