API Reference (1.0.0)

Download OpenAPI specification:Download

This page contains the documentation on how to use sentinel hub services through API calls.

Note: This documentation is not complete

Process

Make sure to use the appropriate end-point for each of the datasets, e.g. for Landsat, Sentinel-3, etc.

Process

Authorizations:
OAuth2
header Parameters
Accept
string

Sets response type and has priority over the type defined in the output object of the request. Possible values are image/jpeg, image/png, image/tiff, application/json, application/tar, application/x-tar, multipart/mixed, and application/octet-stream.

Request Body schema:
required
object (ProcessRequestInput)
object (ProcessRequestOutput)
evalscript
required
string

Your evalscript. For details, click here.

Responses

Response Schema:
string <image/jpeg> (Jpeg image)

Request samples

Content type
{
  • "input": {
    },
  • "output": {
    },
  • "evalscript": "string"
}

Response samples

Content type
No sample

Core

This is an OpenAPI definition of the SpatioTemporal Asset Catalog API - Core specification. Any service that implements this endpoint to allow discovery of spatiotemporal assets can be considered a STAC API.

Make sure to use the appropriate end-point for each of the datasets, e.g. for Landsat, Sentinel-3, etc.

landing page

Returns the root STAC Catalog or STAC Collection that is the entry point for users to browse with STAC Browser or for search engines to crawl. This can either return a single STAC Collection or more commonly a STAC catalog.

The landing page provides links to the API definition (link relations service-desc and service-doc) and the STAC records such as collections/catalogs (link relation child) or items (link relation item).

Extensions may add additional links with new relation types.

Responses

Response Schema: application/json
stac_version
required
string (CatalogStacVersion)
Array of Reference to a JSON Schema (string) or Reference to a core extension (string) (CatalogStacExtensions) unique
type
required
string
id
required
string
title
string
description
required
string
required
Array of objects (CatalogLinks)
conformsTo
required
Array of strings

A list of all conformance classes implemented by the server. In addition to the STAC-specific conformance classes, all OGC-related conformance classes listed at GET /conformances must be listed here. This entry should mirror what GET /conformances returns, if implemented.

Response samples

Content type
application/json
{}

information about specifications that this API conforms to

A list of all conformance classes specified in a standard that the server conforms to.

Responses

Response Schema: application/json
conformsTo
required
Array of strings

A list of all conformance classes implemented by the server. In addition to the STAC-specific conformance classes, all OGC-related conformance classes listed at GET /conformances must be listed here. This entry should mirror what GET /conformances returns, if implemented.

Collections

This is an OpenAPI definition of the SpatioTemporal Asset Catalog API - Collections specification. This is a subset of the STAC API - Features specification.

the feature collections in the dataset

A body of Feature Collections that belong or are used together with additional links. Request may not return the full set of metadata per Feature Collection.

Authorizations:
OAuth2

Responses

Response Schema: application/json
required
Array of objects (CatalogLinks)
required
Array of objects (collection)

Response samples

Content type
application/json
{}

describe the feature collection with id `collectionId`

A single Feature Collection for the given if collectionId. Request this endpoint to get a full list of metadata for the Feature Collection.

Authorizations:
OAuth2
path Parameters
collectionId
required
string

local identifier of a collection

Responses

Response Schema: application/json
stac_version
required
string (CatalogStacVersion)
Array of Reference to a JSON Schema (string) or Reference to a core extension (string) (CatalogStacExtensions) unique
type
required
string
id
required
string

identifier of the collection used, for example, in URIs

title
string

human readable title of the collection

description
required
string

Detailed multi-line description to fully explain the catalog or collection. CommonMark 0.29 syntax MAY be used for rich text representation.

keywords
Array of strings

List of keywords describing the collection.

license
required
string (CatalogLicense)

License(s) of the data as a SPDX License identifier. Alternatively, use proprietary if the license is not on the SPDX license list or various if multiple licenses apply. In these two cases links to the license texts SHOULD be added, see the license link relation type.

Non-SPDX licenses SHOULD add a link to the license text with the license relation in the links section. The license text MUST NOT be provided as a value of this field. If there is no public license URL available, it is RECOMMENDED to host the license text and link to it.

required
object (CatalogExtent)

The extent of the features in the collection. In the Core only spatial and temporal extents are specified. Extensions may add additional members to represent other extents, for example, thermal or pressure ranges.

The first item in the array describes the overall extent of the data. All subsequent items describe more precise extents, e.g., to identify clusters of data. Clients only interested in the overall extent will only need to access the first item in each array.

Array of objects (CatalogProviders)

A list of providers, which may include all organizations capturing or processing the data or the hosting provider. Providers should be listed in chronological order with the most recent provider being the last element of the list.

required
Array of objects (CatalogLinks)
object

Summaries are either a unique set of all available values or statistics. Statistics by default only specify the range (minimum and maximum values), but can optionally be accompanied by additional statistical values. The range can specify the potential range of values, but it is recommended to be as precise as possible. The set of values must contain at least one element and it is strongly recommended to list all values. It is recommended to list as many properties as reasonable so that consumers get a full overview of the Collection. Properties that are covered by the Collection specification (e.g. providers and license) may not be repeated in the summaries.

