FLASH Weather Coverage Service (WCS)

Access high-resolution atmospheric model data and rendered map tiles via OGC standards.

Access high-resolution atmospheric model data and rendered map tiles via OGC standards.

This endpoint exposes two service modes selected by the SERVICE query parameter:

  • SERVICE=WCS (default), OGC Web Coverage Service 2.0.1. Numeric data extracts from forecast and analysis grids, listed by coverage ID below.
  • SERVICE=WMS: OGC Web Map Service 1.1.0. Rendered PNG map tiles of aviation weather variables.

Authentication is required for all requests.


Web Coverage Service (WCS)

Request Types

REQUESTPurpose
GetCapabilitiesCapabilities document listing all available coverages
DescribeCoverageDetailed metadata for a specific CoverageId
GetCoverageData or imagery for the specified parameters

Parameters

Core Parameters

ParameterRequiredDefaultDescription
SERVICENoWCSService type, WCS
REQUESTNoGetCoverageOperation type (see above)
VERSIONNo2.0.1WCS protocol version
CoverageIdYes*-Coverage identifier (see "Available Coverages" below)
RANGESUBSETYes*-Variable name (e.g. wind_speed)
FORMATYes*-Response format (see "FORMAT Options" below)
CRSNoCRS:84Coordinate reference system (WGS 84 lon/lat by default)

*Required for GetCoverage requests only.

SUBSET Axes

Spatial and temporal filtering using OGC axis syntax. Repeat the SUBSET key for each axis.

Value syntaxExampleDescription
lat(value)SUBSET=lat(40)Latitude in decimal degrees
long(value)SUBSET=long(-98)Longitude in decimal degrees
z(value)SUBSET=z(2)Exact height in metres AGL. Omit for most requests, the service selects the correct level per variable (e.g. temperature → 2 m AGL, wind_speed → 10 m AGL). Use only when targeting a specific non-default level. z(0) is not a valid level for most HRRR/GFS variables and will return 400. Not valid for RTMA or NDFD.
f(duration)SUBSET=f(PT1H)Forecast offset as ISO 8601 duration. Required for HRRR/GFS. Not valid for RTMA (analysis, no forecast axis).

Forecast coverages (HRRR/GFS): &SUBSET=lat(40)&SUBSET=long(-98)&SUBSET=f(PT1H) Analysis coverages (RTMA/NDFD): &SUBSET=lat(40)&SUBSET=long(-98)

FORMAT Options

WCS returns JSON data only, pass FORMAT=JSON (uppercase literal). Image formats are not supported by WCS and will return a 400 error. WMS map tiles (rendered PNG images) are requested separately using SERVICE=WMS: see the WMS section below.

FORMAT valueDescription
JSONNumeric variable values as a JSON object

Coverage Selection at a Glance

If you need…Use
Hourly CONUS forecast, ≤48 h, convection-resolvinghrrr-conus-sfcf_latest
15-minute CONUS forecast, ≤18 hhrrr-conus-subhf_latest
Vertical profile / pressure-level CONUShrrr-conus-natf_latest
Global forecast / non-CONUS / up to 16 daysgfs-global-atmos_latest
Current gridded conditions, CONUS hourlyrtma-conus-wexp_latest
Current gridded conditions, CONUS 15-minutertma-conus-ru_latest
Real-time radar mosaic, hail diagnostics, QPEMRMS coverages
NWS-blessed public forecast gridNDFD coverages
Alaska / Hawaii / Puerto Rico / Guam analysisRTMA regional coverages

Available Coverages

HRRR, High-Resolution Rapid Refresh (CONUS)

NOAA's convection-allowing model. 3 km CONUS, hourly init, 18-h horizon (48-h at 00/06/12/18z).

Coverage IDDescriptionTemporal Resolution
hrrr-conus-sfcf_latestSurface ForecastHourly; 18-hr horizon standard cycles, 48-hr for 00/06/12/18z
hrrr-conus-subhf_latestSubhourly Surface Forecast15-minute intervals; FH00–FH18 only
hrrr-conus-natf_latestNative Level Forecast (full vertical column)Hourly

