Public, programmatic access to the Wyoming wildfire raster catalog and analysis endpoints. Browse what data is available, fetch the underlying Cloud Optimized GeoTIFFs directly, or extract values for an area of interest.
All raster layers are pulled from open-source providers (LANDFIRE; the USDA Forest Service Wildfire Risk to Communities program; the USDA FS building / housing / population counts; the USGS National Boundary Dataset), cropped to a Wyoming extent with a 24-km buffer, and (for some layers) scaled for storage efficiency. The scaleFactor returned with each layer must be applied to raw pixel values to recover real-world units. Everything is served as Cloud Optimized GeoTIFFs (COGs) from our S3 bucket, addressable directly via the /vsicurl/ protocol from rasterio, GDAL, or QGIS.
Catalog of every public raster, per-layer metadata, native class tables, COG URLs, band statistics, and the display config used in the in-app map.
/wyldfire/v1/layers
Read-only passthrough of our ESRI symbology registry: renderer configs, color ramps, definition expressions, and the upstream ArcGIS REST URLs for boundary / feature layers.
/wyldfire/v1/app-manager/layers
Token-required endpoints for summary statistics, raw pixels, or per-year time-series over a GeoJSON point or polygon. Multi-variable per request.
/wyldfire/v1/extract/…
Each layer has a native format (how it's stored in the raster) and a display mode (how it's rendered in the WyldFire app). Power users reading a COG directly with rasterio or QGIS see the native values, not the displayed bins.
| Layer | Native format | In-app display |
|---|---|---|
whpcls | Categorical (uint8, 7 classes from USDA FS) | Categorical (colormap) |
evt | Categorical (~2519 NatureServe class codes) | Categorical (colormap) |
bc | Continuous (integer count, ~0–8 buildings / pixel) | Class-breaks (binned for display) |
hu | Continuous (scaled int → housing units) | Class-breaks (binned for display) |
pc | Continuous (scaled int → population) | Class-breaks (binned for display) |
bp | Continuous (scaled int → annual probability) | Class-breaks (binned for display) |
rps | Continuous (scaled int → home risk index) | Class-breaks (binned for display) |
cfl | Continuous (scaled int → feet) | Stretch (continuous) |
whp | Continuous (integer index, 270 m) | Not displayed — see whpcls |
curl https://wyldfire.wygisc.org/wyldfire/v1/layers | jq .
library(terra)
library(jsonlite)
# Resolve the COG URL for burn probability
meta <- fromJSON("https://wyldfire.wygisc.org/wyldfire/v1/layers/bp/cog")
# Open via /vsicurl/ for HTTP range reads — no local download
cog <- rast(meta$vsicurl)
print(cog)
names(cog) # band labels, e.g. "bp_2020"
plot(cog[[1]]) # quick-look of the most recent year
library(terra)
library(jsonlite)
# A point of interest in Wyoming
pt <- vect(cbind(-107.5, 43.5), crs = "EPSG:4326")
pt <- project(pt, crs(cog))
# Raw (scaled-integer) value at the point
raw <- extract(cog, pt)
# Recover real-world units (annual burn probability) using the
# scaleFactor returned alongside each layer's metadata
layer <- fromJSON("https://wyldfire.wygisc.org/wyldfire/v1/layers/bp")
raw[, -1] * layer$scaleFactor
library(httr2)
resp <- request("https://wyldfire.wygisc.org/wyldfire/v1/extract/value") |>
req_auth_bearer_token("YOUR-TOKEN") |>
req_body_json(list(
variables = c("bp", "cfl"),
lon = -107.5,
lat = 43.5,
year = "2020"
)) |>
req_perform() |>
resp_body_json()
# Each result carries the raw value plus scaleFactor / units / nodataValue
bp <- resp$results$bp
bp$value * bp$scaleFactor
curl -X POST https://wyldfire.wygisc.org/wyldfire/v1/extract/summary \
-H "Authorization: Bearer YOUR-TOKEN" \
-H "Content-Type: application/json" \
-d '{
"variables": ["bp", "cfl", "whpcls"],
"year": "2020",
"shape": "{\"type\":\"Point\",\"coordinates\":[-107.5,43.5]}"
}'
Catalog and App Manager endpoints are fully open — anyone can browse what data exists, fetch COG URLs, and read display configs.
The Extract endpoints (/extract/summary, /extract/pixels, /extract/timeseries) require a token. Send it as Authorization: Bearer <your-token> or as a token field in the request body.
Tokens are issued manually. To request one, submit the access-request form — describe the project you're working on and what kind of access you need. The team will review and email a token back.
The WyldFire map renders several boundary / feature layers (counties, watersheds, public lands, etc.) that are not hosted by us — they live on external ArcGIS REST services published by the U.S. Census Bureau, USGS, and others. The page below summarises each one with its upstream service URL, the definition expression (where clause) we apply, and any popup or search configuration.
For the full schema, every endpoint, every parameter, every response shape:
Open the Scalar reference →