> ## Documentation Index
> Fetch the complete documentation index at: https://docs-old.tilebox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Tilebox

> One API for humans and agents to discover data, run workflows, and debug results across environments.

Tilebox documentation

# Start building with Tilebox

Query Earth Data. Build, run, debug, and scale geospatial workflows across environments. One API for humans and agents.

What do you want to build?

<kbd>⌘K</kbd>

[Quickstart](https://docs-old.tilebox.com/quickstart.md)

[Get API Key](https://docs-old.tilebox.com/authentication.md)

[Ingest data](https://docs-old.tilebox.com/guides/datasets/ingest-into-spatiotemporal-catalog.md)

> [tab] Agent
>
> You
>
> Build a reproducible Tilebox workflow that starts with a user-provided CSV of known data centers and then:
>
> <ul>
>   <li>Finds cloud-free Sentinel-2 imagery over a target lat/lon in a time window</li>
>   <li>Reads the relevant band products and crops scenes to a 3km area around the target</li>
>   <li>Computes the cloud fraction for the cropped area and filters out scenes > 1%</li>
>   <li>Compares before/after by scoring visible change based on suitable metrics</li>
>   <li>Creates a datacenter site ranking based on score</li>
> </ul>
>
> Use the provided Tilebox skills to research datasets, access storage, outline the workflow, and then implement it. Deploy and run on our GCP cluster, in case of failures inspect runner logs and iterate on the workflow.
>
> [Ask your agent to build with Tilebox…
> ↵](https://docs-old.tilebox.com/onboard-your-agent.md)

> [tab] CLI
>
> ```bash CLI wrap theme={"system"}
> curl -fsSL https://install.tilebox.com/cli.sh | sh
>
> tilebox dataset query
>   open_data.copernicus.sentinel2_msi
>   --last 7d
>   --spatial-extent 'POLYGON((-109 41,-109 37,-102 37,-102 41,-109 41))'
>   --limit 10
>
> tilebox job submit
>   --name "Datacenter Monitoring"
>   --task "ComputeVisibleChange"
>   --input "{\"before\": \"2024-06-01\", \"after\": \"2026-06-01\"}"
>   --cluster gcp-Drv6L7Li4t7Yvk
> ```

> [tab] Python
>
> ```python runner.py lines theme={"system"}
> from tilebox.datasets import Client
> from tilebox.workflows import ExecutionContext, Runner, Task
>
> class ComputeVisibleChange(Task):
>   before: str
>   after: str
>
>   def execute(self, context: ExecutionContext):
>     sentinel2 = Client().dataset(
>       "open_data.copernicus.sentinel2_msi"
>     )
>     scenes = sentinel2.collection("S2A_S2MSI1A").query(
>         temporal_extent=(before, after),
>     )
>     context.logger.info("Found scenes", n=len(scenes.granule_name))
>     context.submit_subtasks([
>       ProcessScene(str(name) for name in scenes.granule_name)
>     ])
>
> runner = Runner(tasks=[ComputeVisibleChange])
> ```

> [tab] Go
>
> ```go main.go lines theme={"system"}
> type ComputeVisibleChange struct {
>     Before time.Time
>     After  time.Time
> }
>
> func (t *ComputeVisibleChange) Execute(ctx context.Context) error {
>     client := datasets.NewClient()
>     dataset, _ := client.Datasets.Get(ctx, "open_data.copernicus.sentinel2_msi")
>     collection, _ := client.Collections.Get(ctx, dataset.ID, "S2A_S2MSI1C")
>
>     var scenes []*examplesv1.Sentinel2Msi
>     _ = client.Datapoints.QueryInto(ctx, dataset.ID, &scenes,
>         datasets.WithCollections(collection),
>         datasets.WithTemporalExtent(query.NewTimeInterval(t.Before, t.After)),
>     )
>
>     slog.InfoContext(ctx, "Found scenes", slog.Int("n", len(scenes)))
>     for _, scene := range scenes {
>         _, _ = workflows.SubmitSubtask(ctx, &ProcessScene{
>             Name: scene.GetGranuleName(),
>         })
>     }
>     return nil
> }
> ```

Get started

## Choose how you build

Use Tilebox directly as a developer, or give an agent the same tools and documentation context so it can operate Tilebox for you.

![Agent connected to Earth data and workflow observability tools](https://mintcdn.com/tilebox/OG82l42M6WXqYPhQ/assets/landing/agent-mode-light.png?fit=max\&auto=format\&n=OG82l42M6WXqYPhQ\&q=85\&s=18b496d36ddaaa01521f932f3ce91e33)

### Use an agent

Configure a coding agent with the Tilebox CLI, agent skills, and optional MCP access. Agents can inspect datasets, write workflow code, submit jobs, and debug runs with Tilebox context.

[Onboard your agent](https://docs-old.tilebox.com/onboard-your-agent.md)

[Create and deploy workflows](https://docs-old.tilebox.com/guides/workflows/agentic-workflow-iteration.md)

[Connect with MCP](https://docs-old.tilebox.com/agents-and-ai-tools/tilebox-mcp.md)

![Developer terminal connected to code debugging and dataset tools](https://mintcdn.com/tilebox/OG82l42M6WXqYPhQ/assets/landing/developer-mode-light.png?fit=max\&auto=format\&n=OG82l42M6WXqYPhQ\&q=85\&s=c31bea5c7a3e510a923142573cfc5a23)

### Build as a developer

Use the Console, Python SDK, Go SDK, and CLI to query data, ingest your own catalogs, create workflow tasks, and run them across your infrastructure.

[Quickstart](https://docs-old.tilebox.com/quickstart.md)

[Choose an SDK](https://docs-old.tilebox.com/sdks/introduction.md)

[API reference](https://docs-old.tilebox.com/api-reference/python/tilebox.datasets/Client.md)

Learn

## Explore the platform

Start from the outcome you need. Tilebox combines typed data access, workflow execution on your infrastructure, and shared observability for people and agents working on geospatial systems.

[Query satellite data](https://docs-old.tilebox.com/datasets/query/querying-data.md)

Search typed datasets by time, location, collection, custom fields, or datapoint ID.

![Tilebox dataset explorer](https://mintcdn.com/tilebox/TYquvc9froFIydg1/assets/console/datasets-explorer-light.png?fit=max\&auto=format\&n=TYquvc9froFIydg1\&q=85\&s=25163d0ab91baee40d610995d4681d47)

[Inspect workflow runs](https://docs-old.tilebox.com/workflows/run-and-inspect/introduction.md)

Use logs, traces, progress, and job state to debug workflows and verify results.

![Workflow logs in Tilebox Console](https://mintcdn.com/tilebox/9yPiIuCV-2WPK6fa/assets/workflows/observability/logs-light.png?fit=max\&auto=format\&n=9yPiIuCV-2WPK6fa\&q=85\&s=068fa329d5ba74113d4505d20d8a58b0)

[Deploy to your own compute](https://docs-old.tilebox.com/workflows/concepts/runners.md)

Connect runners to your own infrastructure and control where workflow tasks execute.

![Tilebox runner architecture](https://mintcdn.com/tilebox/8Hd5jKc7vBRiEF-C/assets/workflows/runners/runner-architecture-light.png?fit=max\&auto=format\&n=8Hd5jKc7vBRiEF-C\&q=85\&s=c8112daafaf53c463d515b2a74b9080e)

[Browse practical recipes](https://docs-old.tilebox.com/guides/cookbook.md)

Find task-focused guides for querying data, building workflows, connecting storage, and operating Tilebox.

![Recipe cards for common Tilebox guides](https://mintcdn.com/tilebox/dxHaiozQkO1TMxd3/assets/landing/cookbook-recipes-light.png?fit=max\&auto=format\&n=dxHaiozQkO1TMxd3\&q=85\&s=363190a288b4f3b85f447d22f04b9699)

> [card] [Run a workflow](https://docs-old.tilebox.com/workflows/introduction.md)

> [card] [Assets and storage](https://docs-old.tilebox.com/datasets/assets-and-storage/overview.md)

> [card] [Ingest data](https://docs-old.tilebox.com/guides/datasets/ingest-into-spatiotemporal-catalog.md)

> [card] [Sample notebooks](https://docs-old.tilebox.com/sdks/python/sample-notebooks.md)

> [card] [Spatio-temporal datasets](https://docs-old.tilebox.com/datasets/types/spatiotemporal.md)

> [card] [Jobs](https://docs-old.tilebox.com/workflows/concepts/jobs.md)

Scale

## From query to operational pipelines

Start with open data or your own catalogs, turn processing steps into tasks, and run them where your data and infrastructure already live.

**1. Discover and query data**

Query open datasets or your own custom Tilebox datasets by time, area of interest, collection, or datapoint ID.

**2. Build workflow tasks**

Turn processing steps into workflow tasks that can submit subtasks, report progress, use caches, and emit logs and traces.

**3. Prototype locally**

Develop with local runners, iterate quickly, and prototype your geospatial workflows.

**4. Deploy to your own compute**

Run workflows across cloud, on premise, sovereign, air-gapped, or edge environments while Tilebox tracks jobs and distributes work for parallel execution.

**5. Inspect and iterate**

Query job state, logs, spans, and progress from the Console, SDKs, CLI, or agent tools.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.