---
type: "firecrawl-provider"
description: "Sentinel-2 L2A scenes over a geometry from Element 84's Earth Search STAC API, with per-field vegetation indices (NDVI, EVI, NDMI) and true-colour/NDVI clips read straight from the Cloud Optimized GeoTIFFs on AWS Open Data by HTTP range request."
use_when: "Sentinel-2 L2A scenes over a geometry from Element 84's Earth Search STAC API, with per-field vegetation indices (NDVI, EVI, NDMI) and true-colour/NDVI clips read straight from the Cloud Optimized GeoTIFFs on AWS Open Data by HTTP range request."
categories: "Real estate"
capabilities: 5
credits_per_call: 5
---
# Element 84 Earth Search (Sentinel-2 L2A) on Firecrawl Alexandria

Sentinel-2 L2A scenes over a geometry from Element 84's Earth Search STAC API, with per-field vegetation indices (NDVI, EVI, NDMI) and true-colour/NDVI clips read straight from the Cloud Optimized GeoTIFFs on AWS Open Data by HTTP range request.

- Categories: Real estate
- Category index: [Real estate category](https://firecrawl.dev/alexandria/agents/categories/real-estate)
- Provider key: `earth-search-aws-element84-com`
- Access: Firecrawl credits
- Cost: 5 credits per call

## More

- [Human guide](https://firecrawl.dev/app/alexandria/earth-search-aws-element84-com)
- [OpenAPI spec](https://firecrawl.dev/alexandria/agents/providers/earth-search-aws-element84-com/openapi.json)

## Capabilities

- [Render clip](https://firecrawl.dev/alexandria/agents/providers/earth-search-aws-element84-com/satellite-imagery/render_clip): A true-colour (TCI) or NDVI PNG of the geometry's bounding box from one scene at native 10 m, enlarged by a whole-number nearest-neighbour factor within max_px, pixels outside the geometry dimmed. Returned as base64 (programs have no artifact storage).
- [Scene availability](https://firecrawl.dev/alexandria/agents/providers/earth-search-aws-element84-com/satellite-imagery/scene_availability): How many Sentinel-2 scenes cover a geometry's bounding box in a window, by month, cloud-cover bucket, MGRS tile and platform (GET /v1/aggregate). Cheap pre-check before reading pixels.
- [Scene detail](https://firecrawl.dev/alexandria/agents/providers/earth-search-aws-element84-com/satellite-imagery/scene_detail): One Sentinel-2 scene with every asset: COG hrefs on the S3 buckets, projection, shape, transform, data type, nodata, scale and offset (GET /v1/collections/{collection}/items/{id}).
- [Search scenes](https://firecrawl.dev/alexandria/agents/providers/earth-search-aws-element84-com/satellite-imagery/search_scenes): Sentinel-2 L2A scenes intersecting a geometry in a date window, newest first, with tile-level cloud cover and other scene percentages (POST /v1/search with intersects, datetime, query, sortby, fields).
- [Vegetation indices](https://firecrawl.dev/alexandria/agents/providers/earth-search-aws-element84-com/satellite-imagery/vegetation_indices): NDVI, EVI and NDMI statistics (mean, median, p10, p90, min, max, std) over a geometry per scene, computed from the Sentinel-2 COGs by HTTP range request: SCL read first for the field's cloud share, cloudy scenes skipped, reflectance = scale * DN + offset from the item's raster:bands, pixels counted when their centre falls inside the geometry, plus a zone grid of weak areas.

## 1. Choose this provider when

Sentinel-2 L2A scenes over a geometry from Element 84's Earth Search STAC API, with per-field vegetation indices (NDVI, EVI, NDMI) and true-colour/NDVI clips read straight from the Cloud Optimized GeoTIFFs on AWS Open Data by HTTP range request.

## 2. Minimal request

Call `POST https://api.firecrawl.dev/v2/scrape` with `{ alexandria: { provider, capability, options } }`. For a batch, send `{ alexandria: [...] }` with up to 10 calls.

```json
{
  "provider": "earth-search-aws-element84-com",
  "capability": "satellite-imagery/render_clip",
  "options": {
    "geometry": {
      "coordinates": [
        [
          [
            -105.2701,
            40.0151
          ],
          [
            -105.2697,
            40.0151
          ],
          [
            -105.2697,
            40.0154
          ],
          [
            -105.2701,
            40.0154
          ],
          [
            -105.2701,
            40.0151
          ]
        ]
      ],
      "type": "Polygon"
    },
    "max_px": 48,
    "scene_id": "S2A_T13TDE_20260904T175741_L2A"
  }
}
```

## 3. Add provider options

Use only the options needed for the task:

- `collection` (string): Collection of the scene id; inferred from the id form when omitted. Example: `sentinel-2-c1-l2a`
- `geometry` (object, required): GeoJSON geometry in WGS84 with [lon, lat] positions: Point, Polygon, MultiPolygon, or a Feature wrapping one. Rings must be closed; altitude is ignored; FeatureCollection and antimeridian-crossing shapes are refused (invalid_input with a JSON pointer and a stable code: ring_not_closed, latitude, longitude, too_large, too_many_vertices, feature_collection, antimeridian, unsupported_type). Open because GeoJSON allows foreign members (properties, id, bbox). Example: `{}`
- `layer` (string): `true_colour` (default) reads the visual asset; `ndvi` reads red and nir. Example: `true_colour`
- `max_px` (number): Longest side of the PNG; the native clip is enlarged by the largest whole factor that fits. Example: `512`
- `scene_id` (string, required): Earth Search item id, e.g. S2B_T16SDE_20260903T163711_L2A (sentinel-2-c1-l2a) or S2A_16SDE_20220909_0_L2A (sentinel-2-l2a). Pattern: ^[A-Za-z0-9_-]+$. Example: `<scene_id>`

## 4. Request through your preferred interface

### JavaScript

```javascript
const result = await firecrawl.scrape({
  alexandria: {
    provider: "earth-search-aws-element84-com",
    capability: "satellite-imagery/render_clip",
    options: {
      geometry: {
        coordinates: [
          [
            [
              -105.2701,
              40.0151,
            ],
            [
              -105.2697,
              40.0151,
            ],
            [
              -105.2697,
              40.0154,
            ],
            [
              -105.2701,
              40.0154,
            ],
            [
              -105.2701,
              40.0151,
            ],
          ],
        ],
        type: "Polygon",
      },
      max_px: 48,
      scene_id: "S2A_T13TDE_20260904T175741_L2A",
    },
  },
});
```

### Python

```python
result = firecrawl.scrape_alexandria({
  "provider": "earth-search-aws-element84-com",
  "capability": "satellite-imagery/render_clip",
  "options": {
    "geometry": {
      "coordinates": [
        [
          [
            -105.2701,
            40.0151
          ],
          [
            -105.2697,
            40.0151
          ],
          [
            -105.2697,
            40.0154
          ],
          [
            -105.2701,
            40.0154
          ],
          [
            -105.2701,
            40.0151
          ]
        ]
      ],
      "type": "Polygon"
    },
    "max_px": 48,
    "scene_id": "S2A_T13TDE_20260904T175741_L2A"
  }
})
```

### cURL

```sh
curl https://api.firecrawl.dev/v2/scrape \
  -H "Authorization: Bearer $FIRECRAWL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "alexandria": {
    "provider": "earth-search-aws-element84-com",
    "capability": "satellite-imagery/render_clip",
    "options": {
      "geometry": {
        "coordinates": [
          [
            [
              -105.2701,
              40.0151
            ],
            [
              -105.2697,
              40.0151
            ],
            [
              -105.2697,
              40.0154
            ],
            [
              -105.2701,
              40.0154
            ],
            [
              -105.2701,
              40.0151
            ]
          ]
        ],
        "type": "Polygon"
      },
      "max_px": 48,
      "scene_id": "S2A_T13TDE_20260904T175741_L2A"
    }
  }
}'
```

### CLI

```sh
firecrawl scrape 'earth-search-aws-element84-com/satellite-imagery/render_clip' \
  --options '{"geometry":{"coordinates":[[[-105.2701,40.0151],[-105.2697,40.0151],[-105.2697,40.0154],[-105.2701,40.0154],[-105.2701,40.0151]]],"type":"Polygon"},"max_px":48,"scene_id":"S2A_T13TDE_20260904T175741_L2A"}'
```


### MCP

Call the FCX MCP retrieve tool with this object:

```json
{
  "provider": "earth-search-aws-element84-com",
  "capability": "satellite-imagery/render_clip",
  "options": {
    "geometry": {
      "coordinates": [
        [
          [
            -105.2701,
            40.0151
          ],
          [
            -105.2697,
            40.0151
          ],
          [
            -105.2697,
            40.0154
          ],
          [
            -105.2701,
            40.0154
          ],
          [
            -105.2701,
            40.0151
          ]
        ]
      ],
      "type": "Polygon"
    },
    "max_px": 48,
    "scene_id": "S2A_T13TDE_20260904T175741_L2A"
  }
}
```

Ask for only the returned fields needed by the task.

## 5. Full request shape

```json
{
  "provider": "earth-search-aws-element84-com",
  "capability": "satellite-imagery/render_clip",
  "options": {
    "geometry": {
      "coordinates": [
        [
          [
            -105.2701,
            40.0151
          ],
          [
            -105.2697,
            40.0151
          ],
          [
            -105.2697,
            40.0154
          ],
          [
            -105.2701,
            40.0154
          ],
          [
            -105.2701,
            40.0151
          ]
        ]
      ],
      "type": "Polygon"
    },
    "max_px": 48,
    "scene_id": "S2A_T13TDE_20260904T175741_L2A"
  }
}
```

## 6. Response data

The response includes `success`, `provider`, `capability`, `creditsCost` and `data`. This example shows the provider payload in `data`:

```json
{
  "asset_keys": [
    "visual"
  ],
  "bounds_utm": {
    "xmax": 476983.64666648704,
    "xmin": 476949.40946222196,
    "ymax": 4429501.405501108,
    "ymin": 4429468.004886297
  },
  "bytes_read": 2521313,
  "collection": "sentinel-2-c1-l2a",
  "date": "2026-09-04",
  "datetime": "2026-09-04T18:03:10.203000Z",
  "epsg": 32613,
  "height": 45,
  "image_bytes": 210,
  "image_png_base64": "iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAIAAAC1eHXNAAAAmUlEQVR4nO3OPQrCMACG4YIi1f5pTdsQKiVoERezqIgKHZ29/2U8wbsEun3wHOBJ2i4ldbMizubEdAVp6zVJ9NBDDz1iH3afkef9QKaPJyEMRA899NBjjocxOfm+z+T1OJJxrEhRLokeeuihR/SjMRn5TRdyu1pyCiVJiwXRQw899Ih/9BXxbkvaekMG3xDX74geeuihR+zjD+domJPDl3q7AAAAAElFTkSuQmCC",
  "layer": "true_colour",
  "legend": "Sentinel-2 true colour (TCI, bands 4/3/2 as 8-bit); pixels outside the geometry are dimmed",
  "location": {
    "area_m2": 1136,
    "bbox": [
      -105.2701,
      40.0151,
      -105.2697,
      40.0154
    ],
    "centroid": [
      -105.2699,
      40.01525
    ],
    "kind": "Polygon"
  },
  "missing": [],
  "native_height": 5,
  "native_width": 5,
  "observed_at_ms": 1790875796048,
  "pixel_size_m": 10,
  "pixels_inside_geometry": 9,
  "scale_factor": 9,
  "scene_id": "S2A_T13TDE_20260904T175741_L2A",
  "sources": [
    {
      "name": "Element 84 Earth Search",
      "observed_at": "2026-10-01T17:29:56Z",
      "url": "https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2A_T13TDE_20260904T175741_L2A"
    }
  ],
  "spatial_precision": "polygon",
  "width": 45
}
```

## API reference-derived contract

The following capability contract is generated from the same normalized Alexandria API reference exposed in the API spec.

### Render clip

- Capability: `satellite-imagery/render_clip`
- Description: A true-colour (TCI) or NDVI PNG of the geometry's bounding box from one scene at native 10 m, enlarged by a whole-number nearest-neighbour factor within max_px, pixels outside the geometry dimmed. Returned as base64 (programs have no artifact storage).
- Instructions: To show a field on a given date. Get the scene id from search_scenes. Sizes grow with the geometry: keep max_px small for large fields.
- Cost: 5 credits per call
- Capability file: [Render clip](https://firecrawl.dev/alexandria/agents/providers/earth-search-aws-element84-com/satellite-imagery/render_clip)

Accepted options:
- `collection` (string): Collection of the scene id; inferred from the id form when omitted. Example: `sentinel-2-c1-l2a`
- `geometry` (object, required): GeoJSON geometry in WGS84 with [lon, lat] positions: Point, Polygon, MultiPolygon, or a Feature wrapping one. Rings must be closed; altitude is ignored; FeatureCollection and antimeridian-crossing shapes are refused (invalid_input with a JSON pointer and a stable code: ring_not_closed, latitude, longitude, too_large, too_many_vertices, feature_collection, antimeridian, unsupported_type). Open because GeoJSON allows foreign members (properties, id, bbox). Example: `{}`
- `layer` (string): `true_colour` (default) reads the visual asset; `ndvi` reads red and nir. Example: `true_colour`
- `max_px` (number): Longest side of the PNG; the native clip is enlarged by the largest whole factor that fits. Example: `512`
- `scene_id` (string, required): Earth Search item id, e.g. S2B_T16SDE_20260903T163711_L2A (sentinel-2-c1-l2a) or S2A_16SDE_20220909_0_L2A (sentinel-2-l2a). Pattern: ^[A-Za-z0-9_-]+$. Example: `<scene_id>`

Response schema example:
```json
{
  "asset_keys": [
    "visual"
  ],
  "bounds_utm": {
    "xmax": 476983.64666648704,
    "xmin": 476949.40946222196,
    "ymax": 4429501.405501108,
    "ymin": 4429468.004886297
  },
  "bytes_read": 2521313,
  "collection": "sentinel-2-c1-l2a",
  "date": "2026-09-04",
  "datetime": "2026-09-04T18:03:10.203000Z",
  "epsg": 32613,
  "height": 45,
  "image_bytes": 210,
  "image_png_base64": "iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAIAAAC1eHXNAAAAmUlEQVR4nO3OPQrCMACG4YIi1f5pTdsQKiVoERezqIgKHZ29/2U8wbsEun3wHOBJ2i4ldbMizubEdAVp6zVJ9NBDDz1iH3afkef9QKaPJyEMRA899NBjjocxOfm+z+T1OJJxrEhRLokeeuihR/SjMRn5TRdyu1pyCiVJiwXRQw899Ih/9BXxbkvaekMG3xDX74geeuihR+zjD+domJPDl3q7AAAAAElFTkSuQmCC",
  "layer": "true_colour",
  "legend": "Sentinel-2 true colour (TCI, bands 4/3/2 as 8-bit); pixels outside the geometry are dimmed",
  "location": {
    "area_m2": 1136,
    "bbox": [
      -105.2701,
      40.0151,
      -105.2697,
      40.0154
    ],
    "centroid": [
      -105.2699,
      40.01525
    ],
    "kind": "Polygon"
  },
  "missing": [],
  "native_height": 5,
  "native_width": 5,
  "observed_at_ms": 1790875796048,
  "pixel_size_m": 10,
  "pixels_inside_geometry": 9,
  "scale_factor": 9,
  "scene_id": "S2A_T13TDE_20260904T175741_L2A",
  "sources": [
    {
      "name": "Element 84 Earth Search",
      "observed_at": "2026-10-01T17:29:56Z",
      "url": "https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2A_T13TDE_20260904T175741_L2A"
    }
  ],
  "spatial_precision": "polygon",
  "width": 45
}
```

### Scene availability

- Capability: `satellite-imagery/scene_availability`
- Description: How many Sentinel-2 scenes cover a geometry's bounding box in a window, by month, cloud-cover bucket, MGRS tile and platform (GET /v1/aggregate). Cheap pre-check before reading pixels.
- Instructions: To see whether a period has usable imagery, or how dense the archive is for a place, before calling search_scenes or vegetation_indices.
- Cost: 5 credits per call
- Capability file: [Scene availability](https://firecrawl.dev/alexandria/agents/providers/earth-search-aws-element84-com/satellite-imagery/scene_availability)

Accepted options:
- `collection` (string): `sentinel-2-c1-l2a` (Collection 1, default), `sentinel-2-l2a` (legacy archive, denser before 2023) or `auto` (c1, falling back to the legacy collection when c1 matches nothing). Example: `auto`
- `end` (string): Window end, YYYY-MM-DD (UTC), inclusive. Defaults to today. Pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}$. Example: `<end>`
- `geometry` (object, required): GeoJSON geometry in WGS84 with [lon, lat] positions: Point, Polygon, MultiPolygon, or a Feature wrapping one. Rings must be closed; altitude is ignored; FeatureCollection and antimeridian-crossing shapes are refused (invalid_input with a JSON pointer and a stable code: ring_not_closed, latitude, longitude, too_large, too_many_vertices, feature_collection, antimeridian, unsupported_type). Open because GeoJSON allows foreign members (properties, id, bbox). Example: `{}`
- `start` (string): Window start, YYYY-MM-DD (UTC). Earth Search holds Sentinel-2 L2A from 2015-06-27. Pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}$. Example: `<start>`

Response schema example:
```json
{
  "bbox_queried": [
    -86.93,
    35.853,
    -86.92,
    35.859
  ],
  "collections": [
    {
      "by_cloud_cover": [
        {
          "from_pct": null,
          "range": "*-5.0",
          "scenes": 3,
          "to_pct": 5
        },
        {
          "from_pct": 5,
          "range": "5.0-15.0",
          "scenes": 2,
          "to_pct": 15
        },
        {
          "from_pct": 15,
          "range": "15.0-40.0",
          "scenes": 8,
          "to_pct": 40
        },
        {
          "from_pct": 40,
          "range": "40.0-*",
          "scenes": 17,
          "to_pct": null
        }
      ],
      "by_month": [
        {
          "month": "2026-07",
          "scenes": 8
        },
        {
          "month": "2026-08",
          "scenes": 16
        },
        {
          "month": "2026-09",
          "scenes": 6
        }
      ],
      "by_platform": [
        {
          "platform": "sentinel-2b",
          "scenes": 12
        },
        {
          "platform": "sentinel-2c",
          "scenes": 12
        },
        {
          "platform": "sentinel-2a",
          "scenes": 6
        }
      ],
      "by_tile": [
        {
          "grid_code": "MGRS-16SDE",
          "scenes": 15
        },
        {
          "grid_code": "MGRS-16SEE",
          "scenes": 15
        }
      ],
      "collection": "sentinel-2-c1-l2a",
      "total_scenes": 30
    }
  ],
  "location": {
    "area_m2": 601272,
    "bbox": [
      -86.93,
      35.853,
      -86.92,
      35.859
    ],
    "centroid": [
      -86.925,
      35.856
    ],
    "kind": "Polygon"
  },
  "missing": [],
  "notes": [
    "counts are per MGRS tile intersecting the bbox: a field near a tile edge is counted once per tile and per pass"
  ],
  "observed_at_ms": 1790875737132,
  "sources": [
    {
      "name": "Element 84 Earth Search",
      "observed_at": "2026-10-01T17:28:56Z",
      "url": "https://earth-search.aws.element84.com/v1/aggregate?collections=sentinel-2-c1-l2a&bbox=-86.93,35.853,-86.92,35.859&datetime=2026-07-15T00:00:00Z/2026-09-10T23:59:59Z&aggregations=total_count,datetime_frequency,cloud_cover_frequency,grid_code_frequency,platform_frequency"
    }
  ],
  "spatial_precision": "grid_cell",
  "total_scenes": 30,
  "window": {
    "end": "2026-09-10",
    "start": "2026-07-15"
  }
}
```

### Scene detail

- Capability: `satellite-imagery/scene_detail`
- Description: One Sentinel-2 scene with every asset: COG hrefs on the S3 buckets, projection, shape, transform, data type, nodata, scale and offset (GET /v1/collections/{collection}/items/{id}).
- Instructions: When you need asset URLs or raster metadata for a scene id returned by search_scenes.
- Cost: 5 credits per call
- Capability file: [Scene detail](https://firecrawl.dev/alexandria/agents/providers/earth-search-aws-element84-com/satellite-imagery/scene_detail)

Accepted options:
- `collection` (string): Collection of the scene id; inferred from the id form when omitted. Example: `sentinel-2-c1-l2a`
- `scene_id` (string, required): Earth Search item id, e.g. S2B_T16SDE_20260903T163711_L2A (sentinel-2-c1-l2a) or S2A_16SDE_20220909_0_L2A (sentinel-2-l2a). Pattern: ^[A-Za-z0-9_-]+$. Example: `<scene_id>`

Response schema example:
```json
{
  "assets": [
    {
      "data_type": "uint16",
      "file_size_bytes": 1767881,
      "gsd_m": 20,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/AOT.tif",
      "key": "aot",
      "nodata": 0,
      "offset": 0,
      "roles": [
        "data"
      ],
      "scale": 0.001,
      "shape": [
        5490,
        5490
      ],
      "title": "Aerosol optical thickness (AOT)",
      "transform": [
        20,
        0,
        399960,
        0,
        -20,
        4000020
      ],
      "type": "image/tiff; application=geotiff; profile=cloud-optimized"
    },
    {
      "data_type": "uint16",
      "file_size_bytes": 202645038,
      "gsd_m": 10,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/B02.tif",
      "key": "blue",
      "nodata": 0,
      "offset": -0.1,
      "roles": [
        "data",
        "reflectance"
      ],
      "scale": 0.0001,
      "shape": [
        10980,
        10980
      ],
      "title": "Blue - 10m",
      "transform": [
        10,
        0,
        399960,
        0,
        -10,
        4000020
      ],
      "type": "image/tiff; application=geotiff; profile=cloud-optimized"
    },
    {
      "data_type": "uint8",
      "file_size_bytes": 1283727,
      "gsd_m": 20,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/CLD_20m.tif",
      "key": "cloud",
      "nodata": 0,
      "offset": null,
      "roles": [
        "data",
        "cloud"
      ],
      "scale": null,
      "shape": [
        5490,
        5490
      ],
      "title": "Cloud Probabilities",
      "transform": [
        20,
        0,
        399960,
        0,
        -20,
        4000020
      ],
      "type": "image/tiff; application=geotiff; profile=cloud-optimized"
    },
    {
      "data_type": "uint16",
      "file_size_bytes": 5780958,
      "gsd_m": 60,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/B01.tif",
      "key": "coastal",
      "nodata": 0,
      "offset": -0.1,
      "roles": [
        "data",
        "reflectance"
      ],
      "scale": 0.0001,
      "shape": [
        1830,
        1830
      ],
      "title": "Coastal - 60m",
      "transform": [
        60,
        0,
        399960,
        0,
        -60,
        4000020
      ],
      "type": "image/tiff; application=geotiff; profile=cloud-optimized"
    },
    {
      "data_type": null,
      "file_size_bytes": 547962,
      "gsd_m": null,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/metadata.xml",
      "key": "granule_metadata",
      "nodata": null,
      "offset": null,
      "roles": [
        "metadata"
      ],
      "scale": null,
      "shape": null,
      "title": null,
      "transform": null,
      "type": "application/xml"
    },
    {
      "data_type": "uint16",
      "file_size_bytes": 216889348,
      "gsd_m": 10,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/B03.tif",
      "key": "green",
      "nodata": 0,
      "offset": -0.1,
      "roles": [
        "data",
        "reflectance"
      ],
      "scale": 0.0001,
      "shape": [
        10980,
        10980
      ],
      "title": "Green - 10m",
      "transform": [
        10,
        0,
        399960,
        0,
        -10,
        4000020
      ],
      "type": "image/tiff; application=geotiff; profile=cloud-optimized"
    },
    {
      "data_type": "uint16",
      "file_size_bytes": 250036833,
      "gsd_m": 10,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/B08.tif",
      "key": "nir",
      "nodata": 0,
      "offset": -0.1,
      "roles": [
        "data",
        "reflectance"
      ],
      "scale": 0.0001,
      "shape": [
        10980,
        10980
      ],
      "title": "NIR 1 - 10m",
      "transform": [
        10,
        0,
        399960,
        0,
        -10,
        4000020
      ],
      "type": "image/tiff; application=geotiff; profile=cloud-optimized"
    },
    {
      "data_type": "uint16",
      "file_size_bytes": 63013392,
      "gsd_m": 20,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/B8A.tif",
      "key": "nir08",
      "nodata": 0,
      "offset": -0.1,
      "roles": [
        "data",
        "reflectance"
      ],
      "scale": 0.0001,
      "shape": [
        5490,
        5490
      ],
      "title": "NIR 2 - 20m",
      "transform": [
        20,
        0,
        399960,
        0,
        -20,
        4000020
      ],
      "type": "image/tiff; application=geotiff; profile=cloud-optimized"
    },
    {
      "data_type": "uint16",
      "file_size_bytes": 7047801,
      "gsd_m": 60,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/B09.tif",
      "key": "nir09",
      "nodata": 0,
      "offset": -0.1,
      "roles": [
        "data",
        "reflectance"
      ],
      "scale": 0.0001,
      "shape": [
        1830,
        1830
      ],
      "title": "NIR 3 - 60m",
      "transform": [
        60,
        0,
        399960,
        0,
        -60,
        4000020
      ],
      "type": "image/tiff; application=geotiff; profile=cloud-optimized"
    },
    {
      "data_type": null,
      "file_size_bytes": 192885,
      "gsd_m": 320,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/L2A_PVI.tif",
      "key": "preview",
      "nodata": null,
      "offset": null,
      "roles": [
        "overview"
      ],
      "scale": null,
      "shape": [
        343,
        343
      ],
      "title": "True color preview",
      "transform": [
        320,
        0,
        399960,
        0,
        -320,
        4000020
      ],
      "type": "image/tiff; application=geotiff; profile=cloud-optimized"
    },
    {
      "data_type": null,
      "file_size_bytes": 55044,
      "gsd_m": null,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/product_metadata.xml",
      "key": "product_metadata",
      "nodata": null,
      "offset": null,
      "roles": [
        "metadata"
      ],
      "scale": null,
      "shape": null,
      "title": null,
      "transform": null,
      "type": "application/xml"
    },
    {
      "data_type": "uint16",
      "file_size_bytes": 211145735,
      "gsd_m": 10,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/B04.tif",
      "key": "red",
      "nodata": 0,
      "offset": -0.1,
      "roles": [
        "data",
        "reflectance"
      ],
      "scale": 0.0001,
      "shape": [
        10980,
        10980
      ],
      "title": "Red - 10m",
      "transform": [
        10,
        0,
        399960,
        0,
        -10,
        4000020
      ],
      "type": "image/tiff; application=geotiff; profile=cloud-optimized"
    },
    {
      "data_type": "uint16",
      "file_size_bytes": 58413409,
      "gsd_m": 20,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/B05.tif",
      "key": "rededge1",
      "nodata": 0,
      "offset": -0.1,
      "roles": [
        "data",
        "reflectance"
      ],
      "scale": 0.0001,
      "shape": [
        5490,
        5490
      ],
      "title": "Red Edge 1 - 20m",
      "transform": [
        20,
        0,
        399960,
        0,
        -20,
        4000020
      ],
      "type": "image/tiff; application=geotiff; profile=cloud-optimized"
    },
    {
      "data_type": "uint16",
      "file_size_bytes": 61717904,
      "gsd_m": 20,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/B06.tif",
      "key": "rededge2",
      "nodata": 0,
      "offset": -0.1,
      "roles": [
        "data",
        "reflectance"
      ],
      "scale": 0.0001,
      "shape": [
        5490,
        5490
      ],
      "title": "Red Edge 2 - 20m",
      "transform": [
        20,
        0,
        399960,
        0,
        -20,
        4000020
      ],
      "type": "image/tiff; application=geotiff; profile=cloud-optimized"
    },
    {
      "data_type": "uint16",
      "file_size_bytes": 62775072,
      "gsd_m": 20,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/B07.tif",
      "key": "rededge3",
      "nodata": 0,
      "offset": -0.1,
      "roles": [
        "data",
        "reflectance"
      ],
      "scale": 0.0001,
      "shape": [
        5490,
        5490
      ],
      "title": "Red Edge 3 - 20m",
      "transform": [
        20,
        0,
        399960,
        0,
        -20,
        4000020
      ],
      "type": "image/tiff; application=geotiff; profile=cloud-optimized"
    },
    {
      "data_type": "uint8",
      "file_size_bytes": 1581257,
      "gsd_m": 20,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/SCL.tif",
      "key": "scl",
      "nodata": 0,
      "offset": null,
      "roles": [
        "data"
      ],
      "scale": null,
      "shape": [
        5490,
        5490
      ],
      "title": "Scene classification map (SCL)",
      "transform": [
        20,
        0,
        399960,
        0,
        -20,
        4000020
      ],
      "type": "image/tiff; application=geotiff; profile=cloud-optimized"
    },
    {
      "data_type": "uint8",
      "file_size_bytes": 59412,
      "gsd_m": null,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/SNW_20m.tif",
      "key": "snow",
      "nodata": 0,
      "offset": null,
      "roles": [
        "data",
        "snow-ice"
      ],
      "scale": null,
      "shape": [
        5490,
        5490
      ],
      "title": "Snow Probabilities",
      "transform": [
        20,
        0,
        399960,
        0,
        -20,
        4000020
      ],
      "type": "image/tiff; application=geotiff; profile=cloud-optimized"
    },
    {
      "data_type": "uint16",
      "file_size_bytes": 61250525,
      "gsd_m": 20,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/B11.tif",
      "key": "swir16",
      "nodata": 0,
      "offset": -0.1,
      "roles": [
        "data",
        "reflectance"
      ],
      "scale": 0.0001,
      "shape": [
        5490,
        5490
      ],
      "title": "SWIR 1.6μm - 20m",
      "transform": [
        20,
        0,
        399960,
        0,
        -20,
        4000020
      ],
      "type": "image/tiff; application=geotiff; profile=cloud-optimized"
    },
    {
      "data_type": "uint16",
      "file_size_bytes": 59083267,
      "gsd_m": 20,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/B12.tif",
      "key": "swir22",
      "nodata": 0,
      "offset": -0.1,
      "roles": [
        "data",
        "reflectance"
      ],
      "scale": 0.0001,
      "shape": [
        5490,
        5490
      ],
      "title": "SWIR 2.2μm - 20m",
      "transform": [
        20,
        0,
        399960,
        0,
        -20,
        4000020
      ],
      "type": "image/tiff; application=geotiff; profile=cloud-optimized"
    },
    {
      "data_type": null,
      "file_size_bytes": 36765,
      "gsd_m": null,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/L2A_PVI.jpg",
      "key": "thumbnail",
      "nodata": null,
      "offset": null,
      "roles": [
        "thumbnail"
      ],
      "scale": null,
      "shape": null,
      "title": "Thumbnail of preview image",
      "transform": null,
      "type": "image/jpeg"
    },
    {
      "data_type": null,
      "file_size_bytes": 1488,
      "gsd_m": null,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/tileInfo.json",
      "key": "tileinfo_metadata",
      "nodata": null,
      "offset": null,
      "roles": [
        "metadata"
      ],
      "scale": null,
      "shape": null,
      "title": null,
      "transform": null,
      "type": "application/json"
    },
    {
      "data_type": "uint8",
      "file_size_bytes": 297413363,
      "gsd_m": 10,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/TCI.tif",
      "key": "visual",
      "nodata": 0,
      "offset": null,
      "roles": [
        "visual"
      ],
      "scale": null,
      "shape": [
        10980,
        10980
      ],
      "title": "True color image",
      "transform": [
        10,
        0,
        399960,
        0,
        -10,
        4000020
      ],
      "type": "image/tiff; application=geotiff; profile=cloud-optimized"
    },
    {
      "data_type": "uint16",
      "file_size_bytes": 48656960,
      "gsd_m": 20,
      "href": "https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/16/S/DE/2026/9/S2B_T16SDE_20260903T163711_L2A/WVP.tif",
      "key": "wvp",
      "nodata": 0,
      "offset": 0,
      "roles": [
        "data"
      ],
      "scale": 0.001,
      "shape": [
        5490,
        5490
      ],
      "title": "Water Vapour (WVP)",
      "transform": [
        20,
        0,
        399960,
        0,
        -20,
        4000020
      ],
      "type": "image/tiff; application=geotiff; profile=cloud-optimized"
    }
  ],
  "bbox": [
    -88.111914,
    35.149921,
    -86.891522,
    36.14484
  ],
  "boa_offset_applied": null,
  "cloud_cover_pct": 4.791281,
  "cloud_high_probability_pct": 2.386382,
  "cloud_medium_probability_pct": 2.403234,
  "cloud_shadow_pct": 4.197391,
  "collection": "sentinel-2-c1-l2a",
  "constellation": "sentinel-2",
  "covers_geometry": null,
  "created": "2026-09-05T15:05:45.403Z",
  "date": "2026-09-03",
  "datetime": "2026-09-03T16:43:38.040000Z",
  "epsg": 32616,
  "footprint": {
    "coordinates": [
      [
        [
          -88.11191385205836,
          36.13972769324406
        ],
        [
          -88.0982820530267,
          35.1499211736146
        ],
        [
          -86.89285176524282,
          35.154851672138626
        ],
        [
          -86.89152152018616,
          36.14484027029347
        ],
        [
          -88.11191385205836,
          36.13972769324406
        ]
      ]
    ],
    "type": "Polygon"
  },
  "grid_code": "MGRS-16SDE",
  "id": "S2B_T16SDE_20260903T163711_L2A",
  "item_url": "https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2B_T16SDE_20260903T163711_L2A",
  "missing": [],
  "nodata_pixel_pct": 0,
  "not_vegetated_pct": 2.968009,
  "observed_at_ms": 1790875731014,
  "platform": "sentinel-2b",
  "processing_baseline": "05.12",
  "product_uri": "S2B_MSIL2A_20260903T162829_N0512_R083_T16SDE_20260903T221327.SAFE",
  "snow_ice_pct": 0,
  "sources": [
    {
      "name": "Element 84 Earth Search",
      "observed_at": "2026-10-01T17:28:51Z",
      "url": "https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2B_T16SDE_20260903T163711_L2A"
    }
  ],
  "spatial_precision": "grid_cell",
  "sun_azimuth": 148.110972011988,
  "sun_elevation": 57.9660563048985,
  "thin_cirrus_pct": 0.001666,
  "thumbnail_url": "https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2B_T16SDE_20260903T163711_L2A/thumbnail",
  "updated": "2026-09-05T15:05:45.403Z",
  "vegetation_pct": 86.681187,
  "water_pct": 1.036709
}
```

### Search scenes

- Capability: `satellite-imagery/search_scenes`
- Description: Sentinel-2 L2A scenes intersecting a geometry in a date window, newest first, with tile-level cloud cover and other scene percentages (POST /v1/search with intersects, datetime, query, sortby, fields).
- Instructions: Start here to find scene ids and dates for a field, then pass them to vegetation_indices or render_clip. Percentages are per MGRS tile, not per field; use vegetation_indices for the field's own cloud share.
- Cost: 5 credits per call
- Capability file: [Search scenes](https://firecrawl.dev/alexandria/agents/providers/earth-search-aws-element84-com/satellite-imagery/search_scenes)

Accepted options:
- `collection` (string): `sentinel-2-c1-l2a` (Collection 1, default), `sentinel-2-l2a` (legacy archive, denser before 2023) or `auto` (c1, falling back to the legacy collection when c1 matches nothing). Example: `auto`
- `continuation` (string): Opaque token from a previous page. Example: `<continuation>`
- `end` (string): Window end, YYYY-MM-DD (UTC), inclusive. Defaults to today. Pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}$. Example: `<end>`
- `geometry` (object, required): GeoJSON geometry in WGS84 with [lon, lat] positions: Point, Polygon, MultiPolygon, or a Feature wrapping one. Rings must be closed; altitude is ignored; FeatureCollection and antimeridian-crossing shapes are refused (invalid_input with a JSON pointer and a stable code: ring_not_closed, latitude, longitude, too_large, too_many_vertices, feature_collection, antimeridian, unsupported_type). Open because GeoJSON allows foreign members (properties, id, bbox). Example: `{}`
- `limit` (number): Scenes per page. Example: `20`
- `max_cloud_cover_pct` (number): Keep scenes whose tile-level eo:cloud_cover is below this percentage (Earth Search `query` filter). Example: `10`
- `start` (string): Window start, YYYY-MM-DD (UTC). Earth Search holds Sentinel-2 L2A from 2015-06-27. Pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}$. Example: `<start>`

Response schema example:
```json
{
  "collection": "sentinel-2-c1-l2a",
  "continuation": "sentinel-2-c1-l2a|2026-09-03T16:43:38.040000Z",
  "location": {
    "area_m2": 601272,
    "bbox": [
      -86.93,
      35.853,
      -86.92,
      35.859
    ],
    "centroid": [
      -86.925,
      35.856
    ],
    "kind": "Polygon"
  },
  "matched": 10,
  "max_cloud_cover_pct": 30,
  "missing": [],
  "notes": [],
  "observed_at_ms": 1790875722878,
  "returned": 3,
  "scenes": [
    {
      "bbox": [
        -88.111914,
        35.149921,
        -86.891522,
        36.14484
      ],
      "cloud_cover_pct": 28.96958,
      "cloud_shadow_pct": 6.142063,
      "collection": "sentinel-2-c1-l2a",
      "covers_geometry": true,
      "date": "2026-09-10",
      "datetime": "2026-09-10T16:43:54.948000Z",
      "epsg": 32616,
      "grid_code": "MGRS-16SDE",
      "id": "S2A_T16SDE_20260910T164143_L2A",
      "item_url": "https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2A_T16SDE_20260910T164143_L2A",
      "nodata_pixel_pct": 0,
      "not_vegetated_pct": 3.097369,
      "platform": "sentinel-2a",
      "processing_baseline": "05.12",
      "snow_ice_pct": 0,
      "spatial_precision": "grid_cell",
      "sun_elevation": 55.8536601036066,
      "thumbnail_url": "https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2A_T16SDE_20260910T164143_L2A/thumbnail",
      "vegetation_pct": 59.415716,
      "water_pct": 0.992933
    },
    {
      "bbox": [
        -88.111914,
        35.149921,
        -86.891522,
        36.14484
      ],
      "cloud_cover_pct": 19.830154,
      "cloud_shadow_pct": 9.640406,
      "collection": "sentinel-2-c1-l2a",
      "covers_geometry": true,
      "date": "2026-09-08",
      "datetime": "2026-09-08T16:43:38.417000Z",
      "epsg": 32616,
      "grid_code": "MGRS-16SDE",
      "id": "S2C_T16SDE_20260908T163821_L2A",
      "item_url": "https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2C_T16SDE_20260908T163821_L2A",
      "nodata_pixel_pct": 0,
      "not_vegetated_pct": 3.726975,
      "platform": "sentinel-2c",
      "processing_baseline": "05.12",
      "snow_ice_pct": 0,
      "spatial_precision": "grid_cell",
      "sun_elevation": 56.4510399171648,
      "thumbnail_url": "https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2C_T16SDE_20260908T163821_L2A/thumbnail",
      "vegetation_pct": 65.065086,
      "water_pct": 0.734808
    },
    {
      "bbox": [
        -88.111914,
        35.149921,
        -86.891522,
        36.14484
      ],
      "cloud_cover_pct": 4.791281,
      "cloud_shadow_pct": 4.197391,
      "collection": "sentinel-2-c1-l2a",
      "covers_geometry": true,
      "date": "2026-09-03",
      "datetime": "2026-09-03T16:43:38.040000Z",
      "epsg": 32616,
      "grid_code": "MGRS-16SDE",
      "id": "S2B_T16SDE_20260903T163711_L2A",
      "item_url": "https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2B_T16SDE_20260903T163711_L2A",
      "nodata_pixel_pct": 0,
      "not_vegetated_pct": 2.968009,
      "platform": "sentinel-2b",
      "processing_baseline": "05.12",
      "snow_ice_pct": 0,
      "spatial_precision": "grid_cell",
      "sun_elevation": 57.9660563048985,
      "thumbnail_url": "https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2B_T16SDE_20260903T163711_L2A/thumbnail",
      "vegetation_pct": 86.681187,
      "water_pct": 1.036709
    }
  ],
  "sources": [
    {
      "name": "Element 84 Earth Search",
      "observed_at": "2026-10-01T17:28:42Z",
      "url": "https://earth-search.aws.element84.com/v1/search"
    }
  ],
  "spatial_precision": "grid_cell",
  "window": {
    "end": "2026-09-10",
    "start": "2026-07-15"
  }
}
```

### Vegetation indices

- Capability: `satellite-imagery/vegetation_indices`
- Description: NDVI, EVI and NDMI statistics (mean, median, p10, p90, min, max, std) over a geometry per scene, computed from the Sentinel-2 COGs by HTTP range request: SCL read first for the field's cloud share, cloudy scenes skipped, reflectance = scale * DN + offset from the item's raster:bands, pixels counted when their centre falls inside the geometry, plus a zone grid of weak areas.
- Instructions: For a paddock, field or parcel: how green or moist is it per scene, how much of it was cloudy, and which zones lag. Pass scene_ids from search_scenes, or a window and the newest clear scenes are chosen.
- Cost: 5 credits per call
- Capability file: [Vegetation indices](https://firecrawl.dev/alexandria/agents/providers/earth-search-aws-element84-com/satellite-imagery/vegetation_indices)

Accepted options:
- `collection` (string): `sentinel-2-c1-l2a` (Collection 1, default), `sentinel-2-l2a` (legacy archive, denser before 2023) or `auto` (c1, falling back to the legacy collection when c1 matches nothing). Example: `auto`
- `end` (string): Window end, YYYY-MM-DD (UTC), inclusive. Defaults to today. Pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}$. Example: `<end>`
- `geometry` (object, required): GeoJSON geometry in WGS84 with [lon, lat] positions: Point, Polygon, MultiPolygon, or a Feature wrapping one. Rings must be closed; altitude is ignored; FeatureCollection and antimeridian-crossing shapes are refused (invalid_input with a JSON pointer and a stable code: ring_not_closed, latitude, longitude, too_large, too_many_vertices, feature_collection, antimeridian, unsupported_type). Open because GeoJSON allows foreign members (properties, id, bbox). Example: `{}`
- `indices` (string[]): indices Example: `[]`
- `max_cloud_cover_pct` (number): Keep scenes whose tile-level eo:cloud_cover is below this percentage (Earth Search `query` filter). Example: `10`
- `max_field_cloud_share` (number): Skip reflectance reads when the SCL cloud share over the geometry exceeds this. Example: `0.3`
- `max_scenes` (number): Newest distinct acquisitions to read when searching a window. Example: `3`
- `scene_ids` (string[]): Specific scenes to read; otherwise the window is searched. Example: `[]`
- `start` (string): Window start, YYYY-MM-DD (UTC). Earth Search holds Sentinel-2 L2A from 2015-06-27. Pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}$. Example: `<start>`
- `zone_grid` (number): Zones per side of the grid over the geometry's bbox (1 disables). Example: `3`

Response schema example:
```json
{
  "bytes_read": 4281103,
  "collection": "sentinel-2-c1-l2a",
  "formulas": {
    "evi": "2.5 * (B08 - B04) / (B08 + 6 * B04 - 7.5 * B02 + 1)",
    "ndmi": "(B8A - B11) / (B8A + B11)",
    "ndvi": "(B08 - B04) / (B08 + B04)"
  },
  "indices_requested": [
    "ndvi",
    "evi",
    "ndmi"
  ],
  "location": {
    "area_m2": 601272,
    "bbox": [
      -86.93,
      35.853,
      -86.92,
      35.859
    ],
    "centroid": [
      -86.925,
      35.856
    ],
    "kind": "Polygon"
  },
  "max_field_cloud_share": 0.3,
  "missing": [],
  "notes": [],
  "observed_at_ms": 1790875769551,
  "pixel_rule": "a pixel counts when its centre falls inside the geometry; SCL classes 3, 8, 9, 10 are cloud; reflectance = scale * DN + offset from the item's raster:bands",
  "scenes": [
    {
      "assets_read": 6,
      "bbox": [
        -88.111914,
        35.149921,
        -86.891522,
        36.14484
      ],
      "bytes_read": 4281103,
      "cloud_cover_pct": 4.791281,
      "cloud_shadow_pct": 4.197391,
      "collection": "sentinel-2-c1-l2a",
      "covers_geometry": true,
      "date": "2026-09-03",
      "datetime": "2026-09-03T16:43:38.040000Z",
      "epsg": 32616,
      "field": {
        "clear_share": 1,
        "cloud_share": 0,
        "nodata_share": 0,
        "pixels_20m": 1530,
        "scl_classes": [
          {
            "class": 4,
            "name": "vegetation",
            "pixels": 1299,
            "share": 0.849
          },
          {
            "class": 5,
            "name": "not_vegetated",
            "pixels": 231,
            "share": 0.151
          }
        ]
      },
      "grid_code": "MGRS-16SDE",
      "id": "S2B_T16SDE_20260903T163711_L2A",
      "indices": {
        "evi": {
          "masked_cloud_pixels": 0,
          "masked_nodata_pixels": 0,
          "max": 0.7397,
          "mean": 0.3997,
          "median": 0.4132,
          "min": -0.0074,
          "p10": 0.212,
          "p90": 0.555,
          "pixel_size_m": 10,
          "pixels": 5940,
          "std": 0.1278,
          "zones": [
            {
              "col": 0,
              "mean": 0.3935,
              "pixels": 630,
              "row": 0,
              "weak": false
            },
            {
              "col": 1,
              "mean": 0.2921,
              "pixels": 630,
              "row": 0,
              "weak": true
            },
            {
              "col": 2,
              "mean": 0.5077,
              "pixels": 630,
              "row": 0,
              "weak": false
            },
            {
              "col": 0,
              "mean": 0.3913,
              "pixels": 690,
              "row": 1,
              "weak": false
            },
            {
              "col": 1,
              "mean": 0.2532,
              "pixels": 690,
              "row": 1,
              "weak": true
            },
            {
              "col": 2,
              "mean": 0.5258,
              "pixels": 690,
              "row": 1,
              "weak": false
            },
            {
              "col": 0,
              "mean": 0.398,
              "pixels": 660,
              "row": 2,
              "weak": false
            },
            {
              "col": 1,
              "mean": 0.3564,
              "pixels": 660,
              "row": 2,
              "weak": false
            },
            {
              "col": 2,
              "mean": 0.4802,
              "pixels": 660,
              "row": 2,
              "weak": false
            }
          ]
        },
        "ndmi": {
          "masked_cloud_pixels": 0,
          "masked_nodata_pixels": 0,
          "max": 0.365,
          "mean": 0.1039,
          "median": 0.146,
          "min": -0.3128,
          "p10": -0.1517,
          "p90": 0.2864,
          "pixel_size_m": 20,
          "pixels": 1530,
          "std": 0.1641,
          "zones": [
            {
              "col": 0,
              "mean": 0.085,
              "pixels": 165,
              "row": 0,
              "weak": false
            },
            {
              "col": 1,
              "mean": -0.0628,
              "pixels": 165,
              "row": 0,
              "weak": true
            },
            {
              "col": 2,
              "mean": 0.2511,
              "pixels": 165,
              "row": 0,
              "weak": false
            },
            {
              "col": 0,
              "mean": 0.1221,
              "pixels": 165,
              "row": 1,
              "weak": false
            },
            {
              "col": 1,
              "mean": -0.1172,
              "pixels": 165,
              "row": 1,
              "weak": true
            },
            {
              "col": 2,
              "mean": 0.2529,
              "pixels": 165,
              "row": 1,
              "weak": false
            },
            {
              "col": 0,
              "mean": 0.1384,
              "pixels": 180,
              "row": 2,
              "weak": false
            },
            {
              "col": 1,
              "mean": 0.0177,
              "pixels": 180,
              "row": 2,
              "weak": true
            },
            {
              "col": 2,
              "mean": 0.2402,
              "pixels": 180,
              "row": 2,
              "weak": false
            }
          ]
        },
        "ndvi": {
          "masked_cloud_pixels": 0,
          "masked_nodata_pixels": 0,
          "max": 0.8846,
          "mean": 0.6014,
          "median": 0.6307,
          "min": -0.0128,
          "p10": 0.3228,
          "p90": 0.8177,
          "pixel_size_m": 10,
          "pixels": 5940,
          "std": 0.1806,
          "zones": [
            {
              "col": 0,
              "mean": 0.6016,
              "pixels": 630,
              "row": 0,
              "weak": false
            },
            {
              "col": 1,
              "mean": 0.4371,
              "pixels": 630,
              "row": 0,
              "weak": true
            },
            {
              "col": 2,
              "mean": 0.7234,
              "pixels": 630,
              "row": 0,
              "weak": false
            },
            {
              "col": 0,
              "mean": 0.585,
              "pixels": 690,
              "row": 1,
              "weak": false
            },
            {
              "col": 1,
              "mean": 0.3845,
              "pixels": 690,
              "row": 1,
              "weak": true
            },
            {
              "col": 2,
              "mean": 0.7386,
              "pixels": 690,
              "row": 1,
              "weak": false
            },
            {
              "col": 0,
              "mean": 0.6161,
              "pixels": 660,
              "row": 2,
              "weak": false
            },
            {
              "col": 1,
              "mean": 0.5333,
              "pixels": 660,
              "row": 2,
              "weak": false
            },
            {
              "col": 2,
              "mean": 0.7957,
              "pixels": 660,
              "row": 2,
              "weak": false
            }
          ]
        }
      },
      "item_url": "https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2B_T16SDE_20260903T163711_L2A",
      "missing": [],
      "nodata_pixel_pct": 0,
      "not_vegetated_pct": 2.968009,
      "platform": "sentinel-2b",
      "processing_baseline": "05.12",
      "snow_ice_pct": 0,
      "spatial_precision": "grid_cell",
      "sun_elevation": 57.9660563048985,
      "thumbnail_url": "https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2B_T16SDE_20260903T163711_L2A/thumbnail",
      "vegetation_pct": 86.681187,
      "water_pct": 1.036709
    }
  ],
  "sources": [
    {
      "name": "Element 84 Earth Search",
      "observed_at": "2026-10-01T17:29:25Z",
      "url": "https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2B_T16SDE_20260903T163711_L2A"
    }
  ],
  "spatial_precision": "polygon",
  "window": null
}
```
