Skip to main content
Python tasks are data classes. Annotate each task field with one of the supported types below, and Tilebox reconstructs that type before the task runs. This page applies to tasks executed by Python runners. For tasks submitted and executed across different languages, use an input schema supported by both SDKs. See Multi-language workflows. The examples focus on task input declarations and omit the execute method.

Python standard library

These types require no extra packages: Example usage

Protocol buffers

protobuf provides generated message classes for strongly typed schemas and is installed with tilebox-workflows. Tilebox supports Message and its generated subclasses. Example usage

Tilebox Datasets

tilebox-datasets provides value types for dataset and job queries and is installed with tilebox-workflows. Example usage

Shapely

shapely provides geometry types for vector features, footprints, and areas of interest. Example usage

Coordinate systems and raster transforms

affine provides two-dimensional affine transformation matrices. pyproj provides coordinate reference systems and coordinate transformations. Example usage

ODC Geo

odc-geo provides projection-aware geometry and raster grid types. Example usage

Raster windows

rasterio provides raster data access and processing. async-geotiff provides asynchronous GeoTIFF and Cloud Optimized GeoTIFF reads. Install either package separately when your workflow uses its window type. Example usage

Keep task inputs compact

Task inputs are part of the workflow graph and are not intended for large arrays, file contents, pandas DataFrames, clients, or open files. Store large data in object storage or the job cache, then pass a compact reference such as an ID, object prefix, cache key, time interval, geometry, or raster window.