IEM Plugin

IEM Plugin

Plugin for working with IEM data.

Name For Model
iem
Update Date
6 months ago
Description For Model
Plugin for working with IEM data.

Plugin Functions/Features (Plugin API Document)

Operation IdHTTP MethodDescription
1ffg_bypoint_service_ffg_bypoint_json_getGETFlash Flood Guidance by point. The IEM caches the grib file source of Flash Flood Guidance issued by the NWS River Forecast Centers. If you do not provide a valid timestamp, it will assume you want the latest forecast. If you provide a valid timestamp, the service will look for the nearest forecast made within the past 24 hours of the provided time.
2service_iemre_daily__fmt__getGETIEM Reanalysis single Day values by point.
3service_iemre_hourly__fmt__getGETDo Something Fun!
4service_iemre_multiday__fmt__getGETIEM Reanalysis multi-day values by point.
5idot_dashcam_service_idot_dashcam__fmt__getGETExposes Iowa DOT 'Dashcam' imagery from its snowplows.
6idot_rwiscam_service_idot_rwiscam__fmt__getGETExposes Iowa RWIS Imagery.
7service_iowa_winter_roadcond__fmt__getGETExposes Iowa DOT Winter Road Conditions.
8service_isusm_daily__fmt__getGETISU Soil Moisture Network (Multi)-Daily Data. Returns Iowa State University Soil Moisture Network daily or multi daily summary information. Please note that the end date is inclusive.
9service_nws_bufkit__fmt__getGETNWS BUFKIT Profiles. This service exposes a [massive archive](https://mtarchive.geol.iastate.edu) of [BUFKIT](https://training.weather.gov/wdtd/tools/BUFKIT/index.php) data. For a single model runtime, this service returns one or more forecast profiles based on the parameters provided. There are a number of mechanisms to approach this service. Here are some examples requests and what the URL would look like. - Provide all forecast hours from the most recently available HRRR model for KDSM. `/api/1/nws/bufkit.json?model=HRRR&fall=1&station=KDSM` - Provide closest RAP (assumed) forecast to given location with forecast hour matching the present time. `/api/1/nws/bufkit.json?lat=42.5&lon=-92.5` - Provide the HRRR 11 March 2021 12z run valid at 16z for KDSM. `/api/1/nws/bufkit.json?model=HRRR&station=KDSM&runtime=2021-03-11T12:00&time=2021-03-11T16:00` - Provide the closest in time NAM forecast valid at 15z on 10 March 2021 for KDSM. `/api/1/nws/bufkit.json?station=KDSM&model=NAM&station=2021-03-10T15:00` Implementation Notes -------------------- 1. If you set the `fmt` to `txt`, the raw BUFKIT file is returned. 1. You must either provide a `station` or provide a `lat` and `lon` value to search for the nearest available station for the given model. The closest station picked is not an exact science. 1. If you provide a `runtime`, but no valid `time`, this service will use the current UTC timestamp to locate a forecast hour. It is always best to specify both or set `fall=1` to get all forecast hours for that `runtime`.
10service_nws_centers_for_point__fmt__getGETNWS Centers for Point. Service provides the NWS centers with areal coverage for the provided latitude and longitude point. Sadly, this is not an exact science when things like marine and fire weather zones are included.
11service_nws_current_flood_warnings__fmt__getGETNWS Current **Point** Flood Warnings. This service provides a current listing of NWS Flood Warnings for forecast points. These are warnings that contain a HVTEC NWSLI, which is the forecast point the NWS uses. There is no archive support to this app, it is what drives the data presentation on [IEM Rivers](https://mesonet.agron.iastate.edu/rivers/). This service only provides the warnings for points that the NWS publishes metadata for [here](https://www.weather.gov/vtec/Valid-Time-Event-Code). The forecast warning point is included as an attribute ``latitude`` and ``longitude``, the actual geometries here are the polygons associated with the warnings. The data returned is sorted by river name and then crudely by forecast warning point latitude descending (north to south).
12service_nws_emergencies__fmt__getGETNWS Flash Flood + Tornado Emergencies. The IEM attempts to keep track of NWS issued Flash Flood and Tornado Warnings which are specially denoted as emergencies. This listing is __not__ official! For GeoJSON, this service will return a mixture of storm based warning polygons and county polygons. The `is_sbw` field will denote which is which. The reason is that some of these emergencies predated polygon warnings.
13service_nws_outlook_by_point__fmt__getGETSPC/WPC Outlooks by Point. This service emits the Storm Prediction Center (SPC) and Weather Prediction Center (WPC) outlooks at a given point and optional valid time. This service covers the SPC Convective, SPC Fire Weather, and WPC Excessive Rainfall Outlook. The meaning of `valid` for this service is to specify that point in time that the given outlooks would have been in place. For example, a valid time of `2011-04-27 18:00+00` means you would get the most recent day 1 outlooks at that time and then the most recent day 2-8 outlooks valid for subsequent dates. Rewording, the day 2 outlook returned for the `2011-04-27` provided date is valid for the next day and not the day 2 outlook from "yesterday". If `valid` is not provided, you get the current outlooks. The SPC hatched/significant probability is handled in a special manner such that both the `SIGN` threshold and outlook probability number are both returned.
14service_daily__fmt__getGETIEM Daily Summary Service. This API service returns IEM computed and network provided daily summary information. There are a number of ways to approach this app: - `/api/1/daily.geojson?date=2021-06-02&network=IA_ASOS` - Get all IA_ASOS stations for date in GeoJSON. - `/api/1/daily.json?station=AMW&network=IA_ASOS&year=2021` - Get all Ames ASOS data for 2021. - `/api/1/daily.json?station=AMW&network=IA_ASOS&year=2021&month=6` - Get all Ames ASOS data for June 2021. Note that this service can emit GeoJSON, but sometimes that format does not make much sense, for example when requesting just one station's worth of data.
15service_nws_taf__fmt__getGETTerminal Aerodome Forecast (TAF) Single Forecast. This service returns the forecast data found within a single TAF issuance for one specified station/airport. If you do not specify a `issued` timestamp, the service returns the most recently issued TAF. If you specify a `issued` timestamp that does not exactly match a TAF issuance, a search is done for the nearest issuance backward in time up to 24 hours. For example, providing `issued=2021-04-16T12:00Z` would provide either the forecast issued at that time or the most recent forecast issued prior to that time. Presently, the `presentwx`, `skyl`, and `skyc` fields are arrays in JSON and space seperated strings in TXT output formats.
16service_nws_taf_overview__fmt__getGETTerminal Aerodome Forecast (TAF) Overview. This service provides an overview of all presently available and most recent TAF issuances as processed and parsed by the IEM. The attributes for each forecast include references to API endpoints providing either the raw text (`text_href`) or JSON representation (`data_href`). Additionally a forecast aggregate of `min_visibility` (miles) is provided.
17usdm_bypoint_service_usdm_bypoint_json_getGETUS Drought Monitor (USDM) by lat/lon point. The case of no-drought for the given USDM date is presented by a `null` value in the JSON.
18shef_currents_service_shef_currents__fmt__getGETProvide SHEF Currents for a given pe and duration.
19service_obhistory__fmt__getGETIEM Observation History for One Date. This service returns either a JSON or CSV formatted response with one day's worth of observations as per the IEM Processing. The day is a local calendar date for the weather station. Timestamps are returned in both UTC `utc_valid` and local time `local_valid`. When you request data for a HADS/COOP site, you get additional columns of data back that include the explicit SHEF variable code. The `full=boolean` parameter controls the number of variables returned. The default is to only return variables that the station/network supports. Setting it to `true` means that each response contains the full domain of available variables from this service even if the station does not report it.
20last_shef_service_last_shef__fmt__getGETProvide most recent IEM processed SHEF variables for given station. This service returns the most recent SHEF processed variables for a given station. There is no differentiation here between the COOP and DCP sites, whatever is available for a given station is returned. The processing is generally in "real-time", so everything returned should be current up until the request time.
21service_nws_lsrs_by_point__fmt__getGETNWS Local Storm Reports (LSR)s by point. This service emits NWS Local Storm Reports (LSR)s for a given latitude/longitude and over an optional period of time. You can specify a search radius as either `radius_degrees` (value less than 10) or `radius_miles` (value less than 1000). Since LSRs are provided with only 0.01 degree lat/lon precision, don't get excited that this radius search is an exact science! This service has data back to 2002 or so, but data quality isn't the greatest prior to 2005/2006.
22service_mos__fmt__getGETModel Output Statistics Service. This service provides the atomic data from the text station MOS that the NWS issues. Depending on the date, the supported `model=` values are AVN, GFS, ETA, NAM, NBS, NBE, ECM, LAV, and MEX. The variable names generally match the abbreviations found in the raw text files, but a few names are rectified to match between various models. `x_n` is translated to `n_x`, `wnd` to `wsp`, and `wgs` to `gst`. There is an additional quirk to the GFS LAMP (LAV) guidance. The model `runtime` found in the raw files has a timestamp of 30 minutes after the hour for reasons I am unsure. This is rectified back to the top of the hour. For example, use `12:00Z` for the 12z run instead of `12:30Z`. The NBE and NBS MOS data is saved every hour, but then only the 1, 7, 13, and 19 Z runs are saved after 7 days have passed (to save space in the database). The data found within the NBX is included with the NBE.
23service_network__network_id___fmt__getGETIEM Station Metadata for One Network. The IEM organizes stations into networks. This service returns station metadata for a given network.
24networks_service_networks__fmt__getGETIEM Networks Overview. For better or worse, the IEM organizes station data into groups called "networks". These networks are often delineate political bounds and station types.
25service_station__station_id___fmt__getGETIEM Station Metadata for One Indentifier. The IEM uses standardized station identifiers whenever possible. This service returns metadata for a given station idenitifier. Note that some identifiers are shared between multiple IEM network labels, so you will get multiple results in some cases.
26nwstext_service_nwstext__product_id__getGETSimple NWS Text Service. This service emits a text file for a given IEM defined product ID. For example: `/api/1/nwstext/201410071957-KDMX-FXUS63-AFDDMX`
27meteobridge_service_meteobridge_json_getGETIEM-Only API used to feed in Meteobridge Data. Unuseful for you all :)
28drydown_service_drydown_json_getGETBabysteps.
29service_nws_spc_mcd__fmt__getGETStorm Prediction Center Mesoscale Convective Discussions. This service either returns any MCDs that have a valid time at the given valid time. Rewording, if the issuance time is before the given time and the expiration is after the given time. The other option is to provide a number of hours to look back for any MCDs issued within that timespan. For example, to get any MCDs issued within the past six hours `/api/1/nws/spc_mcd.geojson?hours=6`.
30service_nws_spc_outlook__fmt__getGETStorm Prediction Center Convective/Fire Outlook. This service returns a single SPC outlook, either fire weather or convective, for a given date and issuance cycle. Both the date and issuance cycle are a bit tricky to explain, so we shall attempt to do so here. The `valid` param is the date the outlook is valid for, but since an individual outlook crosses calendar dates, this is the date of the first calendar date in the period. For example, the Day 1 outlook issued on 20 Jun 2022 at 12 UTC is valid for a period ending at 12 UTC on 21 Jun 2022. The `valid` value in this case is 20 Jun 2022. Next up is the `cycle` parameter, which the IEM attempts to compute to ensure that there is one canonical outlook per issuance cycle. For example, if SPC issues a 20 UTC outlook and then updates it 30 minutes later, that update then is assigned as the canonical update at 20 UTC for that date. This is not an exact science, so caveat emptor. So you are likely wondering what these cycle values are? They are the UTC hour timestamp of the outlook, for example 1, 6, 13, 16, and 20 are the possible values for the Day 1 convective outlook. And finally, the `outlook_type` parameter, which is either `C` for convective or `F` for fire weather.
31service_nws_wpc_mpd__fmt__getGETWeather Prediction Center Mesoscale Precipitation Discussions. This service either returns any MPDs that have a valid time at the given valid time. Rewording, if the issuance time is before the given time and the expiration is after the given time. The other option is to provide a number of hours to look back for any MPDs issued within that timespan. For example, to get any MPDs issued within the past six hours `/api/1/nws/wpc_mpd.geojson?hours=6`.
32service_nws_wpc_national_hilo__fmt__getGETWeather Prediction Center Daily National High/Low Temperature. The WPC issues a daily product that contains a contiguous US maximum and minimum temperature. The IEM attempts to archive this product and overwrite intermediate values with what the public commonly sees for a national high and low temperature report. This service presently has three means to approach. - `year=2023` provide all the daily values for a year - `state=IA` provide all the values in the archive for the given state. - provide nothing and get the entire database. There is no GeoJSON service yet as geo-locating the stations referenced is not necessarily straight forward and not explicitly provide by the XTEUS text/xml product. The `n_x` return column/attribute denotes if the value is a minimum=N or maximum=X.
33cow_service_cow_json_getGETIEM Cow (NWS Storm Based Warning Verification) API See [IEM Cow](https://mesonet.agron.iastate.edu/cow/) webpage for the user frontend to this API and for more discussion about what this does. While this service only emits JSON, the JSON response embeds to GeoJSON objects providing the storm reports and warnings. Changed on 2 Sep 2021 to count LSRs valid at warning expiration time as verifying as per NWS Verification Branch guidance.
34currents_service_currents__fmt__getGETIEM Currents Service. You can approach this API via the following ways: - `/currents.json?network=IA_ASOS` :: A single "network" worth of currents. - `/currents.json?networkclass=COOP&wfo=DMX` :: All COOP sites for WFO DMX - `/currents.json?networkclass=ASOS&country=US` :: All ASOS sites for US - `/currents.json?state=IA` :: Everything the IEM has for Iowa - `/currents.json?wfo=DMX` :: Everything the IEM has for WFO DMX - `/currents.json?station=DSM&station=AMW` :: Explicit listing of stations - `/currents.json?event=ice_accretion_1hr` :: Special METAR service. For better or worse, the ".json" in the URI path above controls the output format that the service emits. This service supports ".json", ".geojson", and ".txt" (comma delimited) formats.
35nwstext_service_raobs_by_year_json_getGETList of Sounding Parameters by Year. This service provides IEM computed sounding parameters for a given site and year.
36service_scp_json_getGETNESDIS Satellite Cloud Product. This service emits an outer join between the NESDIS Satellite Cloud Product and available METAR cloud reports. The NESDIS product is resampled to match the closest METAR in time. The column names in the response are suffixed to include the SCP source code for that observation. For example, the field ``mid_1`` represents the mid value from the Goes East Sounder. The ``_2`` value is the Goes West Sounder and ``_3`` value is the Goes Imager. A given site may have 1 or more of those 3 potential options.
37service_spc_watch_outline_geojson_getGETStorm Prediction Center Watch Outline. This returns the issuance watch polygon outlines in GeoJSON format valid at the provided UTC timestamp. These are the four sided watch outlines and not some county union.
38service_nws_afos_list__fmt__getGETList NWS Text Products Metadata. This service returns metadata and hrefs for IEM stored NWS Text Products. The `product_id` can be used to call `/api/1/nwstext/{product_id}` to retrieve the actual text. The provided `cccc` (WMO Source Code) can be provided as a three character identifier. In that case, a `K` is prepended to rectify it. The provided `pil` (AFOS / AWIPS ID / 3-6 length identifier) can be an explicit match or if it is three characters, a begining of `pil` match. See examples below for a better explaination. This service omits any products with a PIL starting with `LLL` or `WRK`, which are generally AWIPS internal products. Sometimes multiple text products can exist within a single `product_id`. Sadly, NWS directives are not always followed for how this is not supposed to be an ambiguous situation. The `count` attribute provides the number of products that exist at the given `product_id`. Examples -------- - `/api/1/nws/afos/list.json?cccc=KDMX&date=2022-10-28` : get all KDMX text products for the UTC date of 28 Oct 2022. - `/api/1/nws/afos/list.json?pil=TOR&date=2022-10-28` : get all NWS for UTC date of 28 Oct 2022 that have a awips / afos id starting with TOR. - `/api/1/nws/afos/list.json?cccc=KDMX&pil=TORDMX&date=2022-10-28` : get all KDMX text TOR products for the UTC date of 28 Oct 2022.
39service_vtec_county_zone__fmt__getGETNWS VTEC Watch/Warning/Advisories (WaWA) by County/Zone. This service provides VTEC-enabled NWS Watch, Warnings, and Advisories that are specific to counties/parishes and zones. There is a seperate service for storm based / polygon VTEC events. For the GeoJSON output, the returned geometries are not the greatest due to a whole host of reasons. The attributes do contain the 6-character UGC codes, so joining that to a higher resolution dataset may be necessary for your visualization purposes.
40service_vtec_sbw_interval__fmt__getGETNWS VTEC Storm Based Warnings over Time Interval. This service provides storm based warnings over a given time interval. The default methodology is to include any events that were **issued** between the inclusive `sdate` and `edate` UTC timestamps. For some storm based warnings, the associated geometry can be shrinked with event updates. The default option is to only provide the issuance geometry. The `only_new` option deserves some explanation. The default behavior is to only return events that have a status of `NEW`. This is the default behavior for the NWS VTEC service. This `NEW` status is associated with the initial issuance of the product. Some events get updated with polygon geometries that may be shrunk. The `utc_polygon_begin` and `utc_polygon_end` timestamps explicitly track the time duration of the polygon, whereas the `utc_issue` and `utc_expire` track the time duration of the event, but are not always set for the polygon updates. I realize this is horribly confusing! Attempting to simplify, if you are only worried about the issuance polygons, use the `utc_{issue,expire}` timestamps. If you are worried about the polygon updates, use the `utc_polygon_{begin,end}` timestamps.
41service_nws_ugcs__fmt__getGETNWS UGCS (Zones/Counties) Metadata. The National Weather Service often issues products specific to counties or forecast zones. They use Universal Geographic Codes to represent these areas. These UGC codes are six characters. The NWS UGC database has changed over time as new forecast zones are defined or removed. Sometimes counties / forecast zones are reassigned to a different NWS Weather Forecast Office. So this service takes an optional timestamp flag to provide an archived version of this database. The IEM has attempted to properly keep track of the UGC database since 2007. For GeoJSON, this service returns simplified geometries as the full resolution dataset is very large.
42time_service_servertime_getGETSimple ping/pong style service returning the server's time.