Response samples

Content type
application/json
{}

Get the JSON Schema defining the list of variable terms that can be used in CQL2 expressions.

This endpoint returns a list of variable terms that can be used in CQL2 expressions. The precise definition of this can be found in the OGC API - Features - Part 3: Filtering and the Common Query Language (CQL) specification.

Authorizations:
OAuth2
path Parameters
collectionId
required
string

ID of Collection

Responses

Response Schema: application/schema+json
object

Response samples

Content type
application/schema+json
{}

Features

This is an OpenAPI definition of the SpatioTemporal Asset Catalog API - Features specification. This extends OGC API - Features - Part 1: Core.

fetch features

Fetch features of the feature collection with id collectionId.

Every feature in a dataset belongs to a collection. A dataset may consist of multiple feature collections. A feature collection is often a collection of features of a similar type, based on a common schema.

Authorizations:
OAuth2
path Parameters
collectionId
required
string

local identifier of a collection

query Parameters
limit
integer [ 1 .. 100 ]
Default: 10

The optional limit parameter recommends the number of items that should be present in the response document.

If the limit parameter value is greater than advertised limit maximum, the server must return the maximum possible number of items, rather than responding with an error.

Only items are counted that are on the first level of the collection in the response document. Nested objects contained within the explicitly requested items must not be counted.

Minimum = 1. Maximum = 100. Default = 10.

Array of numbers or Array of numbers

Only features that have a geometry that intersects the bounding box are selected. The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth):

  • Lower left corner, coordinate axis 1
  • Lower left corner, coordinate axis 2
  • Minimum value, coordinate axis 3 (optional)
  • Upper right corner, coordinate axis 1
  • Upper right corner, coordinate axis 2
  • Maximum value, coordinate axis 3 (optional)

