Skip to main content

Fetchez Logo

Fetchez

Fetch. Cache. Deliver.

License Python PyPI version Conda Version Project Chat DOI

Fetchez is a modular and extensible geospatial data engineering framework for discovering, retrieving, caching, transforming, and composing spatial data workflows.

Originally developed as the core fetching engine for the CUDEM project, Fetchez has evolved into a standalone geospatial ETL and workflow platform. Registered data Modules, Bundles, processing Hooks, Presets, recipe Modifiers, and Schemas can be composed through Python, YAML recipes, or the registry-driven command-line interface.


📦 Installation

pip install fetchez

Optional Extensions: To enable module specific library dependencies, install with the desired extras:

pip install fetchez[full]

🐄 Quickstart

Compose and run an ad-hoc geospatial pipeline directly from registered Fetchez components.

CLI

Fetch Copernicus topography and NOAA multibeam bathymetry for Miami and apply a global audit hook:

fetchez build -R loc:"Miami, FL" audit copernicus multibeam

Components are chained from left to right. Hooks and presets before the first data source are global; hooks and presets following a module or bundle apply only to that source.

For example, apply raster processing only to Copernicus while auditing the complete workflow:

fetchez build \
    -R loc:"Miami, FL" \
    audit \
    copernicus raster_warp --res 1s \
    multibeam

Registered bundles can also be filtered directly from the CLI:

fetchez build \
    -R loc:"Miami, FL" \
    glob-tnm --select products=1m/1_9as

Export an ad-hoc pipeline as a reusable YAML recipe:

fetchez build \
    -R loc:"Miami, FL" \
    --export miami.yaml \
    audit copernicus multibeam

Run the saved recipe later:

fetchez run miami.yaml

Use fetchez modules list, fetchez modules bundles list, fetchez hooks list, and fetchez hooks presets list to discover available components.

Python

import fetchez

# Fetch Electronic Nautical Chart data from NOAA
files = fetchez.get("charts", region=[-120, -118, 33, 34], hooks=['unzip', 'filename_filter:match=.000', 'audit'])

DEM Building with Globato

Fetchez provides the generic discovery, retrieval, streaming, processing, recipe, and execution framework. Its sister project and Fetchez extension, Globato, adds the elevation-source vocabulary, DEM-oriented presets, MultiStack accumulation, and multi-resolution interpolation workflows used to build reproducible coastal and topobathymetric DEMs.

Globato reuses the Fetchez pipeline model while exposing a curated DEM-focused command-line interface.

Check out Globato.


📚 Documentation

Would you like to know more? Check out our Official Documentation to learn about:

  • Modules & Bundles: Discover more than more than 100 public geospatial data sources and compose curated source collections.

  • Pipeline Building: Build ad-hoc workflows directly from registered Modules, Bundles, Hooks, and Presets with fetchez build.

  • Recipes & YAML: Save, share, reproduce, and execute complete workflows with fetchez run.

  • Hooks & Presets: Stream, filter, transform, inspect, and process data throughout the Fetchez execution lifecycle.

  • Bundle Selection: Select subsets of reusable data bundles using declarative configuration fields from YAML or the CLI.

  • Recipe Modifiers: Mutate assembled recipes before execution to apply workflow-level policy or conditional composition.

  • Domain Schemas: Validate recipes against reusable domain-specific requirements.

  • Python API: Search for components, retrieve data, and construct processing workflows directly from Python.

  • Plugins & Extensions: Add custom Modules, Hooks, Readers, Streams, Bundles, Presets, Schemas, and domain-specific extensions without modifying Fetchez core.

  • Execution Lifecycle: Learn how Fetchez moves data through manifest, file, stream, and collection processing stages.


🛠️ Used By

This project is used by the following open-source projects:

  • Globato — A Fetchez extension for reproducible coastal and topobathymetric DEM construction using curated elevation sources, MultiStack accumulation, and multi-resolution interpolation workflows.
  • IVERT — The ICESat-2 Validation of Elevations Reporting Tool.
  • Transformez — A geospatial reference transformation framework for vertical and spatial datum workflows, with Fetchez integration.

Are you using this project? Open a Pull Request to add your project to the list!


⚖ License

This project is licensed under the MIT License - see the LICENSE file for details.

Copyright (c) 2010-2026 Regents of the University of Colorado

Metadata

Release files for fetchez 0.12.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for fetchez 0.12.0
File Size Uploaded Provenance
fetchez-0.12.0.tar.gz 1.6 MB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for fetchez 0.12.0
File Interpreter ABI Platform
fetchez-0.12.0-py3-none-any.whl Python 3 none any Details

Total release size: 3.3 MB

Release files / fetchez-0.12.0.tar.gz

Download URL fetchez-0.12.0.tar.gz
Size 1.6 MB
Tags Source
SHA-256 checksum
How to use checksums
9128c6923352fe94b8c5840f305cbd501ce37c900ff4e8ed89165aceefd2e000
BLAKE2b-256 checksum
How to use checksums
f1d0a485ac3d0c85c299d70cffc1699814c40aacb91abb5b1560dc82cd39c06b
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 Oct 22, 2026.

Transparency log

Release files / fetchez-0.12.0-py3-none-any.whl

Download URL fetchez-0.12.0-py3-none-any.whl
Size 1.7 MB
Tags Python 3
SHA-256 checksum
How to use checksums
7ba992c6b3b5274f5bed153ca5f09ae2e02c2a54554790ccadf6099f8a90cb55
BLAKE2b-256 checksum
How to use checksums
75ef4b6cda9358b8e50d3ae6eca2b6aa1cf49fb4e937cec5724a74f130c3ee49
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 Oct 22, 2026.

Transparency log

Security for fetchez 0.12.0

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.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for fetchez-0.12.0.tar.gz

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 Oct 22, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.12.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page