Skip to main content
POST
Refresh an application assessment with current wind and application setup.

Request

string
required
Opaque application-event reference from a previous ESA check.
number
required
Wind direction in degrees, greater than or equal to 0 and less than 360.
number
required
Wind speed, 0–80 mph.
number
Optional observed temperature, -100–200 degrees Fahrenheit; nullable.
number
Optional observed humidity, 0–100; nullable.
string
Optional supported method; otherwise use the saved method.
string
Optional supported category/code; nullable. An omitted value uses the saved value; explicit null clears it.
string
Optional low or high; nullable. An omitted value uses the saved value; explicit null clears it.
number
Optional positive spray gallons per acre; nullable. An omitted value uses the saved value; explicit null clears it.
object[]
Up to 100 rate changes. Each requires product_index (zero-based), epa_number, nonnegative rate, and nonempty rate_unit; optional rate_unit_state and positive row_spacing_inches. The index and registration must match the saved product.
string
none, buffer, treatable, or both; defaults to none.

Assessment behavior

See Understanding compliance determinations for runoff and drift scoring, setup violations, overall status, and when to refresh a result. The endpoint resolves your saved application, applies current weather/setup inputs and rate changes, and returns a refreshed check plus application_time. Weather and the assessment are saved for that application. It checks the application revision; conflicting changes return 409. application_time includes submitted inputs, effective rates, reductions, manual mitigation claims, feature scope, feature counts, per-edge buffers, and product-specific buffer details. Requested field-boundary output is returned under application_time.geometry and is not retained in the saved assessment snapshot. Read compliance.drift.status for drift and compliance.status for the overall application assessment. application_time.drift_status repeats the drift result; application_time.status repeats the overall result. Runoff shortfalls and unresolved PULA restrictions can prevent an overall pass even when drift is met. For an application-time assessment, compliance.drift.scope is application_setup_and_treatable_area. requires_buffer and has_treatable_area describe the calculated result; both are null when setup or rule resolution prevents calculation. A met result can have requires_buffer: true. It assesses your submitted setup and the calculated area; it does not certify where spraying actually occurred. Use geometry: "both" to receive the buffer and treatable area together. geometry: "none" only omits the field-boundary output; it still performs the calculation and returns the same status. If setup is invalid or required rules are unresolved, requested output conservatively marks the entire field as buffer with treatable: null. When the calculated buffer consumes the whole field, drift returns not_met with NO_TREATABLE_AREA. A successful calculation clears the generic DRIFT_CONDITIONS_UNVERIFIED issue. Specific issues remain: unknown products, missing required droplet/boom inputs, unresolved rate/wind tiers, unsupported omni-directional or downslope placement, and unverified manual practices prevent a drift pass. Rate-specific wind tiers take precedence over method-level tiers. Wind outside configured tiers returns WIND_SPEED_UNRESOLVED; the API does not infer an unconfigured wind limit. Temperature and humidity are recorded inputs, not currently evaluated label thresholds. Protected features are read for each request so new nearby features can affect the result. Recompute after changing application conditions or mitigation selections. Application compliance and group compliance expose the saved drift.last_computation.drift_status; those GETs do not run a new placement calculation. Older snapshots have a null drift_status until recomputed. The response also includes the refreshed products[] with each product’s PULA limitations and the summary counts, in the same shape as an ESA check. Any matching limitation adds LIMITATIONS_REVIEW_REQUIRED, which keeps the overall status indeterminate even when drift is met. The example shows selected response fields for an application with a remaining buffer, a treatable area, satisfied runoff, and no PULA limitations or other unresolved restrictions.

Errors

Endpoint-specific errors include 404 APPLICATION_NOT_FOUND; 422 NO_FIELD_GEOMETRY, PRODUCT_MISMATCH, INVALID_APPLICATION, or UNSUPPORTED_APPLICATION_METHOD; and 409 DUPLICATE_FIELD, FIELD_OWNERSHIP_CONFLICT, DUPLICATE_APPLICATION, APPLICATION_FIELD_CONFLICT, PROCESSING_CONFLICT, FIELD_CHANGED, or APPLICATION_CHANGED. Signed portal setup can return 503 PORTAL_SAS_UNCONFIGURED. See assessment issues for unresolved conditions returned with HTTP 200. All routes can also return authentication, validation, rate-limit, and dependency errors. Use the error catalog and examples to choose a retry or correction. Keep X-Request-ID when present.