Datasets

List Datasets

get

List datasets with optional filtering.

Returns a flat list of datasets with offset-based pagination. For iterating over large or unbounded result sets, prefer GET /v1/datasets/cursor which uses cursor-based pagination and guarantees stable ordering across pages.

All filters are combined with AND logic. When multiple tags are specified, only datasets matching all of them are returned.

Authorizations
OAuth2passwordRequired
Token URL:
Query parameters
nameany ofOptional

Case-insensitive substring search on dataset name.

stringOptional
or
nullOptional
created_afterany ofOptional

Filter datasets created after this ISO 8601 timestamp.

string · date-timeOptional
or
nullOptional
created_beforeany ofOptional

Filter datasets created before this ISO 8601 timestamp.

string · date-timeOptional
or
nullOptional
limitinteger · min: 1 · max: 1000OptionalDefault: 100
offsetintegerOptionalDefault: 0
bboxany ofOptional

Bounding box as comma-separated values: 'min_lon,min_lat,max_lon,max_lat'. If you want to query a single location, you can use the same value for min and max. All values should be in EPSG:4326 coordinates.

Example: 12.34,56.78,23.45,67.89
stringOptional
or
nullOptional
tagany ofOptional

Tag filter as repeated query params. Format: '?tag=key1:value1&tag=key2:value2'. Use ':' for a literal colon, '\' for a literal backslash. Datasets must match ALL specified tags.

Example: sensor:sentinel-2
string[]Optional
or
nullOptional
Header parameters
x-earthscale-api-keyany ofOptional
stringOptional
or
nullOptional
Responses
chevron-right
200

Successful Response

application/json

Single entry in the list of datasets with a subset of information

dataset_idstring · uuidRequired
dataset_version_idstring · uuidRequired
namestringRequired
typestring · enumRequiredPossible values:
created_atstring · date-timeRequired
updated_atstring · date-timeRequired
get
/datasets

Add Dataset

post
Authorizations
OAuth2passwordRequired
Token URL:
Header parameters
x-earthscale-api-keyany ofOptional
stringOptional
or
nullOptional
Body
or
or
or
Responses
chevron-right
200

Successful Response

application/json
dataset_idstring · uuidRequired
dataset_version_idstring · uuidRequired
post
/datasets

Delete Dataset

delete

Soft-delete a dataset.

Deletion works by creating a new dataset version that marks the dataset as deleted. This hides the dataset from the catalog and listing APIs, but tiling requests for existing versions are still accepted. Optionally removes the dataset from all maps.

Both dataset IDs and dataset version IDs are accepted — it does not matter which is passed, the entire dataset is deleted either way.

Returns the dataset ID and the ID of the newly created deletion marker version.

Authorizations
OAuth2passwordRequired
Token URL:
Path parameters
dataset_idstring · uuidRequired
Query parameters
remove_from_mapsbooleanOptionalDefault: true
Header parameters
x-earthscale-api-keyany ofOptional
stringOptional
or
nullOptional
Responses
chevron-right
200

Successful Response

application/json
dataset_idstring · uuidRequired
dataset_version_idstring · uuidRequired
delete
/datasets/{dataset_id}

List Datasets (Cursor Pagination)

get

List datasets with cursor-based pagination (recommended).

This is the preferred endpoint for iterating over datasets. It returns a paginated response with a next_cursor token. Pass the token back as the cursor query parameter to fetch the next page. When next_cursor is null, all results have been returned.

Supports the same filters as GET /v1/datasets. All filters are combined with AND logic. When multiple tags are specified, only datasets matching all of them are returned.

Results are ordered by updated_at descending, then by dataset version ID for stable ordering across pages.

Authorizations
OAuth2passwordRequired
Token URL:
Query parameters
nameany ofOptional

Case-insensitive substring search on dataset name.

stringOptional
or
nullOptional
created_afterany ofOptional

Filter datasets created after this ISO 8601 timestamp.

string · date-timeOptional
or
nullOptional
created_beforeany ofOptional

Filter datasets created before this ISO 8601 timestamp.

string · date-timeOptional
or
nullOptional
cursorany ofOptional

Opaque cursor token from a previous paginated response.

stringOptional
or
nullOptional
limitinteger · min: 1 · max: 1000OptionalDefault: 100
bboxany ofOptional

Bounding box as comma-separated values: 'min_lon,min_lat,max_lon,max_lat'. If you want to query a single location, you can use the same value for min and max. All values should be in EPSG:4326 coordinates.

Example: 12.34,56.78,23.45,67.89
stringOptional
or
nullOptional
tagany ofOptional

Tag filter as repeated query params. Format: '?tag=key1:value1&tag=key2:value2'. Use ':' for a literal colon, '\' for a literal backslash. Datasets must match ALL specified tags.

Example: sensor:sentinel-2
string[]Optional
or
nullOptional
Header parameters
x-earthscale-api-keyany ofOptional
stringOptional
or
nullOptional
Responses
chevron-right
200

Successful Response

application/json

Paginated list of datasets with cursor-based pagination

next_cursorany ofOptional
stringOptional
or
nullOptional
get
/datasets/cursor

Get Latest Dataset Version

get

Get the latest version of a dataset by dataset ID.

Authorizations
OAuth2passwordRequired
Token URL:
Path parameters
dataset_idstring · uuidRequired
Header parameters
x-earthscale-api-keyany ofOptional
stringOptional
or
nullOptional
Responses
chevron-right
200

Successful Response

application/json
dataset_idstring · uuidRequired
dataset_version_idstring · uuidRequired
namestringRequired
typestring · enumRequiredPossible values:
created_atstring · date-timeRequired
optimized_tile_serverany ofRequired
or
nullOptional
get
/datasets/{dataset_id}/latest

Get Dataset Version By Id

get

Get a dataset version by version ID.

Authorizations
OAuth2passwordRequired
Token URL:
Path parameters
version_idstring · uuidRequired
Header parameters
x-earthscale-api-keyany ofOptional
stringOptional
or
nullOptional
Responses
chevron-right
200

Successful Response

application/json
dataset_idstring · uuidRequired
dataset_version_idstring · uuidRequired
namestringRequired
typestring · enumRequiredPossible values:
created_atstring · date-timeRequired
optimized_tile_serverany ofRequired
or
nullOptional
get
/dataset-versions/{version_id}

Last updated