STAC SpatioTemporal Asset Catalogs
The STAC specification is a common language to describe geospatial information, so it can more easily be worked with, indexed, and discovered.
STAC was created for
Data providers
STAC is a standardized way to expose collections of spatial temporal data. If you are a provider of data about the earth needing to catalog your holdings, STAC is driving a uniform means for indexing assets.
Developers
If you are building infrastructure to host, ingest, or manage collections of spatial data, STAC’s core JSON is the bare minimum needed to describe geospatial assets, and is extensible to customize to your domain.
Data users
Users of spatial temporal data are often burdened with building unique pipelines for each different collection of data they consume. The STAC community has defined this specification to remove this complexity and spur common tooling.
What is STAC
At its core, the SpatioTemporal Asset Catalog (STAC) specification provides a common structure for describing and cataloging spatiotemporal assets.
A spatiotemporal asset is any file that represents information about the earth captured in a certain space and time.
The STAC Specification
The STAC Specification consists of 4 semi-independent specifications. Each can be used alone, but they work best in concert with one another.
STAC Item is the core atomic unit, representing a single spatiotemporal asset as a GeoJSON feature plus datetime and links.
STAC Catalog is a simple, flexible JSON file of links that provides a structure to organize and browse STAC Items. A series of best practices helps make recommendations for creating real world STAC Catalogs.
STAC Collection is an extension of the STAC Catalog with additional information such as the extents, license, keywords, providers, etc that describe STAC Items that fall within the Collection.
STAC API provides a RESTful endpoint that enables search of STAC Items, specified in OpenAPI, following OGC's WFS 3.
The Vision
The goal is for all providers of spatiotemporal assets (Imagery, SAR, Point Clouds, Data Cubes, Full Motion Video, etc) to expose their data as SpatioTemporal Asset Catalogs (STAC), so that new code doesn't need to be written whenever a new data set or API is released.
More About STACBrowse the STAC Tutorial Library
Want to learn to interact with STAC data in a project, spin up a STAC API, or make the data you manage more accessible? Browse our library of tutorials and workshops about STAC and its ecosystem.
Browse TutorialsGetting Started with STAC
Learn about the specification, the options available for applying STAC in a practical way, and the community and resources to help you along the way.
Intro to STAC: an Overview of the Specification |
STAC & Python
Learn the basics of using PySTAC to read, write, and manipulate STAC through these hands-on Jupyter Notebooks.
Read a STAC Catalog Using PySTAC |
Create a Basic STAC Catalog Using PySTAC |
Create a STAC Item that Implements the EO Extension Using PySTAC |
Create a STAC Catalog with a Collection Using PySTAC |
STAC & QGIS
Learn the basics of using the STAC API Browser QGIS Plugin.
Install the QGIS STAC API Browser Plugin |
Introduction to Using the QGIS STAC API Browser Plugin |
STAC & R
Learn the basics of downloading STAC data in R through these lessons.
Download data from a STAC API using R, rstac, and GDAL |
Using rstac and CQL2 to query STAC APIs |
STAC & CLI
Learn the basics of downloading STAC data via the CLI.
Download data from a STAC API using GDAL and the command line |
STAC How-to Guides
Answer specific STAC questions using these STAC How-to Guide Jupyter Notebooks.
Access Sentinel 2 Data from AWS |
Reading Landsat Data from Microsoft |
Explore STAC datasets
The amount of STAC data being collected and hosted in STAC APIs and static catalogs grows everyday as data providers adopt STAC as the defacto specification for spatiotemporal data. As more datasets are created, our community adds them to stacindex.org to be discovered and explored.
Explore STAC tools & resources
The STAC ecosystem continues to evolve with its ever growing library of tools and resources. More are being listed all the time at stacindex.org to experiment with and use in your next STAC project.
Client Tools & Resources
sat-search |
Intake-stac |
Rocket |
DotNetStac |
STAC Browser |
rstac |
stac4s |
Server Tools & Resources
resto |
sat-api-pg |
Staccato |
Franklin |
pygeoapi |
STAC Server |
STAC Image Mosaic Store |
STAC is supported by these incredible organizations
Get Involved
The best jumping off point to get involved with the STAC Community is joining the STAC Community Google Group at groups.google.com/g/stac-community. Upon signup, you will receive invitations to the biweekly STAC Community meetup (every other Monday at 11 am EST). Use this time zone converter if needed.
There are a variety of specific ways to get involved with STAC, from building software, creating new STAC Catalogs, working on the spec, or helping in outreach. We strive to be fully open, collaborative and welcoming community. Learn more on our "Get Involved" page.