Skip to main content
POST
Process Field
Submit a field boundary to run the full ESA runoff pipeline. The endpoint:
  1. Resolves or creates the field by (provider_field_id, provider_id).
  2. Persists the boundary and runs county/state intersection.
  3. Detects intersecting PULAs.
  4. Retrieves USDA SSURGO soil data (dominant hydrologic group, average slope).
  5. Auto-applies field-level epa_runoff mitigation measures based on slope, county relief points, and soil hydrologic group.
  6. Optionally returns the full epa_runoff mitigation options tree with selection state for the field/year.
This endpoint is idempotent on (provider_field_id, provider_id) — resubmitting the same field updates the existing record rather than creating a duplicate, and previously-applied mitigation measures are not re-inserted.

Request Body

Required Fields

provider_id
string
required
Your internal provider identifier, assigned by AcreBlitz.
provider_field_id
string
required
Your internal field identifier. The (provider_field_id, provider_id) pair uniquely identifies a field across calls.
account_id
string
required
Your customer account identifier. Stored on the field record for downstream reporting.
field_name
string
required
Name of the field. Stored on the field record and displayed in compliance reports.
field_boundary
object
required
GeoJSON Feature with Polygon or MultiPolygon geometry in EPSG:4326 (WGS84).
Example

Optional Fields

year
integer
Year for the annual mitigation record. Defaults to the current calendar year.
include_mitigation_options
boolean
default:"false"
When true, the response includes the full epa_runoff mitigation options tree (categories → options → sub-options) with a selected flag on each sub-option indicating whether it is currently applied to the field for the given year, plus a total_points tally.

Response

success
boolean
required
Whether the pipeline completed end-to-end.
field_id
string
required
Internal AcreBlitz field UUID resolved from provider_field_id.
provider_field_id
string
required
Echo of the provider’s field identifier from the request.
soil_data
object
Soil analysis from USDA SSURGO. null if the soil step failed (the rest of the pipeline still runs).
counties
array
Counties intersecting the field. Each entry contains:
pulas
array
required
PULA IDs intersecting the field boundary.
mitigations_applied
array
required
Sorted list of epa_runoff sub_option_ids currently applied to the field for the given year. Includes any auto-applied measures from this call as well as any pre-existing measures.
mitigation_options
array
Full epa_runoff mitigation tree (only present when include_mitigation_options=true). An array of categories, each with nested options and sub-options.Each category contains:Each option contains:Each sub-option contains:
steps
object
required
Per-step status for the pipeline. Keys: county_state, pula_detection, soil_data, auto_mitigations, and (when requested) mitigation_options. Each value contains:
summary
object
required
Roll-up counters for the call.

Examples

cURL
The mitigation_options array contains the full epa_runoff tree (6 categories, ~30 options, ~50+ sub-options). Each sub-option carries a selected flag — true if its id appears in mitigations_applied. The slice below shows just the County-based mitigation relief option to illustrate the structure; your response will include all categories.
When total_points in summary is computed (only when include_mitigation_options=true), it is the sum of points across every sub-option where selected=true.

Auto-Applied Mitigation Logic

The auto_mitigations step inspects the field’s soil, slope, and county data and inserts EPA-approved field-level credits into the annual runoff mitigation record: When a county has multiple mitigation_points values, the lowest value is used. Existing measures are never duplicated — re-running the endpoint on the same field is safe.

Notes

Idempotency: The (provider_field_id, provider_id) pair makes the endpoint idempotent. Resubmitting the same field updates the existing record and replaces its boundary, but previously-applied mitigation measures are preserved.
Fail-forward soil step: If USDA SSURGO is unreachable, soil_data is null and the soil_data step is marked failed, but the rest of the pipeline still runs. Soil-dependent auto-credits (sub-options 17, 27, 28) are simply skipped in that case.
Selection state: Use mitigations_applied for a flat list of currently-applied sub-option IDs, or include_mitigation_options=true to see the full tree with each sub-option’s selected flag. The selection set is the same in both views.
GeoJSON Format: The field_boundary must be a GeoJSON Feature with a Polygon or MultiPolygon geometry in EPSG:4326 (WGS84). MultiPolygon is supported for fields with excluded areas or multiple sections.