The coordinate reference system of the values is WGS 84 longitude/latitude (http://www.opengis.net/def/crs/OGC/1.3/CRS84).

For WGS 84 longitude/latitude the values are in most cases the sequence of minimum longitude, minimum latitude, maximum longitude and maximum latitude. However, in cases where the box spans the antimeridian the first value (west-most box edge) is larger than the third value (east-most box edge).

If the vertical axis is included, the third and the sixth number are the bottom and the top of the 3-dimensional bounding box.

If a feature has multiple spatial geometry properties, it is the decision of the server whether only a single spatial geometry property is used to determine the extent or all relevant geometries.

datetime
string

Either a date-time or an interval, open or closed. Date and time expressions adhere to RFC 3339. Open intervals are expressed using double-dots.

Examples:

  • A date-time: "2018-02-12T23:20:50Z"
  • A closed interval: "2018-02-12T00:00:00Z/2018-03-18T12:31:12Z"
  • Open intervals: "2018-02-12T00:00:00Z/.." or "../2018-03-18T12:31:12Z"

Only features that have a temporal property that intersects the value of datetime are selected.

If a feature has multiple temporal properties, it is the decision of the server whether only a single temporal property is used to determine the extent or all relevant temporal properties.

Responses

Response Schema: application/geo+json
type
required
string
Value: "FeatureCollection"
required
Array of objects (featureGeoJSON)
Array of objects (CatalogLinks)
timeStamp
string <date-time> (CatalogFeaturesTimeStamp)

This property indicates the time and date when the response was generated.

numberReturned
integer (CatalogFeaturesNumberReturned) >= 0

The number of features in the feature collection.

A server may omit this information in a response, if the information about the number of features is not known or difficult to compute.

If the value is provided, the value must be identical to the number of items in the "features" array.

Response samples

Content type
application/geo+json
{}

fetch a single feature

Fetch the feature with id featureId in the feature collection with id collectionId.

Authorizations:
OAuth2
path Parameters
collectionId
required
string

local identifier of a collection

featureId
required
string

local identifier of a feature

Responses

Response Schema: application/geo+json
stac_version
required
string (CatalogStacVersion)
Array of Reference to a JSON Schema (string) or Reference to a core extension (string) (CatalogStacExtensions) unique
id
required
string (CatalogItemId)

Provider identifier, a unique ID.

bbox
required
Array of numbers (CatalogBbox) [ 4 .. 6 ] items

Only features that have a geometry that intersects the bounding box are selected. The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (elevation or depth):

  • Lower left corner, coordinate axis 1
  • Lower left corner, coordinate axis 2
  • Lower left corner, coordinate axis 3 (optional)
  • Upper right corner, coordinate axis 1
  • Upper right corner, coordinate axis 2
  • Upper right corner, coordinate axis 3 (optional)

The coordinate reference system of the values is WGS84 longitude/latitude (http://www.opengis.net/def/crs/OGC/1.3/CRS84).

For WGS84 longitude/latitude the values are in most cases the sequence of minimum longitude, minimum latitude, maximum longitude and maximum latitude. However, in cases where the box spans the antimeridian the first value (west-most box edge) is larger than the third value (east-most box edge).

If a feature has multiple spatial geometry properties, it is the decision of the server whether only a single spatial geometry property is used to determine the extent or all relevant geometries.

Example: The bounding box of the New Zealand Exclusive Economic Zone in WGS 84 (from 160.6°E to 170°W and from 55.95°S to 25.89°S) would be represented in JSON as [160.6, -55.95, -170, -25.89] and in a query as bbox=160.6,-55.95,-170,-25.89.

required
pointGeoJSON (object) or multipointGeoJSON (object) or linestringGeoJSON (object) or multilinestringGeoJSON (object) or polygonGeoJSON (object) or multipolygonGeoJSON (object) or geometrycollectionGeoJSON (object) (CatalogGeometryGeoJSON)
type
required
string (CatalogItemType)
Value: "Feature"

The GeoJSON type

required
Array of objects (CatalogLinks)
required
object (CatalogProperties)

provides the core metadata fields plus extensions

required
object (CatalogAssets)

Response samples

Content type
application/geo+json
{}

Search STAC items with simple filtering.

Retrieve Items matching filters. Intended as a shorthand API for simple queries.

This method is required to implement.

If this endpoint is implemented on a server, it is required to add a link referring to this endpoint with rel set to search to the links array in GET /. As GET is the default method, the method may not be set explicitly in the link.

Authorizations:
OAuth2
query Parameters
Array of numbers or Array of numbers
Example: bbox=13,45,14,46

Only features that have a geometry that intersects the bounding box are selected. The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth):

  • Lower left corner, coordinate axis 1
  • Lower left corner, coordinate axis 2
  • Minimum value, coordinate axis 3 (optional)
  • Upper right corner, coordinate axis 1
  • Upper right corner, coordinate axis 2
  • Maximum value, coordinate axis 3 (optional)

The coordinate reference system of the values is WGS 84 longitude/latitude (http://www.opengis.net/def/crs/OGC/1.3/CRS84).

For WGS 84 longitude/latitude the values are in most cases the sequence of minimum longitude, minimum latitude, maximum longitude and maximum latitude. However, in cases where the box spans the antimeridian the first value (west-most box edge) is larger than the third value (east-most box edge).

If the vertical axis is included, the third and the sixth number are the bottom and the top of the 3-dimensional bounding box.

If a feature has multiple spatial geometry properties, it is the decision of the server whether only a single spatial geometry property is used to determine the extent or all relevant geometries.

Example: The bounding box of the New Zealand Exclusive Economic Zone in WGS 84 (from 160.6°E to 170°W and from 55.95°S to 25.89°S) would be represented in JSON as [160.6, -55.95, -170, -25.89] and in a query as bbox=160.6,-55.95,-170,-25.89.

pointGeoJSON (object) or multipointGeoJSON (object) or linestringGeoJSON (object) or multilinestringGeoJSON (object) or polygonGeoJSON (object) or multipolygonGeoJSON (object) or geometrycollectionGeoJSON (object) (geometryGeoJSON)

The optional intersects parameter filters the result Items in the same was as bbox, only with a GeoJSON Geometry rather than a bbox.

datetime
required
string
Example: datetime=2020-12-10T00:00:00Z/2020-12-30T00:00:00Z

Either a date-time or an interval, open or closed. Date and time expressions adhere to RFC 3339. Open intervals are expressed using double-dots.

Examples:

  • A date-time: "2018-02-12T23:20:50Z"
  • A closed interval: "2018-02-12T00:00:00Z/2018-03-18T12:31:12Z"
  • Open intervals: "2018-02-12T00:00:00Z/.." or "../2018-03-18T12:31:12Z"

Only features that have a temporal property that intersects the value of datetime are selected.

If a feature has multiple temporal properties, it is the decision of the server whether only a single temporal property is used to determine the extent or all relevant temporal properties.

limit
integer [ 1 .. 100 ]
Default: 10
Example: limit=1

The optional limit parameter recommends the number of items that should be present in the response document.

Only items are counted that are on the first level of the collection in the response document. Nested objects contained within the explicitly requested items must not be counted.

Minimum = 1. Maximum = 100. Default = 10.

ids
Array of strings (ids)

Array of Item ids to return.

collections
required
Array of strings (collectionsArray) = 1 items
Example: collections=sentinel-2-l2a

Array of Collection IDs to include in the search for items. Only Item objects in one of the provided collections will be searched

fields
string
Example: fields=id,type,-geometry,bbox,properties,-links,-assets

Extension: Fields

Determines the shape of the features in the response

filter
string (filter-cql2-text)
Example: filter=eo:cloud_cover>90

Extension: Filter

A CQL2 filter expression for filtering items.

distinct
string

Extension: Distinct

Return distinct values of specified property.

Responses

Response Schema: application/geo+json
type
required
string
Value: "FeatureCollection"
required
Array of objects (item)
Array of objects (Link)

An array of links. Can be used for pagination, e.g. by providing a link with the next relation type.

object

Response samples

Content type
application/geo+json
{}

Search STAC items with full-featured filtering.

Retrieve items matching filters. Intended as the standard, full-featured query API.

This method is optional to implement, but recommended.

If this endpoint is implemented on a server, it is required to add a link referring to this endpoint with rel set to search and method set to POST to the links array in GET /.

Authorizations:
OAuth2
Request Body schema: application/json
bbox
Array of numbers (CatalogBbox) [ 4 .. 6 ] items

Only features that have a geometry that intersects the bounding box are selected. The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (elevation or depth):

  • Lower left corner, coordinate axis 1
  • Lower left corner, coordinate axis 2
  • Lower left corner, coordinate axis 3 (optional)
  • Upper right corner, coordinate axis 1
  • Upper right corner, coordinate axis 2
  • Upper right corner, coordinate axis 3 (optional)

The coordinate reference system of the values is WGS84 longitude/latitude (http://www.opengis.net/def/crs/OGC/1.3/CRS84).

For WGS84 longitude/latitude the values are in most cases the sequence of minimum longitude, minimum latitude, maximum longitude and maximum latitude. However, in cases where the box spans the antimeridian the first value (west-most box edge) is larger than the third value (east-most box edge).

If a feature has multiple spatial geometry properties, it is the decision of the server whether only a single spatial geometry property is used to determine the extent or all relevant geometries.

Example: The bounding box of the New Zealand Exclusive Economic Zone in WGS 84 (from 160.6°E to 170°W and from 55.95°S to 25.89°S) would be represented in JSON as [160.6, -55.95, -170, -25.89] and in a query as bbox=160.6,-55.95,-170,-25.89.

datetime
required
string (CatalogItemSearchDatetimeInterval)

Either a date-time or an interval, open or closed. Date and time expressions adhere to RFC 3339. Open intervals are expressed using double-dots.

Examples:

  • A date-time: "2018-02-12T23:20:50Z"
  • A closed interval: "2018-02-12T00:00:00Z/2018-03-18T12:31:12Z"
  • Open intervals: "2018-02-12T00:00:00Z/.." or "../2018-03-18T12:31:12Z"

Only features that have a temporal property that intersects the value of datetime are selected.

If a feature has multiple temporal properties, it is the decision of the server whether only a single temporal property is used to determine the extent or all relevant temporal properties.

pointGeoJSON (object) or multipointGeoJSON (object) or linestringGeoJSON (object) or multilinestringGeoJSON (object) or polygonGeoJSON (object) or multipolygonGeoJSON (object) or geometrycollectionGeoJSON (object) (CatalogGeometryGeoJSON)
collections
required
Array of strings (CatalogItemSearchCollectionsArray) = 1 items

Array of Collection IDs to include in the search for items. Only Item objects in one of the provided collections will be searched.

ids
Array of strings (CatalogItemSearchIds)

Array of Item ids to return.

limit
integer (CatalogItemSearchLimit) [ 1 .. 100 ]

The optional limit parameter limits the number of items that are presented in the response document.

If the limit parameter value is greater than advertised limit maximum, the server must return the maximum possible number of items, rather than responding with an error.

Only items are counted that are on the first level of the collection in the response document. Nested objects contained within the explicitly requested items must not be counted.

Minimum = 1. Maximum = 100. Default = 10.

object (CatalogItemSearchFieldsFields)

The include and exclude members specify an array of property names that are either included or excluded from the result, respectively. If both include and exclude are specified, include takes precedence. Values should include the full JSON path of the property.

andExpression (object) or cql2NotExpression (object) or (comparisonPredicate (binaryComparisonPredicate (object) or isBetweenPredicate (object))) (CatalogItemSearchFilterFilterCql2Json)
filter-lang
string (CatalogItemSearchFilterFilterLang)
Enum: "cql2-text" "cql2-json"

The CQL2 filter encoding that the 'filter' value uses.

filter-crs
string <uri> (CatalogItemSearchFilterFilterCrs)

The coordinate reference system (CRS) used by spatial literals in the 'filter' value. The only value that STAC APIs must accept is 'http://www.opengis.net/def/crs/OGC/1.3/CRS84'.

distinct
string (CatalogItemSearchDistinctDistinct)

Return distinct values of specified property.

Responses

Response Schema: application/geo+json
type
required
string
Value: "FeatureCollection"
required
Array of objects (item)
Array of objects (Link)

An array of links. Can be used for pagination, e.g. by providing a link with the next relation type.

object

Request samples

Content type
application/json
{
  • "collections": [
    ],
  • "bbox": [
    ],
  • "datetime": "2020-12-10T00:00:00Z/2020-12-30T00:00:00Z",
  • "fields": {
    },
  • "filter": {
    },
  • "filter-lang": "cql2-json",
  • "limit": 1
}

Response samples

Content type
application/geo+json
{
  • "type": "FeatureCollection",
  • "features": [
    ],
  • "links": [],
  • "context": {
    }
}

Async Process

NOTE: Asynchronous Processing API is currently in beta release.

Submit a new async process request

Authorizations:
OAuth2
Request Body schema: application/json
required
object (ProcessRequestInput)
required
object (AsyncProcessRequestOutput)
evalscript
string

Your evalscript. For details, click here.

Either this or evalscriptReference parameter is required.

object (ObjectStorageInfo)

Reference to your evalscript stored in an object storage. For details, click here.

Either this or evalscript parameter is required.

Responses

Response Schema: application/json
id
string <UUID>

UUID of the submitted request

status
string
Value: "RUNNING"

Status of the request

Request samples

Content type
application/json
{
  • "input": {
    },
  • "output": {
    },
  • "evalscript": "string",
  • "evalscriptReference": {
    }
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "status": "RUNNING"
}

Get status of the request

The status of the request will only be returned while it's running. After completion (either succeed or failure) this endpoint will return 404.

Authorizations:
OAuth2
path Parameters
requestId
required
string <uuid>

Request ID

Responses

Response Schema: application/json
id
string <UUID>

UUID of the submitted request

status
string
Value: "RUNNING"

Status of the request

Response samples

Content type
application/json
{
  • "id": "string",
  • "status": "RUNNING"
}

Process

Submit new batch processing request

Authorizations:
OAuth2
Request Body schema:
required
object (ProcessRequestForBatch)

Batch processing equivalent of the Process request.

tilingGridId
integer <int64>
Deprecated

This parameter was moved to tilingGrid

object (TilingGridSettings)

Tiling grid settings.

resolution
number <double>
Deprecated

This parameter was moved to tilingGrid.

object (BatchProcessOutput)

Specifies the tile output paths where the results shall be written. Required unless bucketName or zarrOutput is specified.

bucketName
string

Simplified alternative for specifying where the results shall be written, where only the bucket name is specified. Specifying some-bucket as bucketName is equivalent to specifying s3://some-bucket as the defaultTilePath in output.

object (BatchZarrParameters)

Specifies Zarr creation parameters.

If this parameter is specified, all outputs in processRequest must be of the type zarr/array and neither bucketName nor output can be specified. With Zarr output only WGS84 and LAEA grids are supported.

description
string

Optional description that can be used to keep track of requests

Responses

Response Schema: application/json
id
string <uuid>

Identifier

userId
string <uuid>

User that submitted the request

accountId
string <uuid>

Account that submitted the request

created
string <date-time>

Creation time of the request in ISO 8601

required
object (ProcessRequestForBatch)

Batch processing equivalent of the Process request.

tilingGridId
integer <int64>
Deprecated

This parameter was moved to tilingGrid

object (TilingGridSettings)

Tiling grid settings.

resolution
number <double>
Deprecated

This parameter was moved to tilingGrid.

object (BatchProcessOutput)

Specifies the tile output paths where the results shall be written. Required unless bucketName or zarrOutput is specified.

bucketName
string

Simplified alternative for specifying where the results shall be written, where only the bucket name is specified. Specifying some-bucket as bucketName is equivalent to specifying s3://some-bucket as the defaultTilePath in output.

object (BatchZarrParameters)

Specifies Zarr creation parameters.

If this parameter is specified, all outputs in processRequest must be of the type zarr/array and neither bucketName nor output can be specified. With Zarr output only WGS84 and LAEA grids are supported.

description
string

Optional description that can be used to keep track of requests

valueEstimate
number <double>

Estimated processing value (cost) of the request in processing units. The accuracy of the estimate depends on your request, as described in the documentation.

tileCount
integer <int32>

Number of output tiles

tileWidthPx
integer <int32>

Tile width in pixels

tileHeightPx
integer <int32>

Tile height in pixels

userAction
string
Enum: "NONE" "ANALYSE" "START" "CANCEL"

Last user action on the request

userActionUpdated
string <date-time>

Time of last user action update in ISO 8601

status
string
Enum: "CREATED" "ANALYSING" "ANALYSIS_DONE" "PROCESSING" "DONE" "PARTIAL" "FAILED" "CANCELED"

Current processing status of the request

error
string

Error description for requests that were submitted but failed during analysis or processing

Request samples

Content type
{
  • "processRequest": {
    },
  • "tilingGridId": 0,
  • "tilingGrid": {
    },
  • "resolution": 0,
  • "output": {
    },
  • "bucketName": "string",
  • "zarrOutput": {
    },
  • "description": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b",
  • "accountId": "3d07c219-0a88-45be-9cfc-91e9d095a1e9",
  • "created": "2019-08-24T14:15:22Z",
  • "processRequest": {
    },
  • "tilingGridId": 0,
  • "tilingGrid": {
    },
  • "resolution": 0,
  • "output": {
    },
  • "bucketName": "string",
  • "zarrOutput": {
    },
  • "description": "string",
  • "valueEstimate": 0,
  • "tileCount": 0,
  • "tileWidthPx": 0,
  • "tileHeightPx": 0,
  • "userAction": "NONE",
  • "userActionUpdated": "2019-08-24T14:15:22Z",
  • "status": "CREATED",
  • "error": "string"
}

Query batch process requests

Authorizations:
OAuth2
query Parameters
collectionId
string <uuid>

Filter batch process requests by the collectionId of batch collection. Omit to get all batch process requests, including those not linked to any collection.

count
integer <int32>

Upper limit to the number of items to retrieve. It cannot be larger than the endpoint-specific limit. If omitted, the endpoint-specific limit is used. For more records, use viewtoken to page through.

viewtoken
string

When the total number of items is larger than count, the response contains viewtoken. This viewtoken can be used in the next request to retrieve the next page of items.

The next page can be retrieved by repeating the query. However, replace your URL with the next URL in the returned links object.

search
string

Optional search query. Either a single word to search for or multiple words separated by the | (or) and & (and) operators. If omitted, all items are returned.

sort
string
Enum: "created" "created:desc" "status" "status:desc"

Sort the batch process requests by given field. Omit for default ordering.

Responses

Response Schema: application/json
Array of objects (BatchProcessRequest)
object (View)

Links to paginate the resource

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "links": {}
}

Retrieve a single batch process request

Authorizations:
OAuth2
path Parameters
requestId
required
string <uuid>

Request ID

Responses

Response Schema: application/json
id
string <uuid>

Identifier

userId
string <uuid>

User that submitted the request

accountId
string <uuid>

Account that submitted the request

created
string <date-time>

Creation time of the request in ISO 8601

required
object (ProcessRequestForBatch)

Batch processing equivalent of the Process request.

tilingGridId
integer <int64>
Deprecated

This parameter was moved to tilingGrid

object (TilingGridSettings)

Tiling grid settings.

resolution
number <double>
Deprecated

This parameter was moved to tilingGrid.

object (BatchProcessOutput)

Specifies the tile output paths where the results shall be written. Required unless bucketName or zarrOutput is specified.

bucketName
string

Simplified alternative for specifying where the results shall be written, where only the bucket name is specified. Specifying some-bucket as bucketName is equivalent to specifying s3://some-bucket as the defaultTilePath in output.

object (BatchZarrParameters)

Specifies Zarr creation parameters.

If this parameter is specified, all outputs in processRequest must be of the type zarr/array and neither bucketName nor output can be specified. With Zarr output only WGS84 and LAEA grids are supported.

description
string

Optional description that can be used to keep track of requests

valueEstimate
number <double>

Estimated processing value (cost) of the request in processing units. The accuracy of the estimate depends on your request, as described in the documentation.

tileCount
integer <int32>

Number of output tiles

tileWidthPx
integer <int32>

Tile width in pixels

tileHeightPx
integer <int32>

Tile height in pixels

userAction
string
Enum: "NONE" "ANALYSE" "START" "CANCEL"

Last user action on the request

userActionUpdated
string <date-time>

Time of last user action update in ISO 8601

status
string
Enum: "CREATED" "ANALYSING" "ANALYSIS_DONE" "PROCESSING" "DONE" "PARTIAL" "FAILED" "CANCELED"

Current processing status of the request

error
string

Error description for requests that were submitted but failed during analysis or processing

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b",
  • "accountId": "3d07c219-0a88-45be-9cfc-91e9d095a1e9",
  • "created": "2019-08-24T14:15:22Z",
  • "processRequest": {
    },
  • "tilingGridId": 0,
  • "tilingGrid": {
    },
  • "resolution": 0,
  • "output": {
    },
  • "bucketName": "string",
  • "zarrOutput": {
    },
  • "description": "string",
  • "valueEstimate": 0,
  • "tileCount": 0,
  • "tileWidthPx": 0,
  • "tileHeightPx": 0,
  • "userAction": "NONE",
  • "userActionUpdated": "2019-08-24T14:15:22Z",
  • "status": "CREATED",
  • "error": "string"
}

Update a batch process request

Only the requests that are not currently being processed nor waiting to be processed can be updated.

Authorizations:
OAuth2
path Parameters
requestId
required
string <uuid>

Request ID

Request Body schema: application/json
object

Modified output object. If omitted, no values within output will be changed.

description
string

Optional description that can be used to keep track of requests. If omitted, the description will not be changed.

Responses

Response Schema: application/json
id
string <uuid>

Identifier

userId
string <uuid>

User that submitted the request

accountId
string <uuid>

Account that submitted the request

created
string <date-time>

Creation time of the request in ISO 8601

required
object (ProcessRequestForBatch)

Batch processing equivalent of the Process request.

tilingGridId
integer <int64>
Deprecated

This parameter was moved to tilingGrid

object (TilingGridSettings)

Tiling grid settings.

resolution
number <double>
Deprecated

This parameter was moved to tilingGrid.

object (BatchProcessOutput)

Specifies the tile output paths where the results shall be written. Required unless bucketName or zarrOutput is specified.

bucketName
string

Simplified alternative for specifying where the results shall be written, where only the bucket name is specified. Specifying some-bucket as bucketName is equivalent to specifying s3://some-bucket as the defaultTilePath in output.

object (BatchZarrParameters)

Specifies Zarr creation parameters.

If this parameter is specified, all outputs in processRequest must be of the type zarr/array and neither bucketName nor output can be specified. With Zarr output only WGS84 and LAEA grids are supported.

description
string

Optional description that can be used to keep track of requests

valueEstimate
number <double>

Estimated processing value (cost) of the request in processing units. The accuracy of the estimate depends on your request, as described in the documentation.

tileCount
integer <int32>

Number of output tiles

tileWidthPx
integer <int32>

Tile width in pixels

tileHeightPx
integer <int32>

Tile height in pixels

userAction
string
Enum: "NONE" "ANALYSE" "START" "CANCEL"

Last user action on the request

userActionUpdated
string <date-time>

Time of last user action update in ISO 8601

status
string
Enum: "CREATED" "ANALYSING" "ANALYSIS_DONE" "PROCESSING" "DONE" "PARTIAL" "FAILED" "CANCELED"

Current processing status of the request

error
string

Error description for requests that were submitted but failed during analysis or processing

Request samples

Content type
application/json
{
  • "output": {
    },
  • "description": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b",
  • "accountId": "3d07c219-0a88-45be-9cfc-91e9d095a1e9",
  • "created": "2019-08-24T14:15:22Z",
  • "processRequest": {
    },
  • "tilingGridId": 0,
  • "tilingGrid": {
    },
  • "resolution": 0,
  • "output": {
    },
  • "bucketName": "string",
  • "zarrOutput": {
    },
  • "description": "string",
  • "valueEstimate": 0,
  • "tileCount": 0,
  • "tileWidthPx": 0,
  • "tileHeightPx": 0,
  • "userAction": "NONE",
  • "userActionUpdated": "2019-08-24T14:15:22Z",
  • "status": "CREATED",
  • "error": "string"
}

Delete a batch process request

Deletes a batch process request if it:

  • is not currently being processed or analysed,
  • has not been confirmed for processing or analysis,
  • has no successfully processed tiles.

Requests that have been confirmed or are currently being processed or analysed must be canceled before deletion. Requests with processed tiles cannot be deleted.

path Parameters
requestId
required
string <uuid>

Request ID

Responses

Response samples

Content type
application/json
{
  • "error": {
    }
}

Request analysis of a batch process request

Authorizations:
OAuth2
path Parameters
requestId
required
string <uuid>

Request ID

Responses

Response samples

Content type
application/json
{
  • "error": {
    }
}

Start (confirm) processing of a batch process request

Authorizations:
OAuth2
path Parameters
requestId
required
string <uuid>

Request ID

Responses

Response samples

Content type
application/json
{
  • "error": {
    }
}

Cancel a batch process request

Authorizations:
OAuth2
path Parameters
requestId
required
string <uuid>

Request ID

Responses

Response samples

Content type
application/json
{
  • "error": {
    }
}

Restart a partially processed request

Restart processing of failed tiles in a partially processed request

Authorizations:
OAuth2
path Parameters
requestId
required
string <uuid>

Request ID

Responses

Response samples

Content type
application/json
{
  • "error": {
    }
}

Collection

Create a new batch collection

Authorizations:
OAuth2
Request Body schema: application/json
name
required
string

Collection name

s3Bucket
required
string

S3 bucket where data will get ingested

Responses

Response Schema: application/json
id
string <uuid>
accountId
string <uuid>
name
string
s3Bucket
string
object
object (BYOCCollectionAdditionalData)
created
string or null

The date when the collection was created.

Request samples

Content type
application/json
{
  • "name": "string",
  • "s3Bucket": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "accountId": "3d07c219-0a88-45be-9cfc-91e9d095a1e9",
  • "name": "string",
  • "s3Bucket": "string",
  • "batchData": {
    },
  • "additionalData": {
    },
  • "created": "string"
}

Query batch collections

Authorizations:
OAuth2
query Parameters
count
integer <int32>

Upper limit to the number of items to retrieve. It cannot be larger than the endpoint-specific limit. If omitted, the endpoint-specific limit is used. For more records, use viewtoken to page through.

viewtoken
string

When the total number of items is larger than count, the response contains viewtoken. This viewtoken can be used in the next request to retrieve the next page of items.

The next page can be retrieved by repeating the query. However, replace your URL with the next URL in the returned links object.

search
string

Optional search query. Either a single word to search for or multiple words separated by the | (or) and & (and) operators. If omitted, all items are returned.

Responses

Response Schema: application/json
Array of objects (BatchCollection)
object (View)

Links to paginate the resource

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "links": {}
}

