Bring Your Own COG / Batch

About BYOC / Batch Data

Bring Your Own COG (BYOC) and Batch data is data ingested by Sentinel Hub users using BYOC API and Batch API, respectively. Data is accessed using Sentinel Hub APIs, just like any other data you are used to.

Accessing data

Data can be accessed using Process API, Batch API or OGC API. In all cases collection id is needed, which can be obtained from your dashboard. You also need to access data from the correct endpoint.

Endpoint Locations

BYOC endpoints

ServiceNotes
services.sentinel-hub.com/api/for data in AWS buckets in EU-Central-1 region
services-uswest2.sentinel-hub.com/api/for data in AWS buckets in US-West-2 region
creodias.sentinel-hub.com/api/for data in CREODIAS buckets
code-de.sentinel-hub.com/api/for data in CODE-DE buckets
shservices.mundiwebservices.com/api/for data in Mundi Web Services buckets

Batch is only available from the endpoint services.sentinel-hub.com/api/.

Data type identifier

Use byoc-<collectionId> for BYOC, and batch-<collectionId> for Batch as the value of the input.data.type parameter in your API requests. For example, set it to byoc-017aa0ae-33a6-45d3-8548-0f7d1041b40c for BYOC collection with id 017aa0ae-33a6-45d3-8548-0f7d1041b40c.

Request resolution limit

For the limit, we take five times the median resolution of the lowest resolution overview of all tiles in the collection. If this resolution is higher than 500 meters per pixel the limit will still be set at 500 meters per pixel. This is to allow for more zoomed out viewing. Note only overviews which are at least 256 pixels in either width or height are used for this computation. Adding or removing tiles from a collection will recompute its limit.

You can see the computed resolution limit for a collection in the collection details in your dashboard. Alternatively, in the response if querying a collection using the BYOC API.

Filtering Options

This chapter will explain the input.data.dataFilter object.

mosaickingOrder

Sets the order of overlapping tiles from which the output result is mosaicked. The tiling is defined by the user when ingesting the data in the collection.

ValueDescriptionNotes
mostRecentThe pixel will be selected from the tile, which the most recent sensing time.In case there are more tiles available with the same sensing time, the one, which was created later will be used.
leastRecentSimilar to mostRecent but in reverse order.

Processing Options

This chapter will explain the input.data.processing object of the process API.

ActionDescriptionValuesDefault
upsamplingDefines the interpolation used for processing when the pixel resolution is greater than the source resolution (e.g. 5m/px with a 10m/px source)NEAREST - nearest neighbour interpolation
BILINEAR - bilinear interpolation
BICUBIC - bicubic interpolation
NEAREST
downsamplingAs above except when the resolution is lower.NEAREST - nearest neighbour interpolation
BILINEAR - bilinear interpolation
BICUBIC - bicubic interpolation
NEAREST

Available Bands and Data

Since collections contains your data this means that the available bands are the ones you have prepared. The band names to use in you evalscript are also listed in each collection in your dashboard. dataMask is also available. See here for more information. Note also that the only units available are digital numbers so any unit conversions, if necessary, are the responsibility of your evalscript.

OGC API

To access your data via OGC you need to create a layer in the Configuration utility in either an existing or new configuration. When adding a layer you should set Source to Bring Your Own COG and Collection id to the id of your collection. You should also enter a custom script in Data processing field. This should return the appropriate values based on bands that are defined in the collection.

Once this is done the layer can be used via OGC API in the usual way.

For example: http://services.sentinel-hub.com/ogc/wms/<MyInstanceID>?REQUEST=GetMap&BBOX=15959450,8695500,16059450,8795500&CRS=EPSG:3857&WIDTH=500&HEIGHT=500&LAYERS=<MyLayerName>

WFS

To query your tiles using WFS you need to set the WFS feature type (TYPENAMES parameter) to byoc-<MyCollectionID> for BYOC, and batch-<MyCollectionID> for Batch, e.g. byoc-a550f5e9-84d0-441a-8338-bbb04d42a72e.

Here is an example of a WFS GetFeature request:

http://services.sentinel-hub.com/ogc/wfs/<MyInstanceID>?SERVICE=wfs&REQUEST=GetFeature&BBOX=-90,180,90,-180&SRSNAME=EPSG:4326&OUTPUTFORMAT=application/json&TYPENAMES=byoc-<MyCollectionID>