Modifier un programme
/irrigation/schedules/{scheduleId} Corps identique à la création. Ne régénère que les occurrences À VENIR, non détachées : le passé est un journal. Déplacer la cible exige d’être habilité sur l’ancienne ET la nouvelle.
Paramètres de chemin
-
scheduleIdinteger obligatoire
En-têtes
-
Idempotency-KeystringRejoue la même réponse 2xx (24 h)
Corps de la requête
-
targetModuleIdintegerCible sonde. Exclusif de
targetParcelId. -
targetParcelIdintegerCible parcelle. Exclusif de
targetModuleId. -
labelstring -
freqstring obligatoire -
intervalDaysintegerEn
daily: tous les N jours. Défaut 1. -
weekdaystableau d’integerEn
weekly: 1 = lundi … 7 = dimanche. Au moins un. -
startTimestableau de string obligatoireHeures LOCALES (
HH:MM), dédupliquées et triées. -
timezonestring obligatoireFuseau IANA. Obligatoire, et jamais UTC — sinon l’heure dérive au changement d’heure.
-
startsOnstring date obligatoire -
endsOnstring date -
confirmationPolicystring -
isActiveboolean -
inputModestring obligatoireComment l’apport est déclaré.
durationn’exige AUCUNE configuration (c’est le mode de repli universel) mais ne produit une dose que si le débit est connu ;depth_mmest pris tel quel ;volume_m3exige la surface irriguée. -
durationMinintegerDurée en minutes. Alternative à
endedAt— une seule des deux est stockée. -
inputDepthMmnumberHauteur d’eau en mm. Requise en mode
depth_mm, et alors reprise telle quelle. -
inputVolumeM3numberVolume en m³. Requis en mode
volume_m3.
Réponse
Programme modifié
-
idinteger -
targetParcelIdinteger peut être null -
targetModuleIdinteger peut être null -
labelstring peut être null -
freqstring -
intervalDaysinteger peut être nullEn
daily: tous les N jours (1–365).nullenweekly. -
weekdaystableau d’integer peut être nullEn
weekly: jours retenus, 1 = lundi … 7 = dimanche.nullou vide endaily. -
startTimestableau de stringHeures LOCALES de déclenchement (
HH:MM), 1 à 12. Un tableau, pas une valeur : l’irrigation automatique tourne couramment matin ET soir. -
timezonestringFuseau IANA, obligatoire et jamais UTC : 06:00 doit rester 06:00 chez le client de part et d’autre du changement d’heure.
-
inputModestringComment l’apport est déclaré.
durationn’exige AUCUNE configuration (c’est le mode de repli universel) mais ne produit une dose que si le débit est connu ;depth_mmest pris tel quel ;volume_m3exige la surface irriguée. -
durationMininteger peut être null -
inputDepthMmnumber peut être null -
inputVolumeM3number peut être null -
startsOnstring date -
endsOnstring date peut être null -
confirmationPolicystringauto(défaut) : les occurrences passées basculent seules endone, avecverifiedAtànull— on distingue donc « le programme dit que c’est arrosé » de « quelqu’un l’a vérifié ».manual: elles restentplannedjusqu’à confirmation. -
isActiveboolean -
materializedUntilstring date-time peut être nullJusqu’où les occurrences ont été produites.
Erreurs
- 400
Saisie refusée
INVALID_INPUT_MODEINVALID_DURATIONINVALID_ENDED_ATENDED_BEFORE_STARTEDINVALID_DEPTHINVALID_VOLUMEMISSING_DURATIONMISSING_DEPTHMISSING_VOLUMEINVALID_TARGETINVALID_FREQINVALID_INTERVALINVALID_WEEKDAYSINVALID_START_TIMESINVALID_TIMEZONEINVALID_STARTS_ONINVALID_ENDS_ONINVALID_CONFIRMATION_POLICY - 401
Non authentifié
- 403
Scope/rôle insuffisant ou hors société
- 404
Programme introuvable
SCHEDULE_NOT_FOUND