In this guide
STAC Access – Static and Dynamic API
Last Updated: March 6, 2025
Overview
In this guide, you will learn what a dynamic STAC API is, what is included in the PGC STAC API, and how to use it to access PGC DEM data with python and desktop GIS software.
Introduction
What is STAC
STAC (Spatio Temporal Asset Catalog) is a standard for organizing geospatial data for convenient access. Essentially, it is a set of GeoJSON-formatted metadata describing location and time for geospatial information, with links to the actual data to enable automated/cloud access, organized within sets of Catalogs and Collections.
Static vs. Dynamic STAC
PGC uses this STAC standard for publishing metadata about its public DEM datasets (ArcticDEM, REMA, and portions of EarthDEM) in both static and dynamic versions. The static STAC allows users to browse and view the DEM data assets online like a file directory tree, while the dynamic STAC API enables automated querying and retrieval of the data.
AWS-Hosted Data
The data referenced by both the static and dynamic STACs is hosted on the Registry of Open Data on AWS ArcticDEM and REMA, where you can find links to the static STAC Catalogs. The dynamic API leverages this cloud access to efficiently serve data from client-side queries. Users can learn more about the data and other methods for accessing it on the web pages for ArcticDEM and REMA.
Static STAC Download from AWS
All publicly-available DEM data from our projects are also hosted in an open AWS bucket and indexed with a STAC catalog.
DEM data assets can be identified using the DEM STAC items and downloaded or used directly in the cloud.
ArcticDEM AWS Open Data Registry page:
REMA AWS Open Data Registry page:
Dynamic STAC API
The PGC Dynamic STAC API URL is: https://stac.pgc.umn.edu/api/v1/
Instead of downloading individual files, the dynamic STAC API enables users to build spatial and temporal queries against the DEM data collections within automated workflows and from desktop GIS applications and retrieve data directly from the cloud.
Access Methods
With the URL, users can employ several approaches for accessing the API, with python and desktop applications detailed below.
Python
The pystac_client library provides access to STAC APIs within python, as demonstrated in the PGC tutorial notebook here.
Desktop GIS
Common desktop GIS platforms also include tools for interacting with STAC API endpoints. You can find a quick start tutorial for accessing the PGC STAC API in ArcGIS Pro and QGIS here.
Additional Resources
The developers of the STAC standard provide additional tutorials for leveraging the STAC APIs, including python tutorials for reading data from a STAC Catalog using the pystac library and for accessing Sentinel-2 data from AWS and Landsat data from Microsoft Planetary Computer.
Quick Links
PGC Code Tutorials
- Python jupyter notebook example workflow
- Desktop GIS plugin tutorials
- Github
STAC Spec
Desktop GIS STAC documentation
- ArcGIS Pro – Only available in ArcGIS Pro version 3.2 and higher
- QGIS STAC API Browser Plugin