Retrieve a single batch collection

Authorizations:
OAuth2
path Parameters
collectionId
required
string <uuid>

Collection ID

Responses

Response Schema: application/json
id
string <uuid>
accountId
string <uuid>
name
string
s3Bucket
string
object
object (BYOCCollectionAdditionalData)
created
string or null

The date when the collection was created.

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "accountId": "3d07c219-0a88-45be-9cfc-91e9d095a1e9",
  • "name": "string",
  • "s3Bucket": "string",
  • "batchData": {
    },
  • "additionalData": {
    },
  • "created": "string"
}

Update a batch collection

Authorizations:
OAuth2
path Parameters
collectionId
required
string <uuid>

Collection ID

Request Body schema: application/json
name
string

Collection name

Responses

Request samples

Content type
application/json
{
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "error": {
    }
}

Delete a batch collection

Deletes a batch collection if it is not being used by any batch process request, except for possible FAILED and CANCELED requests.

path Parameters
collectionId
required
string <uuid>

Collection ID

Responses

Response samples

Content type
application/json
{
  • "error": {
    }
}

Tile

Get all tiles of a batch process

Authorizations:
OAuth2
path Parameters
requestId
required
string <uuid>

Request ID

query Parameters
status
string
Enum: "PENDING" "SCHEDULED" "QUEUED" "PROCESSING" "PROCESSED" "FAILED"

