Declare a CHANGE of equipment on the probe
/modules/{moduleId}/irrigation/installation Creates a new VERSION of the setup. The version covering effectiveFrom is closed on that date; those starting AFTER it are never touched — which is what makes it possible to document the past after the fact. Waterings of the probe (or of the parcel’s probes) left without a dose are then completed automatically; a dose already recorded is never rewritten. To fix a typo without lengthening the history, use PATCH /irrigation/installations/{versionId}.
Path parameters
-
moduleIdinteger required
Headers
-
Idempotency-KeystringReplays the same 2xx response (24 h)
Request body
-
systemstring requiredType of equipment. Determines the default wetted soil fraction (FAO-56 table 20):
drip0.35 ·micro_sprinkler0.60 · all others 1.00. -
emitterFlowLphnumberFlow rate of one emitter, in L/h (printed on the equipment).
-
emittersPerM2numberEmitters per m² = 1 ÷ (emitter spacing × lateral spacing, in m).
-
flowMmPerHnumberApplication rate in mm/h. IGNORED if
emitterFlowLphANDemittersPerM2are both provided — the geometry is the more precise entry, and letting the two diverge would produce millimetres nobody could account for. -
irrigatedAreaM2numberIrrigated area in m². Needed to convert a volume (m³) into mm.
-
fractionWettednumberWetted soil fraction (fw). NOT to be filled in under normal circumstances: the system default (FAO-56 table 20) applies. Reserved for atypical installations.
-
notesstring -
effectiveFromstring date-timeDate it TAKES EFFECT in the field. Absent = now, EXCEPT for the very first setup applicable to the target (no version for it nor, for a probe, for its parcel): it then applies from the very beginning (
validFrom= 1970-01-01T00:00:00Z), so that waterings already logged receive their dose. A past date documents the period back then: the version covering that date is closed at that instant, and later versions are left INTACT. The future is refused (EFFECTIVE_FROM_IN_FUTURE).
Response
Configuration after the write
-
moduleIdinteger -
parcelIdinteger nullable -
installationIrrigationInstallation nullableSetup EFFECTIVE today, after scope resolution.
null= no setup.Show 13 attributes Hide attributes
-
idinteger -
scopestringScope. A probe setup wins AS A WHOLE over its parcel’s — never field by field.
-
parcelIdinteger nullable -
moduleIdinteger nullable -
systemstringType of equipment. Determines the default wetted soil fraction (FAO-56 table 20):
drip0.35 ·micro_sprinkler0.60 · all others 1.00. -
flowMmPerHnumber nullableApplication rate in mm/h. Computed when the drip geometry is provided (
emitterFlowLph×emittersPerM2), otherwise entered directly — it is the manufacturer’s unit for sprinkler and pivot systems.null: a duration will not be convertible into mm. -
emitterFlowLphnumber nullableFlow rate of ONE emitter, in L/h. This is what is printed on the equipment.
-
emittersPerM2number nullableDensity of emitters per m². Nobody knows this figure off the top of their head: it follows from the spacings — 1 ÷ (emitter spacing × lateral spacing, in m), or (emitters per tree) ÷ (area per tree).
-
fractionWettednumberWetted soil fraction (fw, FAO-56 table 20), 0 < fw ≤ 1. Always filled in: the entered value, otherwise the system default. Not something to ask a farmer.
-
fractionWettedIsDefaultbooleantrue = comes from the system default, never entered.
-
irrigatedAreaM2number nullableIrrigated area in m². Required to convert a volume into mm.
-
validFromstring date-timeDate this version TAKES EFFECT in the field.
-
validTostring date-time nullableUpper bound, EXCLUDED.
null= current version.
-
-
defaultFractionWettednumber nullableWhat fw would be if it were not entered.
-
placementIrrigationPlacement nullablePosition of the probe relative to the emitter. ⚠️ It enters NO calculation and must not: it is an observation variable, meant to explain after the fact why a sensor stays silent (probe planted outside the wetted bulb).
Show 3 attributes Hide attributes
-
emitterDistanceCminteger nullableDistance to the nearest emitter, in cm. 0 is legitimate.
-
notesstring nullable -
setAtstring date-time
-
-
canGeneralizebooleanCan this probe’s setup be pushed up to the parcel?
-
hasParcelInstallationbooleanIs there a parcel setup to fall back on?
-
siblingOverridesintegerNumber of OTHER probes on the parcel carrying their own current setup — what
generalizewithdropSiblingswould overwrite. -
versionsarray of IrrigationInstallationVersionFull history applicable to this probe — its own versions AND its parcel’s, each tagged with its scope, most recent first.
Show 15 attributes Hide attributes
-
idinteger -
scopestringScope. A probe setup wins AS A WHOLE over its parcel’s — never field by field.
-
parcelIdinteger nullable -
moduleIdinteger nullable -
systemstringType of equipment. Determines the default wetted soil fraction (FAO-56 table 20):
drip0.35 ·micro_sprinkler0.60 · all others 1.00. -
flowMmPerHnumber nullableApplication rate in mm/h. Computed when the drip geometry is provided (
emitterFlowLph×emittersPerM2), otherwise entered directly — it is the manufacturer’s unit for sprinkler and pivot systems.null: a duration will not be convertible into mm. -
emitterFlowLphnumber nullableFlow rate of ONE emitter, in L/h. This is what is printed on the equipment.
-
emittersPerM2number nullableDensity of emitters per m². Nobody knows this figure off the top of their head: it follows from the spacings — 1 ÷ (emitter spacing × lateral spacing, in m), or (emitters per tree) ÷ (area per tree).
-
fractionWettednumberWetted soil fraction (fw, FAO-56 table 20), 0 < fw ≤ 1. Always filled in: the entered value, otherwise the system default. Not something to ask a farmer.
-
fractionWettedIsDefaultbooleantrue = comes from the system default, never entered.
-
irrigatedAreaM2number nullableIrrigated area in m². Required to convert a volume into mm.
-
validFromstring date-timeDate this version TAKES EFFECT in the field.
-
validTostring date-time nullableUpper bound, EXCLUDED.
null= current version. -
setAtstring date-timeDate it was ENTERED, distinct from
validFrom, which is the date it takes effect in the field. -
notesstring nullable
-
-
missingDosesobjectRecorded waterings whose dose could never be computed.
Show 3 attributes Hide attributes
-
countinteger -
withoutInstallationintegerThe share of them that no
recomputewill ever be able to complete: no setup version covers their date. The useful move is then to declare a retroactive setup. -
oldestWithoutInstallationstring date-time nullable
-
Errors
- 400
Entry refused
INVALID_SYSTEMINVALID_EMITTER_FLOWINVALID_EMITTER_DENSITYINVALID_FLOW_RATEINVALID_FRACTION_WETTEDINVALID_IRRIGATED_AREAINVALID_EFFECTIVE_FROMEFFECTIVE_FROM_IN_FUTUREINSTALLATION_VERSION_EXISTS_AT_DATEMODULE_NOT_OWNED - 401
Not authenticated
- 403
Insufficient scope/role, or outside your company