Available HRRR Variables

VariableDescriptionUnitsfcf_latestsubhf_latestnatf_latest
temperatureTemperatureK✓✓✓
dew_pointDewpoint TemperatureK✓✓-
relative_humidityRelative Humidity%✓--
specific_humiditySpecific Humiditykg/kg✓✓✓
wind_speedWind Speedm/s✓✓✓
wind_directionWind DirectionDegrees✓✓✓
wind_uvWind UVm/s✓✓✓
wind_u_componentWind Um/s✓✓✓
wind_v_componentWind Vm/s✓✓✓
wind_speed_gustWind Speed Gustm/s✓✓-
pressurePressurePa✓✓✓
geopotential_heightGeopotential Heightgpm--✓
visibilityVisibilitym✓✓-
cloud_ceilingCloud Ceilingm✓✓-
low_cloud_coverLow Cloud Cover%✓--
medium_cloud_coverMedium Cloud Cover%✓--
reflectivityBase ReflectivitydBZ✓✓-
precipitation_ratePrecipitation Ratekg/m²/s✓✓-
precipitation_typePrecipitation Typeenum✓✓-
total_precipitationTotal Precipitationkg/m²✓✓-
snow_depthSnow Depthm✓--
hail_surface_1h1-hour Maximum Hail Diameter at Surfacem✓--
downward_sw_radiation_fluxDownward Shortwave Radiation FluxW/m²✓✓-

GFS, Global Forecast System

NCEP's global medium-range model. 0.25° (≈25 km), 16-day horizon, 4 cycles/day.

Coverage IDDescriptionTemporal Resolution
gfs-global-atmos_latestGlobal Atmosphere Forecast (0.25°)Hourly to FH120 (day 5), then 3-hourly to FH384 (16-day horizon)

Available GFS Variables

VariableDescriptionUnit
temperatureTemperatureK
dew_pointDewpoint TemperatureK
relative_humidityRelative Humidity%
wind_speedWind Speedm/s
wind_directionWind DirectionDegrees
wind_uvWind UVm/s
wind_u_componentWind Um/s
wind_v_componentWind Vm/s
wind_speed_gustWind Speed Gustm/s
pressurePressurePa
geopotential_heightGeopotential Heightgpm
visibilityVisibilitym
reflectivityBase ReflectivitydBZ
cloud_coverCloud Cover%
low_cloud_coverLow Cloud Cover%
medium_cloud_coverMedium Cloud Cover%
high_cloud_coverHigh Cloud Cover%
precipitation_ratePrecipitation Ratekg/m²/s
precipitation_typePrecipitation Typeenum
total_precipitationTotal Precipitationkg/m²

RTMA, Real-Time Mesoscale Analysis

Gridded analysis of current conditions (not a forecast). 2.5 km CONUS / 3 km AK / 2.5 km HI · PR · Guam. Do not include SUBSET=z(...) or SUBSET=f(...), RTMA has no vertical or forecast axis.

Coverage IDDomain
rtma-conus-wexp_latestCONUS Western Expansion NDFD Grid, 2.5 km (hourly analysis)
rtma-conus-ru_latestCONUS Rapid Update, 2.5 km (15-minute analysis)
rtma-conus-alaska-rtma_latestAlaska, 3 km
rtma-hawaii-rtma_latestHawaii, 2.5 km
rtma-purico-rtma_latestPuerto Rico, 2.5 km
rtma-guam-rtma_latestGuam, 2.5 km

Available RTMA Variables: all RTMA coverages share these 11 variables.

VariableDescriptionUnit
temperatureTemperatureK
dew_pointDewpoint TemperatureK
specific_humiditySpecific Humiditykg/kg
wind_speedWind Speedm/s
wind_directionWind DirectionDegrees
wind_uvWind UVm/s
wind_speed_gustWind Speed Gustm/s
pressurePressurePa
geopotential_heightGeopotential Heightgpm
visibilityVisibilitym
cloud_ceilingCloud Ceilingm

