Skip to main content
PUT
/
api
/
v1
/
farms
/
{id}
/
fields
/
{fieldId}
curl -X PUT 'https://www.wiseyield.co/api/v1/farms/11111111.../fields/88888888...' \
  -H "Authorization: Bearer $WISEYIELD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "status": "preparing", "notes": "Tilled, ready for planting" }'
{
  "data": {
    "id": "88888888-9999-aaaa-bbbb-cccccccccccc",
    "farmId": "11111111-2222-3333-4444-555555555555",
    "name": "North Field",
    "status": "preparing",
    "notes": "Tilled, ready for planting",
    "updatedAt": "2026-05-17T17:05:00.000Z"
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.wiseyield.co/llms.txt

Use this file to discover all available pages before exploring further.

PUT https://www.wiseyield.co/api/v1/farms/{id}/fields/{fieldId}

Authentication

Requires a key with the fields:write scope.

Path parameters

id
string
required
Farm UUID.
fieldId
string
required
Field UUID.

Request body

All fields are optional. Only fields you include in the body are updated.
name
string
1–200 characters.
description
string
Up to 2,000 characters. Pass null to clear.
area
number | string
Positive number in the farm’s areaUnit.
boundaries
object
GeoJSON Polygon. Pass null to clear.
soilType
string
Up to 100 characters. Pass null to clear.
soilPh
number | string
Pass null to clear.
status
string
One of active, fallow, preparing, planted.
notes
string
Up to 5,000 characters. Pass null to clear.

Irrigation overrides (Blueprint §9.4)

These override the farm-wide irrigation defaults for this field.
irrigationFlowRatePerEmitter
number
Liters/hour per emitter, 0–100.
emittersPerPlant
integer
0–50.
dripLineSpacingMeters
number
0–20 meters.
customIrrigationSystem
string
One of drip, sprinkler, flood, pivot, manual, none.

Response

Returns the updated field wrapped under data.
curl -X PUT 'https://www.wiseyield.co/api/v1/farms/11111111.../fields/88888888...' \
  -H "Authorization: Bearer $WISEYIELD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "status": "preparing", "notes": "Tilled, ready for planting" }'
{
  "data": {
    "id": "88888888-9999-aaaa-bbbb-cccccccccccc",
    "farmId": "11111111-2222-3333-4444-555555555555",
    "name": "North Field",
    "status": "preparing",
    "notes": "Tilled, ready for planting",
    "updatedAt": "2026-05-17T17:05:00.000Z"
  }
}

Errors

StatusWhen
400 INVALID_ID{id} or {fieldId} is not a valid UUID
400 VALIDATION_ERRORBody validation failed
401Missing, malformed, expired, or revoked API key
403 INSUFFICIENT_SCOPEKey lacks fields:write scope
404 NOT_FOUNDFarm or field doesn’t exist, is soft-deleted, or belongs to another user
429 RATE_LIMIT_EXCEEDEDPer-user rate limit reached
5xxServer error