Sentinel-2 L1C
About Sentinel-2 L1C Data
Mission information
SENTINEL-2 is a European wide-swath, high-resolution, multi-spectral imaging mission. Its high-resolution optical images have many applications, including land monitoring, emergency response and security services assistance. The satellite's multispectral imager provides a versatile set of 13 spectral bands spanning from the visible and near infrared to the shortwave infrared.
More information:
Basic facts
Property | Info |
---|---|
Spatial resolution | 10 m, 20 m, and 60 m depending on the wavelength |
Sensor | MultiSpectral Instrument (MSI), 13 bands: 4 visible bands, 6 Near-Infrared bands, and 3 Short-Wave Infrared bands |
Revisit time | 5 days with two satellites |
Spatial coverage | Land and coastal areas between latitudes 56°S and 83°N |
Data availability | Since November 2015 |
Measurement | Top of the atmosphere (TOA) reflectance |
Common usage/purpose | Land-cover maps, land-change detection maps, vegetation monitoring, monitoring of burned areas |
Attribution and use
EU law grants free access to Copernicus Sentinel Data and Service Information for the purpose of the following use in so far as it is lawful: a) reproduction; b) distribution; c) communication to the public; d) adaptation, modification and combination with other data and information; e) any combination of points a to d.
See more details on the use of Copernicus Sentinel data and service information
Tracing based on Sentinel imagery is allowed for commercial purposes as well.
Acknowledgment or credit: Contains modified Copernicus Sentinel data [Year] processed by Sentinel Hub
Accessing Sentinel-2 L1C Data
To access data you need to send a POST request to our process
API. The requested data will be returned as the response to your request. Each POST request can be tailored to get you exactly the data you require. To do this requires setting various parameters which depend on the datasource you are querying. This chapter will help you understand the parameters for S2L1C data. To see examples of such requests go here, and for an overview of all API parameters see the API Reference.
Endpoint Locations
Service | Notes |
---|---|
services.sentinel-hub.com/api/ | Global since November 2015 |
eocloud.sentinel-hub.com/v1/ | Global since November 2015 |
creodias.sentinel-hub.com/api/ | Global since November 2015 |
code-de.sentinel-hub.com/api/ | Germany since July 2015 |
shservices.mundiwebservices.com/api/ | Europe coverage since July 2015 Rolling policy of 12 months for World |
Differences in Capabilities
eocloud.sentinel-hub.com
supports only OGC requests (and not API requests). The version of OGC services at eocloud.sentinel-hub.com is older and there might be minor differences in rendering. For the latest version use services.sentinel-hub.com endpoint.
Data type identifier: S2L1C
Use S2L1C
as the value of the input.data.type
parameter in your API requests. This is mandatory and will ensure you get Sentinel-2 L1C data.
Filtering Options
This chapter will explain the input.data.dataFilter
object of the S2L1C
process
API.
mosaickingOrder
Sets the order of overlapping tiles from which the output result is mosaicked. Note that tiles will in most cases come from the same orbit/acquisition. The tiling is done by ESA for easier distribution.
Value | Description | Notes |
---|---|---|
mostRecent | selected by default. The pixel will be selected from the tile, which was acquired most recently | in case there are more tiles available with the same timestamp (some tiles are processed by many ground stations, some are reprocessed, etc.), the one, which was downloaded from SciHub later will be used. |
leastRecent | similar to mostRecent but in reverse order | |
leastCC | pixel is selected from tile with the least cloud coverage meta-data | note that "per tile" information is used here, each covering about a 12,000 sq. km area, so this information is only an estimate . |
maxCloudCoverage
Sets the upper limit for cloud coverage in percent based on the precomputed cloud coverage estimate for each Sentinel-2 tile as present in the tile metadata. Satellite data will therefore not be retrieved for tiles with a higher cloud coverage estimate. For example, by setting the value to 20
, only tiles with at most 20% cloud coverage will be used. Note that this parameter is set per tile and might not be directly applicable to the chosen area of interest.
previewMode
Sentinel Hub API is optimised for full resolution data access as this is what most users need. There are, however, cases where low resolution makes sense as well. To make this feasible, Sentinel-Hub generates lower resolution files (which we call previews) with up to a few hours of delay after initial data availability. To enable access to these previews and thus reduce the resolution limit, set this property to PREVIEW
or EXTENDED_PREVIEW
. If set, the API will still display full resolution data, so aside from potentially using more requests, in general there is no downside to enabling this option. Note that the max cloud coverage filter does not apply when using previews.
Value | Description |
---|---|
DETAIL | displays original data from full-resolution to 250m per pixel |
PREVIEW | as DETAIL , including previews from 250m per pixel to 1500m per pixel. |
EXTENDED_PREVIEW | as PREVIEW , including previews from 1500m per pixel and up (more zoomed out). If displaying more than 1500m per pixel the service limits the data to one month prior to the "TO" date. |
Processing Options
This chapter will explain the input.data.processing
object of the S2L1C
process
API.
Action | Description | Values | Default |
---|---|---|---|
upsampling | Defines 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 |
downsampling | As above except when the resolution is lower. | NEAREST - nearest neighbour interpolation BILINEAR - bilinear interpolation BICUBIC - bicubic interpolation | NEAREST |
atmosphericCorrection - DEPRECATED | Atmospheric correction using DOS1 and STATISTICAL is being deprecated and will only be available until 30.06.2020. These parameters provided a less optimal atmospheric correction for L1C before the global L2A collection was available. Whenever atmosheric correction is needed, datasource L2A should be used if possible. | NONE - no change of values DOS1 - DOS1 tile-based atmospheric correction STATISTICAL - Statistical runtime optimised atmospheric correction is based on the official Sen2Cor. However, to make global processing feasible, we run the process on anchor tiles and then apply the statistical difference to neighboring tiles. This approach approximates the overall atmospheric conditions quite well, but does not take into account local specifics, e.g. clouds and terrain. | NONE |
Available Bands and Data
This chapter will explain the bands and data which can be set in the evalscript input object:
Any string listed in the column Name can be an element of the input.bands
array in your evalscript.
Name | Description | Resolution |
---|---|---|
B01 | Coastal aerosol, 442.7 nm (S2A), 442.3 nm (S2B) | 60m |
B02 | Blue, 492.4 nm (S2A), 492.1 nm (S2B) | 10m |
B03 | Green, 559.8 nm (S2A), 559.0 nm (S2B) | 10m |
B04 | Red, 664.6 nm (S2A), 665.0 nm (S2B) | 10m |
B05 | Vegetation red edge, 704.1 nm (S2A), 703.8 nm (S2B) | 20m |
B06 | Vegetation red edge, 740.5 nm (S2A), 739.1 nm (S2B) | 20m |
B07 | Vegetation red edge, 782.8 nm (S2A), 779.7 nm (S2B) | 20m |
B08 | NIR, 832.8 nm (S2A), 833.0 nm (S2B) | 10m |
B8A | Narrow NIR, 864.7 nm (S2A), 864.0 nm (S2B) | 20m |
B09 | Water vapour, 945.1 nm (S2A), 943.2 nm (S2B) | 60m |
B10 | SWIR – Cirrus, 1373.5 nm (S2A), 1376.9 nm (S2B) | 60m |
B11 | SWIR, 1613.7 nm (S2A), 1610.4 nm (S2B) | 20m |
B12 | SWIR, 2202.4 nm (S2A), 2185.7 nm (S2B) | 20m |
CLP | Cloud probability, based on s2cloudless (more) | 160m |
CLM | Cloud masks (more) | 160m |
sunAzimuthAngles | Sun azimuth angle | 5000m |
sunZenithAngles | Sun zenith angle | 5000m |
viewAzimuthMean | Viewing azimuth angle | 5000m |
viewZenithMean | Viewing zenith angle | 5000m |
dataMask | The mask of data/no data pixels (more). | N/A |
*dataMask has no source resolution as it is calculated for each output pixel.
Units
The data values for each band in your custom script are presented in the default units as specified here. In case more than one unit is available for a given band, you may optionally set the value of input.units
in your evalscript setup
function to one of the options. Doing so will present data in that unit. The Source Format
specifies how and with what precision the digital numbers from which the unit is derived are encoded. The Typical Range
indicates what values are common for a given band and unit, however outliers can be expected.
For Sentinel-2 optical data, the relation between DN
and REFLECTANCE
(default unit) is: DN = 10000 * REFLECTANCE
.
Band | Unit | Source Format | Typical Range |
---|---|---|---|
Optical bands | DN | UINT15 | 0 - 4000* |
Optical bands | REFLECTANCE (default) | FLOAT32 | 0 - 0.4* |
CLP | Probabilities | UINT8 | 0 - 255 |
CLM | N/A | UINT8 | 0 - no clouds 1 - clouds 255 - no data |
sunAzimuthAngles | Degrees | FLOAT32 | 30 - 200 |
viewAzimuthMean | Degrees | FLOAT32 | 90 - 300 |
sunZenithAngles | Degrees | FLOAT32 | 15 - 80 |
viewZenithMean | Degrees | FLOAT32 | 0 - 12 |
dataMask | N/A | Boolean | 0 - no data 1 - data |
*Higher values are expected in infrared bands. Reflectance values can easily be above 1.
Mosaicking
All mosaicking types are supported.
Scene Object
This chapter will explain the evalscript evaluatePixel scene object.
The scene
object contains the following properties:
Property name | Description | Type |
---|---|---|
date | Scene sensing time | JavaScript Date object |
tileID | Unique scene identifier | Integer |
tileOriginalId | Sentinel 2 tile identifier | String (e.g., S2A_OPER_MSI_L1C_TL_SGS__20190218T063808_A019105_T49MCN_N02.11 ) |
orbitId | Unique orbit identifier | Integer |
Catalog API Capabilities
To access Sentinel 2 L1C product metadata you need to send search request to our Catalog API. The requested metadata will be returned as JSON formatted response to your request. This chapter will help with understanding Sentinel 2 L1C specific parameters for search request.
Endpoint Locations
Service | Notes |
---|---|
services.sentinel-hub.com/api/v1/catalog/collections/sentinel-2-l1c | Global since November 2015 |
shservices.mundiwebservices.com/api/v1/catalog/collections/sentinel-2-l1c | Europe coverage since July 2015 Rolling policy of 12 months for World |
code-de.sentinel-hub.com/api/v1/catalog/collections/sentinel-2-l1c | Germany since July 2015 |
Collection identifier: sentinel-2-l1c
Query extension
eo:cloud_cover
cloud cover percentage
Distinct extension
date