MRMS, Multi-Radar / Multi-Sensor

Radar-derived severe-weather and precipitation analytics from NSSL. 1 km / 2-minute updates, CONUS · AK · HI · Caribbean.

Available MRMS Variables

VariableDescriptionUnit
reflectivityBase Reflectivity (MBR / MCR)dBZ
max_hail_sizeMaximum Estimated Size of Hail (MESH)mm
prob_severe_hailProbability of Severe Hail (POSH)%
severe_hail_indexSevere Hail Index (SHI)J/(m·s)
precipitation_ratePrecipitation Rate (PR)mm/h
precipitation_typePrecipitation Flag (PF)enum
hail_swath_30minMESH-Max Hail Swath, 30-minute windowmm
hail_swath_60minMESH-Max Hail Swath, 60-minute windowmm
hail_swath_120minMESH-Max Hail Swath, 2-hour windowmm
hail_swath_240minMESH-Max Hail Swath, 4-hour windowmm
hail_swath_360minMESH-Max Hail Swath, 6-hour windowmm
hail_swath_1440minMESH-Max Hail Swath, 24-hour windowmm

Query REQUEST=GetCapabilities for the complete MRMS coverage list.

NDFD, National Digital Forecast Database

The official NWS public forecast grid, forecaster-edited grids that drive weather.gov. 2.5 km CONUS, hourly bulletins, 7-day horizon.

Coverage IDDomain
ndfd-conus-none_latestCONUS
ndfd-alaska-none_latestAlaska
ndfd-hawaii-none_latestHawaii
ndfd-purico-none_latestPuerto Rico
ndfd-guam-none_latestGuam

Available NDFD Variables: SUBSET=f(...) is optional; omit it to get the current/latest timestep.

VariableDescriptionUnitLevel
temperatureTemperatureK2 m AGL
temperature_maxMaximum TemperatureK2 m AGL
temperature_minMinimum TemperatureK2 m AGL
dew_pointDewpoint TemperatureK2 m AGL
wind_speedWind Speedm/s10 m AGL
wind_directionWind DirectionDegrees10 m AGL
wind_speed_gustWind Speed Gustm/s10 m AGL
wind_uvWind UV Vector (U/V components)m/s10 m AGL
cloud_coverCloud Cover%surface
ice_accumulationIce Accumulationkg/m²surface
precipitation_probabilityProbability of Precipitation%surface
precipitation_potential_indexPrecipitation Potential Indexindexsurface
snowfallSnowfall Amountmsurface
total_precipitationTotal Precipitationkg/m²surface
wave_heightSignificant Wave Heightmmarine zones
weatherCategorical Weather Conditionenumsurface

Use REQUEST=GetCapabilities to see all NDFD coverage IDs and REQUEST=DescribeCoverage for axis details.

Example Requests

HRRR surface wind speed at a point: Returns: JSON (coverageData array)

GET /wx-data/?SERVICE=WCS&REQUEST=GetCoverage&VERSION=2.0.1
  &CoverageId=hrrr-conus-sfcf_latest&FORMAT=JSON&CRS=CRS:84
  &RANGESUBSET=wind_speed&SUBSET=lat(40)&SUBSET=long(-98)&SUBSET=f(PT1H)

RTMA CONUS temperature (current analysis): No SUBSET=f(...) needed for analysis products

GET /wx-data/?SERVICE=WCS&REQUEST=GetCoverage&VERSION=2.0.1
  &CoverageId=rtma-conus-wexp_latest&FORMAT=JSON&CRS=CRS:84
  &RANGESUBSET=temperature&SUBSET=lat(40)&SUBSET=long(-98)

GFS global wind at pressure level: Returns: JSON (coverageData array)

GET /wx-data/?SERVICE=WCS&REQUEST=GetCoverage&VERSION=2.0.1
  &CoverageId=gfs-global-atmos_latest&FORMAT=JSON&CRS=CRS:84
  &RANGESUBSET=wind_speed&SUBSET=lat(40)&SUBSET=long(-98)&SUBSET=f(PT6H)

