evi
VI Object (EVI)
| Field | Value Example | Type | Description | How it Can Be Used |
|---|---|---|---|---|
| id | "99af33b6-87f9-45d9-8f1b-afefb85f9f9f" | String (UUID) | Unique identifier | Reference a specific observation |
| cropzone_id | "0ee2865f-45bb-48f8-a56e-2161284ec358" | String (UUID) | Cropzone the observation belongs to | Cropzone reference |
| type | "Evi" | String | Vegetation index type | Distinguish EVI/NDVI/etc. |
| uri | "https://storage.googleapis.com/..." | String (URL) | null | Signed URL of the rendered image | Display the VI layer on a map |
| date | "2025-12-02T00:00:00Z" | String (ISO 8601) | Observation date | Timeline tracking |
| mean | 0.215 | Number | null | Mean index value over the cropzone | Crop health trends |
| cloudy | false | Boolean | Deprecated, use unclear instead. Same value as unclear | Backward compatibility only |
| unclear | false | Boolean | True when more than 70% of the observation's pixels are not a clear observation | Filter out unreliable observations |
| extra_info | { "maskedPercentage": 12.5, ... } | Object | Pipeline metadata for the observation | Quality assessment |
| extra_info.maskedPercentage | 12.5 | Number | Percentage of pixels that are not a clear observation | Quantify how much of the field is masked |
| thresholds | {} | Object | Crop-specific performance thresholds when available | Performance comparison |
| created_at | "2025-12-02T08:05:10Z" | String (ISO 8601) | Record creation time | Data freshness |
| updated_at | "2025-12-02T08:05:10Z" | String (ISO 8601) | Record update time | Data freshness |
About unclear, cloudy and maskedPercentage
Observation quality is derived from Google's CloudScore+ dataset. CloudScore+ does not label why a pixel is obscured: it only scores the probability that a pixel is a clear observation. Pixels below the clear-observation threshold (60% probability) are masked, and the masked area can be cloud, thin cloud, snow, haze or shadow — not necessarily cloud cover.
extra_info.maskedPercentage is the percentage of the cropzone's pixels that were masked this way. When it exceeds 70%, the observation is flagged as unclear and excluded from smoothed series and downstream analysis.
cloudy is a deprecated alias of unclear, kept for backward compatibility. Despite its name it does not mean the field was covered by clouds specifically.