Get an index image
const url = 'https://api.agrosat.uz/v1/fields/cmgz7k2qv0004l8p3a9d1x6rt/image?index=ndvi&date=2026-05-14&format=png&width=512&source=sentinel-2';const options = {method: 'GET', headers: {'X-API-Key': '<X-API-Key>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://api.agrosat.uz/v1/fields/cmgz7k2qv0004l8p3a9d1x6rt/image?index=ndvi&date=2026-05-14&format=png&width=512&source=sentinel-2' \ --header 'X-API-Key: <X-API-Key>'The index over the field on one date: a colourised PNG with transparent pixels outside the field, or a single-band float32 GeoTIFF of index values with nodata outside the field. The image bounds come in the X-AgroSat-Bounds header. Costs ceil(area_ha) units, at least 1.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Example
cmgz7k2qv0004l8p3a9d1x6rtField id returned by registration
Query Parameters
Section titled “Query Parameters”Vegetation index. With source=planet: ndvi, ndre, msavi, evi, gndvi, rci, sipi, gci.
Example
2026-05-14A date returned by dates
png (default) for display, tiff for analysis
Image width in pixels
sentinel-2 (default) or planet. Planet requires a separate agreement.
Responses
Section titled “Responses”Image body
Headers
Section titled “Headers”Example
68.552,40.3084,68.560,40.3139WGS84 bounds of the image: west,south,east,north
Example
42Units this response consumed
Data is being prepared. Repeat the request after Retry-After seconds. Not billed.
object
object
English text; may change, branch on code
Field already holding this external_id or geometry (409 only)
Examples
data_pending
{ "success": false, "error": { "code": "data_pending", "message": "Registration history for this field is being prepared." }}Headers
Section titled “Headers”Example
30Seconds to wait before repeating the request
A parameter is not acceptable
object
object
English text; may change, branch on code
Field already holding this external_id or geometry (409 only)
Examples
invalid_index
{ "success": false, "error": { "code": "invalid_index", "message": "source=planet supports only: ndvi, ndre, msavi, evi, gndvi, rci, sipi, gci." }}invalid_request
{ "success": false, "error": { "code": "invalid_request", "message": "width must be an integer in [64, 2048]." }}date_out_of_range
{ "success": false, "error": { "code": "date_out_of_range", "message": "The earliest date available to this organization is 2024-01-01." }}X-API-Key is missing, unknown, revoked or expired, or the API is not enabled.
object
object
English text; may change, branch on code
Field already holding this external_id or geometry (409 only)
Examples
invalid_api_key
{ "success": false, "error": { "code": "invalid_api_key", "message": "Missing or invalid API key." }}Source or quota not available
object
object
English text; may change, branch on code
Field already holding this external_id or geometry (409 only)
Examples
source_not_enabled
{ "success": false, "error": { "code": "source_not_enabled", "message": "PlanetScope imagery is not enabled for this organization." }}quota_exceeded
{ "success": false, "error": { "code": "quota_exceeded", "message": "Monthly unit quota reached (10000 of 10000)." }}No such field, or no imagery on that date
object
object
English text; may change, branch on code
Field already holding this external_id or geometry (409 only)
Examples
no_imagery_for_date
{ "success": false, "error": { "code": "no_imagery_for_date", "message": "No imagery is available for 2026-05-15." }}field_not_found
{ "success": false, "error": { "code": "field_not_found", "message": "Field not found." }}Over the per-key request rate. Not billed.
object
object
English text; may change, branch on code
Field already holding this external_id or geometry (409 only)
Examples
rate_limited
{ "success": false, "error": { "code": "rate_limited", "message": "Rate limit exceeded." }}Headers
Section titled “Headers”Example
30Seconds to wait before repeating the request
