eoAPI CDK Constructs
eoapi-cdk is a package of AWS CDK constructs designed to encapsulate eoAPI services and best practices as simple reusable components.
For more background on the included services see The Earth Observation API
Included constructs
Detailed API docs for the constructs can be found here.
pgSTAC Database
An RDS instance with pgSTAC installed and the Postgres parameters optimized for the selected instance type.
STAC API
A STAC API implementation using stac-fastapi with a pgSTAC backend. Packaged as a complete runtime for deployment with API Gateway and Lambda.
For runtime notes on event loops, Mangum lifespan handling, and SnapStart-aware database pool initialization, see lib/stac-api/runtime/README.md.
pgSTAC Titiler API
A complete dynamic tiling API using titiler-pgstac to create dynamic mosaics of assets based on STAC Search queries. Packaged as a complete runtime for deployment with API Gateway and Lambda and fully integrated with the pgSTAC Database construct.
STAC browser
A CDK construct to host a static Radiant Earth STAC browser on S3.
OGC Features/Tiles API
A complete OGC Features/Tiles API using tipg. Packaged as a complete runtime for deployment with API Gateway and Lambda. By default the API will be connected to the Database's public schema.
STAC Ingestor
An API for large scale STAC data ingestion and validation into a pgSTAC instance.
Authentication for the STAC Ingestor API can be configured with JWTs authenticated by JWKS. To learn more about securing FastAPI applications with this approach see Securing FastAPI with JWKS (AWS Cognito, Auth0).
A sample Cognito-based authentication system is available at aws-asdi-auth.
Bastion Host
A bastion host is a secure gateway that provides access to resources in a private subnet. In this case it provides the ability to make administrative connections to eoAPI's pgSTAC instance.
For more background on bastion hosts in AWS see this article.
And for configuration instructions for this construct see the docs.
Published Packages
Release
Versioning is handled via Conventional Commits and Release Please.
Commits merged to main are collected into a release PR. A maintainer reviews and merges that PR to cut a release. After the release is created on GitHub, the distribution workflow publishes the generated Python package to PyPI and the generated JavaScript package to npm.
The release workflow uses the DS_RELEASE_BOT_ID and DS_RELEASE_BOT_PRIVATE_KEY repository secrets to authenticate the release bot.
Tests
Each pull request to main is added to a merge queue so that a "deployment test" workflow can run before the merge actually happens. If the deployment fails, the merge is cancelled. Here is the definition of this workflow and the tests definition.
Metadata
Release files for eoapi-cdk 11.8.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| eoapi_cdk-11.8.0.tar.gz | 675.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| eoapi_cdk-11.8.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.3 MB
Release files / eoapi_cdk-11.8.0.tar.gz
| Download URL | eoapi_cdk-11.8.0.tar.gz |
|---|---|
| Size | 675.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0dad0b0750913bdcfeeae1847a2d8c0a5437eff7ac212455256fcfd3f8cef81f
|
|
BLAKE2b-256 checksum How to use checksums |
15e74ec05f969f33b8f6ac463aa895456e23876df8ee72ede7984918b0bcdb27
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 30, 2026.
Transparency logRelease files / eoapi_cdk-11.8.0-py3-none-any.whl
| Download URL | eoapi_cdk-11.8.0-py3-none-any.whl |
|---|---|
| Size | 673.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5b0e27ca359a23c127066c166d67fc9cbcb1e43cabbd3a7658e38493b07ff8fe
|
|
BLAKE2b-256 checksum How to use checksums |
262338d5fdcef359e6690b99aba98e7a50db7ba3f2469cbed1443a94ab4621bc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 30, 2026.
Transparency log