List all available coverages

GET /wx-data/?SERVICE=WCS&REQUEST=GetCapabilities

Note: MRMS coverages do not support GetCoverage (returns "no stack table" error). Use SERVICE=WMS&REQUEST=GetMap for MRMS map tiles instead.


Web Map Service (WMS), Aviation Weather Global Forecast Maps

Rendered PNG map tiles via OGC WMS 1.1.0. Use SERVICE=WMS (or SERVICE=WMTS) and REQUEST=GetMap.

Global coverage at ~1 km native resolution. Most layers provide a 24-hour forecast horizon and refresh every 15 minutes; severe-weather and now-cast layers (thunderstorm, flight_rules, precipitation_arrival, lowest_cloud_top_altitude) are limited to a 5-hour horizon and can refresh as often as every 5 minutes. Tile datetimes are rounded to 10-minute increments.

Layer Naming Convention

meandair-global-none-{variable}-{bit_depth}-epsg_{crs_code}

Where {crs_code} is 3857 (Web Mercator) or 4326 (WGS 84). Most variables use {bit_depth}=16; icing_severity and weather use {bit_depth}=8. Use REQUEST=GetCapabilities to confirm the exact bit-depth identifiers exposed for each variable.

Available Aviation Weather Variables

VariableUnitsRange / ClassesELEVATION modesForecast HorizonRefresh
cloud_ceilingm AGL0 – 15,000+Overview24 h5 min
cloud_cover%0 – 100FL0 – FL600, Overview24 h15 min
convective_precipitation_ratemm/h0 – 50+FL0 – FL600, Overview24 h15 min
dew_pointK (≈ −35 – 35 °C)238 – 3082 m AGL, Overview24 h15 min
icing_severityclass0 – 4FL0 – FL600, Overview24 h10 min
precipitation_probability%0 – 100FL0 – FL600, Overview24 h15 min
precipitation_ratemm/h0 – 50+Overview24 h15 min
pressure_mslPa87,000 – 108,000Overview24 h15 min
temperatureK (≈ −90 – 50 °C)183 – 3232 m AGL, Overview24 h15 min
visibilitym0 – 30,000+Overview24 h15 min
weatherclass0 – 26 (general weather condition)Overview24 h15 min
wind_directiondegrees0 – 35910 m AGL, FL0 – FL60024 h10 min
wind_speedm/s0 – 80+10 m AGL, 80 m AGL, FL0 – FL60024 h10 min
wind_speed_gustm/s0 – 50+10 m AGL24 h15 min
wind_uvm/s0 – 80+ (U/V vector components)10 m AGL, 80 m AGL, FL0 – FL60024 h15 min

Pending variables: not yet available in the geoservice. Confirm with REQUEST=GetCapabilities before use.

VariableUnitsRange / ClassesELEVATION modesForecast HorizonRefresh
cloud_top_altitudem AMSL0 – 15,000+Overview24 h15 min
flight_rulesclassLIFR, IFR, MVFR, VFROverview5 h5 min
lowest_cloud_top_altitudem AMSL0 – 15,000+Overview5 h5 min
precipitation_arrival10-min steps0 – 36Overview5 h15 min
thunderstormclass1 – 5FL0 – FL600, Overview5 h10 min
turbulenceEDR0 – 1FL0 – FL600, Overview24 h10 min

Always verify layer availability via REQUEST=GetCapabilities before use, the catalogue reflects what is currently active in the geoservice.

WMS Dimensions

DimensionParameterFormatDefaultDescription
Model run timeDIM_RUNISO 8601 datetime (UTC)Latest availablee.g. 2026-05-08T16:00:00Z. Rounded to 10-minute increments.
Forecast lead timeDIM_FORECASTISO 8601 durationPT0HPT0H – PT23H in hourly steps for most layers; pending severe-weather layers are limited to PT0H – PT5H.
ElevationELEVATIONString codeoverviewFlight-level layers accept fl0 – fl600 (e.g. fl10 = 1,000 ft, fl30 = 3,000 ft, fl90 = 9,000 ft). Surface layers accept AGL codes (2m, 10m, 80m). Use overview for the default top-down view.

