PySTAC
PySTAC is a library for working with the SpatioTemporal Asset Catalog specification in Python 3.
Installation
Install from PyPi (recommended)
python -m pip install pystac
If you would like to enable the validation feature utilizing the
jsonschema project, install with the optional
validation requirements:
python -m pip install 'pystac[validation]'
If you would like to use the orjson instead of the
standard json library for JSON serialization/deserialization, install with the
optional orjson requirements:
python -m pip install 'pystac[orjson]'
If you would like to use a custom RetryStacIO class for automatically retrying
network requests when reading with PySTAC, or if you have non-ASCII characters in
your urls you'll need
urllib3:
python -m pip install 'pystac[urllib3]'
If you are using jupyter notebooks and want to enable pretty display of pystac
objects you'll need jinja2
python -m pip install 'pystac[jinja2]'
Install from source
git clone https://github.com/stac-utils/pystac.git
cd pystac
python -m pip install .
See the installation page for more options.
Versioning
The core PySTAC API follows Semantic Versioning. As of Spring 2026, our extension implementations have moved to their own Python packages, so they can be versioned independently of the core PySTAC API. Breaking changes to the API of extension packages are not considered breaking changes for the purposes of PySTAC versioning.
The STAC extension packages' version will match the version extension itself, e.g. pystac-ext-projection v2.0.0 corresponds to the v2.0.0 release of the projection extension. Any changes to the software (not the extension) will be released via post releases.
Documentation
See the documentation page for the latest docs.
Developing
See contributing docs for details on contributing to this project.
Running the quickstart and tutorials
There is a quickstart and tutorials written as jupyter notebooks in the docs/tutorials folder.
To run the notebooks, run a jupyter notebook with the docs directory as the notebook directory:
jupyter notebook --ip 0.0.0.0 --port 8888 --notebook-dir=docs
You can then navigate to the notebooks and execute them.
Requires Jupyter be installed.
Release files for pystac 1.15.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pystac-1.15.2.tar.gz | 7.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pystac-1.15.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 13.3 kB
Release files / pystac-1.15.2.tar.gz
| Download URL | pystac-1.15.2.tar.gz |
|---|---|
| Size | 7.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4c9a3b2352cad7eb3c226145251c65cbe5c1b04b25d4265b30c015dddf5f391d
|
|
BLAKE2b-256 checksum How to use checksums |
8338300a9bc5bf30748c7bc768afd8564e0b6958810c8ca0c50f1c0847676a40
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 27, 2026.
Transparency logRelease files / pystac-1.15.2-py3-none-any.whl
| Download URL | pystac-1.15.2-py3-none-any.whl |
|---|---|
| Size | 5.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b006833253d7e5acd04d877bb7504e14aa1dc98dd0f0ab12f893595030dda2b3
|
|
BLAKE2b-256 checksum How to use checksums |
345481ca429d8ee0fa1ff78ad3102a612cfb8224aae4ba42ac625c726b13f81c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 27, 2026.
Transparency log