Only tiles with this status will be returned. Omit to get all tiles.

count
integer <int32>

Upper limit to the number of items to retrieve. It cannot be larger than the endpoint-specific limit. If omitted, the endpoint-specific limit is used. For more records, use viewtoken to page through.

viewtoken
string

When the total number of items is larger than count, the response contains viewtoken. This viewtoken can be used in the next request to retrieve the next page of items.

The next page can be retrieved by repeating the query. However, replace your URL with the next URL in the returned links object.

Responses

Response Schema: application/json
Array of objects (BatchTile)
object (View)

Links to paginate the resource

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "links": {}
}

Retrieve a single tile for the specific batch process

Authorizations:
OAuth2
path Parameters
requestId
required
string <uuid>

Request ID

tileId
required
integer <int64>

Tile ID

Responses

Response Schema: application/json
id
integer <int64>

Identifier

requestId
string <uuid>

ID of the request the tile belongs to

object (Polygon)

Geometry of the grid tile that this request tile corresponds to.

Note that this may differ from the geometry of the tile's ouput raster due to bufferX/bufferY parameters of your request and due to reprojection from the tile's coordinate reference system to WGS84. The exact output raster geometry can be calculated from the tile's origin, width, height, and your request parameters resolution, bufferX and bufferY.

object (BatchTileOrigin)