WMS Parameters

ParameterRequiredDescription
SERVICEYesWMS
REQUESTYesGetMap or GetCapabilities
VERSIONNo1.1.0
LAYERSYesLayer name (see convention above)
STYLESNoColormap style (see Available Styles below)
SRSYesEPSG:3857 or EPSG:4326
BBOXYesBounding box in the chosen SRS
WIDTHYesTile width in pixels
HEIGHTYesTile height in pixels
FORMATNoimage/png (only supported format)
TRANSPARENTNoTRUE for transparent background
DIM_RUNNoModel run time (ISO 8601 datetime)
DIM_FORECASTNoForecast lead time (ISO 8601 duration, PT0H–PT23H for most layers; pending severe-weather layers are limited to PT0H–PT5H)
ELEVATIONNo*Required for flight-level layers (fl0–fl600) and AGL-specific layers (2m, 10m, 80m). Defaults to overview.

Available Styles

StyleDescription
mp_viridisSequential Black → Green → Yellow
mp_plasmaSequential Blue → Red → Yellow
mp_GreysSequential Grey (White to Black)
mp_graySequential Grey (Black to White)
mp_BluesSequential Blue
mp_GreensSequential Green
mp_RedsSequential Red
mp_PurplesSequential Purple
mp_summerSequential Green → Yellow
mp_autumnSequential Red → Yellow
mp_winterSequential Blue → Green
mp_Set1Qualitative, 9 bands
mp_tab20bQualitative, 20 bands
mp_jetMiscellaneous Black → Blue → Green → Yellow → Red
mp_gnuplot2Miscellaneous Black → Blue → Purple → Orange → Yellow

Legend images are available from /geoservice/colorbar with configurable units, min/max values, and title.

WMS Example Requests

List available WMS layers

GET /wx-data/?SERVICE=WMS&REQUEST=GetCapabilities&VERSION=1.1.0

Wind speed map tile (Web Mercator): wind_speed requires ELEVATION

GET /wx-data/?SERVICE=WMS&REQUEST=GetMap&VERSION=1.1.0
  &LAYERS=meandair-global-none-wind_speed-16-epsg_3857&STYLES=mp_viridis
  &SRS=EPSG:3857&BBOX=-10039448,3310902,-7001535,5106255
  &WIDTH=512&HEIGHT=512&FORMAT=image/png&TRANSPARENT=TRUE&ELEVATION=10m
  &DIM_RUN=2026-05-08T16:00:00Z&DIM_FORECAST=PT6H

Icing severity at FL30 (WGS 84)

GET /wx-data/?SERVICE=WMS&REQUEST=GetMap&VERSION=1.1.0
  &LAYERS=meandair-global-none-icing_severity-8-epsg_4326&STYLES=mp_jet
  &SRS=EPSG:4326&BBOX=-130,25,-60,50
  &WIDTH=512&HEIGHT=256&FORMAT=image/png&TRANSPARENT=TRUE
  &ELEVATION=fl30&DIM_RUN=2026-05-08T16:00:00Z&DIM_FORECAST=PT3H

Error Responses

StatusMeaning
400 Bad RequestInvalid or missing parameters
401 UnauthorizedMissing or invalid authentication token
502 Bad GatewayUpstream coverage service error
504 Gateway TimeoutUpstream coverage service timed out
GET
/wx-data/

Authorization

Authorization<token>

Token-based authentication with required prefix "Token"

In: header

Query Parameters

BBOX?string

WMS only. Bounding box of the map tile in the chosen SRS, formatted as minX,minY,maxX,maxY.

CRS?string

Coordinate reference system. Default is CRS:84 (WGS 84 lon/lat).

Default"CRS:84"
CoverageId?string

