Skip to main content

Vegetation indices

The Statistics API allows you to access statistical information derived from optical satellite imagery data for a specified area of interest (AOI) within defined time ranges. This data encompasses a comprehensive set of 17 vegetation indices, including NDVI, NDSI, NDWI, RECI, NDMI, SAVI, ARVI, EVI, GCI, SIPI, NBR, MSI, ISTACK, FIDET, NDRE, CCCI, MSAVI, as well as the option to create custom indices using a general formula (e.g., (NIR-RED)/(NIR+RED)) based on supported bands from the data source. Additionally, you can access true color and false color imagery for a holistic view of your area of interest.

caution

You can request up to three (3) indices in a single request using bm_type.
Also, the recommended maximum date range is up to 365 days (1 year) to ensure optimal performance and response time.

Examples​

Get Multi-Temporal Statistics with alias name​

Step 1: Create task for indices caclulating with POST request​

curl --location --request POST 'https://api-connect.eos.com/api/gdw/api?api_key=<you_api_key>' \
--header 'Content-Type: application/json' \
--data-raw '{
"type":"mt_stats",
"params": {
"bm_type":["NDVI", "MSI", "EVI"],
"date_start":"2020-01-01",
"date_end":"2020-09-20",
"geometry":
{
"coordinates": [
[
[-86.86718,41.317464],
[-86.86718,41.331596],
[-86.862631,41.331596],
[-86.862631,41.317464],
[-86.86718,41.317464]
]
],
"type":"Polygon"
},
"reference":"ref_20200924-00-20",
"sensors":["sentinel2"]
}
} '

Example of response:

{
"status": "created",
"task_id": "00dd1775-4fe4-420f-9ab8-19e967233154",
"req_id": "4554a79d-7b7c-4515-a94f-7ceeab2417c2",
"task_timeout": 172800
}

Step 2: Receive the result of calculation with GET request and use task_id from previous step​

curl --location --request GET 'https://api-connect.eos.com/api/gdw/api/00dd1775-4fe4-420f-9ab8-19e967233154'
--header 'x-api-key: <your_api_key>'

Example of response:

 {
"errors": [
],
"result": [
{
"scene_id": "S2B_tile_20200609_16TEL_0",
"view_id": "S2/16/T/EL/2020/6/9/0",
"date": "2020-06-09",
"cloud": 0.0,
"notes": [],
"indexes": {
"NDVI": {
"q1": 0.06225877162069082,
"q3": 0.15613897889852524,
"max": 0.2816303074359894,
"min": -0.11201691627502441,
"p10": 0.026399594917893413,
"p90": 0.18484574854373936,
"std": 0.06289542393441379,
"median": 0.10764970630407333,
"average": 0.1059820607514931,
"variance": 0.003955834351889631
},
"MSI": {
"min": 0.708953857421875,
"max": 1.1564327478408813,
"average": 0.871500668306894,
"std": 0.07412427511032148,
"variance": 0.0054944081606306235,
"q1": 0.8077611029148102,
"q3": 0.9279850721359253,
"median": 0.8764504492282867,
"p10": 0.7769006192684174,
"p90": 0.9608058929443359
},
"EVI": {
"min": -98.12822723388672,
"max": 47.290531158447266,
"average": 0.3720668537617378,
"std": 3.8028567119188925,
"variance": 14.46171917138657,
"q1": 0.1694919317960739,
"q3": 0.3644031807780266,
"median": 0.2724674642086029,
"p10": 0.0719693697988987,
"p90": 0.5220617949962618
}
}
}
]
}

Indices-statistics example

Example - get Multi-Temporal Statistics with formula​

info

If you want to get the same data, as in Crop Monitoring, please note that it is recommended to use General Formula or Satellite Formula

Step 1: Create task for indices caclulating with POST request​

curl --location --request POST 'https://api-connect.eos.com/api/gdw/api?api_key=<you_api_key>' \
--header 'Content-Type: application/json' \
--data-raw '{
"type":"mt_stats",
"params": {
"bm_type":["(B08-B04)/(B08+B04)"],
"date_start":"2020-01-01",
"date_end":"2020-09-20",
"geometry":
{
"coordinates": [
[
[-86.86718,41.317464],
[-86.86718,41.331596],
[-86.862631,41.331596],
[-86.862631,41.317464],
[-86.86718,41.317464]
]
],
"type":"Polygon"
},
"reference":"ref_20200924-00-20",
"sensors":["sentinel2"]
}
} '

Example of response:

{
"status": "created",
"task_id": "00dd1775-4fe4-420f-9ab8-19e967233154",
"req_id": "4554a79d-7b7c-4515-a94f-7ceeab2417c2",
"task_timeout": 172800
}

Step 2: Receive the result of calculation with GET request and use task_id from previous step​

curl --location --request GET 'https://api-connect.eos.com/api/gdw/api/00dd1775-4fe4-420f-9ab8-19e967233154?api_key=<your_api_key>'

Example of response:

 {
"errors": [
],
"result": [
{
"scene_id": "S2B_tile_20200609_16TEL_0",
"view_id": "S2/16/T/EL/2020/6/9/0",
"date": "2020-06-09",
"cloud": 0.0,
"notes": [],
"indexes": {
"NDVI": {
"q1": 0.06225877162069082,
"q3": 0.15613897889852524,
"max": 0.2816303074359894,
"min": -0.11201691627502441,
"p10": 0.026399594917893413,
"p90": 0.18484574854373936,
"std": 0.06289542393441379,
"median": 0.10764970630407333,
"average": 0.1059820607514931,
"variance": 0.003955834351889631
},
"MSI": {
"min": 0.708953857421875,
"max": 1.1564327478408813,
"average": 0.871500668306894,
"std": 0.07412427511032148,
"variance": 0.0054944081606306235,
"q1": 0.8077611029148102,
"q3": 0.9279850721359253,
"median": 0.8764504492282867,
"p10": 0.7769006192684174,
"p90": 0.9608058929443359
},
"EVI": {
"min": -98.12822723388672,
"max": 47.290531158447266,
"average": 0.3720668537617378,
"std": 3.8028567119188925,
"variance": 14.46171917138657,
"q1": 0.1694919317960739,
"q3": 0.3644031807780266,
"median": 0.2724674642086029,
"p10": 0.0719693697988987,
"p90": 0.5220617949962618
}
}
}
]
}