Understanding the STAC format
Every Wyvern scene comes with a SpatioTemporal Asset Catalog (STAC) record, and the Open Data Program is organized as a STAC catalog. This page explains the three building blocks of STAC, shows how our catalog uses them, and lists the tools that read it. Once you know the structure, you can find scenes by place, date, or application without downloading anything.
What is STAC?
STAC is an open standard for describing geospatial data so it can be searched and combined consistently. Because every provider that uses STAC describes its data the same way, the code you write to find Wyvern scenes will also find Sentinel-2 or Landsat scenes with few changes.
A spatiotemporal asset is any file that records information about the Earth at a particular place and time: satellite, drone, or aerial imagery of any kind, LiDAR point clouds, or video.
A STAC catalog is a set of JSON files that link to one another. Each file follows the core specification for the kind of object it describes, and the specification can be extended with extra fields for particular kinds of data [1]. Following the links takes you from the top of the catalog down to the assets themselves: in our case, the hyperspectral images, their masks, and their previews.
Key components of STAC
Item
An Item describes one scene. It records when and where the scene was captured and links to its files, such as the GeoTIFF and thumbnails. An Item is a GeoJSON feature with extra metadata fields, so any modern GIS or geospatial library can read its footprint directly.
Example:
wyvern_dragonette-003_20260104T142819_394db198_l2a, a Dragonette-003 scene captured on January 4, 2026, used in the water quality tutorial.
The Item specification uses the standard GeoJSON fields and adds its own. Figure 1 shows them.

Figure 1: The STAC Item specification. Fields in grey (stac_extensions and collection) are optional. [2]
A Wyvern Item links to seven assets: the hyperspectral COG, a Data Mask, a Pixel Quality Mask, an overview image, a thumbnail, the item's own metadata, and a zip file of everything. Its properties record the processing level, platform, cloud cover, and sun and viewing angles, and the COG asset lists every band's centre wavelength and FWHM.
Catalog
A Catalog organizes Items into a hierarchy you can browse, like a table of contents. A catalog.json file links to any combination of other Catalogs, Collections, and Items. Figure 2 shows its required fields.
Example: The Open Data root catalog, which groups the same scenes four ways: by year, by application (agriculture, coastal, forestry, mining, and others), by spectral range, and a separate set of L1B scenes.

Figure 2: The STAC Catalog specification. Fields in white (title and stac_extensions) are optional. [2]
Collection
A Collection is a Catalog with added metadata. It groups Items that share characteristics, such as a sensor, a time period, or an acquisition campaign, and it adds required fields that describe the whole group: spatial and temporal extent, licence, and providers. A Catalog just organizes; a Collection also tells you what's in it. Figure 3 shows the extra fields.
Example: The Extended VNIR collection, which groups every 31-band scene from Dragonette-002 onward.

Figure 3: The STAC Collection specification. In addition to the optional Catalog fields (title, stac_extensions), providers, keywords, assets, and summaries are optional for Collections. [2]
How Wyvern delivers data with STAC
Each Wyvern scene is a Cloud-Optimized GeoTIFF with its own embedded metadata, plus a STAC Item JSON file alongside it. The GeoTIFF gives you the pixels and the band wavelengths. The STAC Item gives you everything else, including the scale factor that turns L2A's stored integers into reflectance. The GeoTIFF doesn't store that factor, so take it from the STAC Item. See processing levels for why that matters.
Browse the catalog in the Open Data Program, or contact us about tasking new imagery.
Tools for working with STAC
These are the tools we'd reach for first:
-
PySTAC: reads, writes, and edits STAC Catalogs, Collections, and Items in Python. Use it to walk a static catalog like ours.
-
pystac-client: searches STAC APIs by area, date, and properties from Python. Use it for providers such as Microsoft Planetary Computer or Earth Search that serve Sentinel-2 and Landsat through an API.
-
STAC Browser: a web interface for browsing and searching STAC catalogs. The Open Data Program site is built on it.
-
GDAL: not a STAC tool as such, but it reads the COGs a STAC Item points to, directly over HTTP, which makes it easy to drop into a STAC workflow.
For a working example in Python, the agents page has a short script that walks our catalog, picks a scene, and resolves bands by wavelength.
Further reading
References
[1] STAC API Community Standard Work Item Justification. https://portal.ogc.org/files/105786
[2] Intro to STAC https://stacspec.org/en/tutorials/intro-to-stac/