Coordinates of the tile origin (lower left corner) in the tile's CRS.

status
string
Enum: "PENDING" "SCHEDULED" "QUEUED" "PROCESSING" "PROCESSED" "FAILED"

Current processing status of the tile

cost
number <double>

Tile processing cost (PU)

Response samples

Content type
application/json
{
  • "id": 0,
  • "requestId": "d385ab22-0f51-4b97-9ecd-b8ff3fd4fcb6",
  • "geometry": {
    },
  • "origin": {
    },
  • "status": "PENDING",
  • "cost": 0
}

Tiling grid

Get properties of all supported tiling grids

Authorizations:
OAuth2
query Parameters
count
integer <int32>

Upper limit to the number of items to retrieve. It cannot be larger than the endpoint-specific limit. If omitted, the endpoint-specific limit is used. For more records, use viewtoken to page through.

viewtoken
string

When the total number of items is larger than count, the response contains viewtoken. This viewtoken can be used in the next request to retrieve the next page of items.

The next page can be retrieved by repeating the query. However, replace your URL with the next URL in the returned links object.

Responses

Response Schema: application/json
Array of objects (TilingGridDescriptor)
object (View)

Links to paginate the resource

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "links": {}
}

Get properties of a single tiling grid

Authorizations:
OAuth2
path Parameters
id
required
integer <int64>

