Guide: How to integrate with Monitor API

Learn how to integrate with Monitor API, make requests for on-field practice insights and retrieve field data.

Monitor API enables access to the specific field and management data (such as crop cover, commodity crop type and tillage practices) needed to power sustainability programs and verify regenerative practices remotely. 

Step 1: Obtain field boundaries

Before querying for field practices, you’ll first need to source the field boundaries. Monitor API accepts field boundaries in GeoJSON format, with polygon or multiPolygon geometry objects.

"feature_collection": {
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {
"coordinates": [
[
[
[
-84.003914,
40.333411
],
[
-84.003874,
40.332533
],
[
-84.001319,
40.332512
],
[
-83.999221,
40.332527
],
[
-83.999265,
40.336911
],
[
-83.999274,
40.336991
],
[
-83.999379,
40.336994
],
[
-84.003959,
40.336751
],
[
-84.006094,
40.336645
],
[
-84.006047,
40.333394
],
[
-84.003914,
40.333411
]
]
]
],
"type": "MultiPolygon"
}
}
]
}

Step 2: Submit a Request for Field Practices

To make a request for agricultural practice data for a field, make a POST request to the /processes/monitor-fields-geojson/execution endpoint.

Request Body In the request body you’ll provide a feature-collection object with GeoJSON field boundaries, as well as a date range. Use the date range to specify the time window you’d like to receive field practice data for.

Pro tip: When querying practice data for multiple fields for the same date range, you can submit multiple field boundaries in one request. Each field boundary is represented as a feature object within the “features” array in the feature collection.

"feature_collection": {
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {
"coordinates": [
[]
],
"type": "Polygon"
}
},
{
"type": "Feature",
"geometry": {
"coordinates": [
[]
],
"type": "Polygon"
}
}

]
}

Monitor API runs an asynchronous process. You can optionally include callback URLS and header parameters to receive notifications when the process is complete and field data is ready to be retrieved. To do so, include a subscriber object in the request body. Alternatively, you can use the /job-status endpoint to get the status of the process, or poll the /results endpoint. Use the job_id from the response body of a successful request to check the status of the job or poll for results.

{
"inputs": {
"feature_collection": {
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {
"coordinates": [
[
[
[
-84.003914,
40.333411
],
[
-84.003874,
40.332533
],
[
-84.001319,
40.332512
],
[
-83.999221,
40.332527
],
[
-83.999265,
40.336911
],
[
-83.999274,
40.336991
],
[
-83.999379,
40.336994
],
[
-84.003959,
40.336751
],
[
-84.006094,
40.336645
],
[
-84.006047,
40.333394
],
[
-84.003914,
40.333411
]
]
]
],
"type": "MultiPolygon"
}
}
]
},
"start_date": "2017-01-01",
"end_date": "2017-12-31"
},
"outputs": {},
"response": "document",
"transmission_mode": "value",
"subscriber": {
"successUri": "string",
"successHeaders": {
"additionalProp1": "string",
"additionalProp2": "string"
},
"inProgressUri": "string",
"inProgressHeaders": {
"additionalProp1": "string",
"additionalProp2": "string"
},
"failedUri": "string",
"failedHeaders": {
"additionalProp1": "string",
"additionalProp2": "string"
}
}
}

Step 3: Retrieve Field Practice Data

Once the job for a field request is complete, you can make a GET request to the /results endpoint to retrieve practice data. Use the job_id returned from the original field request to specify which job to retrieve results for.

Field data includes practice information on commodity crops, cover crops and tillage practices, as well as field metadata and the specified date range.

Pro Tip: Store the boundary-id from the results response to use in subsequent data queries for the field. Once you have a boundary-id for a field, you can make subsequent requests for field practice data using the /monitor-fields-boundary-id endpoint instead of passing the field boundaries in GeoJSON format.

Field practice data is available via the /results endpoint for 30 days.