Skip to main content
Use a spatio-temporal dataset when each datapoint has both a time and a geometry. This is useful for internal imagery catalogs, derived products, ground truth data, regions of interest, and processing outputs that need geospatial lookup. This guide shows the shape of the workflow. For the full ingestion guide, see Ingesting data.

Create the dataset

Create a dataset in the Tilebox Console and choose the Spatio-temporal kind. Tilebox adds the required time, id, ingestion_time, and geometry fields automatically. Add fields that describe the products you want to catalog, such as:
FieldTypePurpose
product_idstringStable product or scene identifier.
locationstringStorage path, object key, or provider location.
cloud_coverfloat64Optional quality or filtering field.
processing_levelstringProduct processing level or category.

Prepare datapoints

Load your source metadata into a GeoDataFrame. The geometry column should contain the footprint for each datapoint.
Python
import geopandas as gpd

products = gpd.read_parquet("products.geoparquet")
products = products.rename(
    columns={
        "timestamp": "time",
        "scene": "product_id",
        "path": "location",
    }
)

Ingest the catalog

Ingest the prepared records into a collection.
Python
from tilebox.datasets import Client

client = Client()
dataset = client.dataset("my_org.imagery_catalog")
collection = dataset.collection("processed-scenes")

collection.ingest(products)

Query by time and location

After ingestion, use the same query model as Tilebox open data catalogs.
Python
from shapely import box

area = box(11.0, 46.0, 12.0, 47.0)

matches = collection.query(
    temporal_extent=("2026-01-01", "2026-02-01"),
    spatial_extent=area,
)

Next steps

Spatio-temporal datasets

Learn the required fields and query behavior.

Ingest from common file formats

Load CSV, Parquet, GeoParquet, and NetCDF data before ingestion.