Tilinggrids ID

Responses

Response Schema: application/json
id
integer <int64>

Identifier

name
string
object (TilingGridDescriptorProperties)

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "properties": {
    }
}

Statistical

Submit statistical request

Authorizations:
OAuth2
Request Body schema:
required
object (ProcessRequestInput)
required
object (StatisticalRequestAggregation)

Specifies how data is aggregated and processed before statistics is calculated. timeRange and aggregationInterval combined define sampling intervals in time dimension. Width/height or resx/resy combined with input.bounds define a sample matrix (i.e. "image") in spatial dimension.

object (StatisticalRequestCalculations)

Define which statistics and histogram to calculate. It can be specified differently for each evalscript output. If omitted only the basic statistic (min, max, mean, stDev) will be calculated.

Responses

Response Schema: application/json
Array of objects

Statistics for intervals, where data is available.

Request samples

Content type
{
  • "input": {
    },
  • "aggregation": {
    },
  • "calculations": {
    }
}

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Statistical

Submit a new statistical batch request

Authorizations:
OAuth2
Request Body schema:
required
object (BatchStatisticalInput)
required
object (BatchStatisticalRequestAggregation)

Specifies how data is aggregated and processed before statistics is calculated. timeRange and aggregationInterval combined define sampling intervals in time dimension. Width/height or resx/resy combined with input.bounds define a sample matrix (i.e. "image") in spatial dimension.