Coverage identifier. See endpoint description for the full list of available coverages (HRRR, GFS, RTMA, MRMS, NDFD). Required for GetCoverage and DescribeCoverage.

DIM_FORECAST?string

WMS only. Forecast lead time as an ISO 8601 duration. Range: PT0H (analysis/nowcast) through PT23H in hourly steps.

DIM_RUN?string

WMS only. Model run time as an ISO 8601 datetime (e.g. 2026-05-08T16:00:00Z). Defaults to the latest available run. Multiple run times are available approximately every 8 hours.

ELEVATION?string

WMS only. Elevation dimension. Required for variables that have a vertical component: icing_severity accepts fl10, fl30, or fl90 (flight levels 1,000 / 3,000 / 9,000 ft); wind_direction, wind_speed, and wind_uv require 10m (10 metres above surface).

FORMAT?string

WCS only. Response format. Must be JSON (uppercase literal). WCS returns numeric JSON data only, image formats are not supported by WCS and will return 400. WMS map tiles use FORMAT=image/png but that is a WMS-specific parameter.

HEIGHT?integer

WMS only. Height of the returned map image in pixels.

LAYERS?string

WMS only. Aviation weather layer name following the pattern meandair-global-none-{variable}-{bit_depth}-{crs} where {crs} is 3857 (Web Mercator) or 4326 (WGS 84). Use SERVICE=WMS&REQUEST=GetCapabilities to retrieve the full list of available layer names.

RANGESUBSET?string

Variable name to retrieve. Available variables depend on the selected CoverageId, see the coverage tables in the endpoint description. Examples: wind_speed, temperature, reflectivity, precipitation_rate.

REQUEST?string

Operation to perform: GetCapabilities, DescribeCoverage, or GetCoverage.

Default"GetCoverage"
SERVICE?string

OGC service type. Use WCS for numeric JSON data extracts (weather model coverage). Use WMS for rendered PNG map tile requests (aviation weather map tiles). Defaults to WCS.

Default"WCS"
SRS?string

WMS only. Spatial reference system for the map tile. Must match the CRS suffix of the requested LAYERS value.

STYLES?string

WMS only. Colormap style name. All aviation weather variables support the same 15 styles. Leave empty for the server default.

SUBSET?string

Spatial or temporal subset using OGC axis syntax. Repeat this parameter for each axis. Supported axes: lat(value), long(value), z(value) (metres AGL), f(duration) (ISO 8601 forecast offset). Example (forecast): &SUBSET=lat(40)&SUBSET=long(-98)&SUBSET=f(PT1H). Omit z for surface requests, the service selects the correct AGL level per variable.

TRANSPARENT?string

WMS only. Whether the background of the tile should be transparent.

VERSION?string

WCS protocol version.

Default"2.0.1"
WIDTH?integer

WMS only. Width of the returned map image in pixels.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/wx-data/?BBOX=-10039448%2C3310902%2C-7001535%2C5106255&CRS=CRS%3A84&CoverageId=hrrr-conus-sfcf_latest&DIM_FORECAST=PT0H&DIM_RUN=2026-05-08T16%3A00%3A00Z&ELEVATION=10m&FORMAT=JSON&HEIGHT=512&LAYERS=meandair-global-none-wind_speed-16-epsg_3857&RANGESUBSET=wind_speed&REQUEST=GetCoverage&SERVICE=WCS&SRS=EPSG%3A3857&STYLES=mp_viridis&SUBSET=lat%2840%29&TRANSPARENT=TRUE&VERSION=2.0.1&WIDTH=512"
{  "coverageData": [    {      "parameterName": "wind_speed",      "units": "m/s",      "modelName": "hrrr-conus-sfcf",      "modelRun": "2026-04-24T00:00:00Z",      "modelForecast": "PT1H",      "validity": "2026-04-24T01:00:00Z",      "level": 0,      "interval": null,      "values": [        [          8.3        ]      ],      "coordinates": [        {          "lat": 40,          "lon": -98        }      ]    }  ]}

On this page