Passer au contenu principal
Un workflow automatise une réaction à vos données : un déclencheur plus une chaîne d’actions, exécutées par la plateforme données. Cette référence documente le modèle complet. Pour le guide orienté utilisateur, voir Étiquettes & automatisation → Workflows.

Définition de flux

Un workflow stocke une flowDefinition : un graphe de nœuds et d’arêtes.
{
  "nodes": [ { "id": "…", "type": "trigger", "position": { "x": 0, "y": 0 }, "data": { /* node data */ } } ],
  "edges": [ { "id": "…", "source": "<node id>", "target": "<node id>" } ]
}
ÉlémentFormat
Nœud{ id, type, position: { x, y }, data }data.nodeType est l’autorité (TRIGGER ou ACTION).
Arête{ id, source, target } — relie les ids des nœuds, définissant l’ordre d’exécution.
Les données data du nœud sont une union discriminée par nodeType / actionType :
  • DéclencheurnodeType: "TRIGGER" → voir Déclencheurs.
  • ActionnodeType: "ACTION" avec un actionType de CREATE_OR_GET_PLAN, ADD_ITEMS_TO_PLAN, CALL_WEBHOOK, ou SEND_EMAIL → voir Actions et Intégrations.

Enregistrement workflow

ChampSignification
nameNom affiché (requis).
descriptionOptionnel.
statusDRAFT · ACTIVE · PAUSED · ARCHIVED.
flowDefinitionLe graphe nœuds + arêtes.

Statut

DRAFT → ACTIVE ⇄ PAUSED → ARCHIVED
  • DRAFT — modifiable, non déclenchable.
  • ACTIVE — déclenchable ; seuls les workflows actifs s’exécutent.
  • PAUSED — temporairement absent d’accepter les nouvelles exécutions.
  • ARCHIVED — historique.

Modèle d’exécution

Une exécution démarre depuis le déclencheur (qui résout les entités appariées), puis suit les arêtes à travers les nœuds d’action dans l’ordre. Chaque nœud devient une étape avec son propre statut, ses entrées résolues et sa sortie — et la sortie d’un nœud peut alimenter les nœuds ultérieurs via interpolation. Voir Exécutions & exemples.

Règles de validation

Le générateur applique quelques invariants :
  • Exactement un nœud déclencheur par workflow.
  • Le planType d’un nœud ADD_ITEMS_TO_PLAN doit correspondre au CREATE_OR_GET_PLAN qu’il référence via sourcePlanNodeId.
  • sourcePlanNodeId doit pointer vers un nœud de création de plan existant.
  • Aucune arête circulaire.
  • Les pourcentages de remise sont limités à [0, 100].