object (StatisticalRequestCalculations)

Define which statistics and histogram to calculate. It can be specified differently for each evalscript output. If omitted only the basic statistic (min, max, mean, stDev) will be calculated.

required
object (ObjectStorageOutputInfo)

Storage location where the results shall be written.

Responses

Response Schema: application/json
id
string <uuid>

UUID of the submitted request.

status
string
Enum: "CREATED" "ANALYSING" "ANALYSIS_DONE" "PROCESSING" "DONE" "FAILED" "STOPPED" "PARTIAL"

Current processing status of the request. Must NOT be specified when creating new requests

error
string

Description of error in case the request failed.

completionPercentage
number
lastUpdated
string <date-time>
costPu
number

Cost of the request in processing units

created
string <date-time>

Creation time of the request

stoppedStatusReason
string
Enum: "OUT_OF_PU" "USER_ACTION"

The reason for request having status STOPPED.

object (BatchStatisticalRequest)
userAction
string
Enum: "NONE" "ANALYSE" "START" "STOP"

Last user action on the request.

userActionUpdated
string <date-time>

Date of the last user action on the request

domainAccountId
string <uuid>

Request samples

Content type
{
  • "input": {
    },
  • "aggregation": {
    },
  • "calculations": {
    },
  • "output": {
    }
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "status": "CREATED",
  • "error": "string",
  • "completionPercentage": 0,
  • "lastUpdated": "2019-08-24T14:15:22Z",
  • "costPu": 0,
  • "created": "2019-08-24T14:15:22Z",
  • "stoppedStatusReason": "OUT_OF_PU",
  • "request": {