Un état Wait suspend l'exécution d'un flux pendant une durée spécifiée en secondes, puis reprend à partir de l'état suivant. Utilisez-le pour introduire des délais entre les états, par exemple avant de réessayer une opération ou pour espacer les appels API.
Important
La durée maximale de la pause dépend du mode du flux :
Standard mode : 1 à 300 secondes
Express mode : 1 à 20 secondes
Attributs
| Attribut | Type | Obligatoire | Description |
|---|---|---|---|
| Type | string | Oui | Le type d'état. Définissez sur Wait. |
| Name | string | Oui | Le nom de l'état. |
| Seconds | int | Oui | Durée de la pause en secondes. Valeurs valides : 1 à 300 (Standard mode) ou 1 à 20 (Express mode). Pour définir la valeur dynamiquement, utilisez une expression (voir Définir la durée d'attente dynamiquement). |
| Description | string | Non | Description de l'état. |
| Next | string | Non | État à exécuter après celui-ci. Non requis si End est défini sur true. |
| End | bool | Non | Marque cet état comme l'état terminal de la portée actuelle. |
| InputConstructor | map[string]any | Non | Constructeur d'entrée. Pour plus de détails, consultez la section InputConstructor dans Entrées et sorties. |
| OutputConstructor | map[string]any | Non | Constructeur de sortie. Pour plus de détails, consultez la section OutputConstructor dans Entrées et sorties. |
Exemples
Attendre un nombre fixe de secondes
Le flux suivant marque une pause de 12 secondes avant de se terminer :
Type: StateMachine
Name: my-wkfl
SpecVersion: v1
StartAt: Wait1
States:
- Type: Wait
Name: Wait1
Seconds: 12
End: true
Définir la durée d'attente dynamiquement
Pour déterminer la durée de la pause au moment de l'exécution, ajoutez le suffixe .$ au champ Seconds afin de lire la valeur depuis l'entrée du flux.
Type: StateMachine
Name: my-wkfl
SpecVersion: v1
StartAt: DynamicWait
States:
- Type: Wait
Name: DynamicWait
Seconds.$: $Input.timeout
End: true
Dans cet exemple, Seconds.$: $Input.timeout lit la valeur timeout depuis l'entrée du flux et l'utilise comme durée de pause en secondes.