Référence de l’API

Règles d’automatisation

Des règles qui valident automatiquement les documents correspondants, ou les envoient toujours en validation.

En savoir plus sur cette ressource

Des dérogations conditionnelles qui s’ajoutent aux paramètres d’autonomie de Règlement, par processus (purchase_order, invoice_payment) : une règle fait correspondre les documents par compte fournisseur (ou, pour un fournisseur sans compte Pleaxy, par nom) et par montant, et soit valide automatiquement un document correspondant sans intervention humaine, soit impose la chaîne de validation complète. Une règle de validation automatique nécessite le plan Autonomous et ne s’applique jamais à une facture que l’autonomie ne pourrait pas non plus valider (saisie par un acheteur, dans une autre devise, ou non rapprochée d’une facture AWS émise), ni à un bon de commande qui dépasse un plafond de dépenses. Les règles sont évaluées dans l’ordre, et la première règle activée qui correspond l’emporte.

Obtenir les règles d’automatisation

Renvoie les règles d’automatisation d’un processus.

GET/v1/workspaces/{regionId}/automation-rules/{process}

Paramètres

  • process"purchase_order" | "invoice_payment"Obligatoire

    Le processus dont il faut récupérer les règles.

Retour

200 OK avec l’objet présenté dans la réponse.

Plus de détails

Renvoie les règles d’automatisation d’un processus par ordre de priorité, ou { process, rules: [] } si aucune n’est configurée, et indique si le plan de l’espace de travail permet l’exécution des règles de validation automatique.

Champs de la réponse

  • autoApproveAllowedboolean

    Indique si le plan autorise l’autonomie (Autonomous ou Enterprise). Lorsque false, les règles avec autoApprove true sont conservées mais ignorées lors de l’évaluation des commandes et factures, de sorte qu’une règle placée après elles peut encore correspondre ; passer à un plan supérieur les réactive. Calculé à chaque lecture, jamais stocké.

Erreurs

  • 401 Unauthorized - Aucun identifiant n’a été fourni, ou la valeur du jeton Bearer / de X-Api-Key est manquante, invalide, expirée ou révoquée.
  • 403 Forbidden - Le jeton Bearer ou la clé API de l’appelant ne donne pas accès à cet espace de travail (regionId), ou n’a pas le rôle requis.
GET /v1/workspaces/{regionId}/automation-rules/{process}
Requête
curl "$PLEAXY_API_BASE_URL/v1/workspaces/{regionId}/automation-rules/{process}" \
  -H "X-Api-Key: $PLEAXY_API_KEY"
Réponse · 200 OK
{
   "process": "purchase_order" | "invoice_payment",
   "rules": [
      { "id": "string", "label": "string", "conditions": { "supplierWorkspaceId": "string", "supplierContains": "string", "maxAmount": number }, "autoApprove": boolean, "enabled": boolean, "createdAt": "string" }
   ],
   "autoApproveAllowed": boolean
}

Mettre à jour les règles d’automatisation

Remplace les règles d’automatisation d’un processus.

PATCH/v1/workspaces/{regionId}/automation-rules/{process}

Paramètres

  • process"purchase_order" | "invoice_payment"Obligatoire

    Le processus dont il faut remplacer les règles.

Corps

  • rulesarrayObligatoire

    Chaque élément { id?, label, conditions: { supplierWorkspaceId?, supplierContains?, maxAmount? }, autoApprove, enabled }. supplierWorkspaceId est le compte fournisseur auquel s’applique la règle (son ID d’espace de travail, par exemple reg_….supplier) et doit être l’un de vos fournisseurs connectés ; les fournisseurs sont identifiés par compte, jamais par nom. supplierContains est hérité et ne correspond qu’aux fournisseurs sans compte Pleaxy. autoApprove true supprime la validation pour un document correspondant ; false impose la chaîne complète.

Retour

200 OK avec l’objet présenté dans la réponse.

Plus de détails

Remplace les règles d’automatisation d’un processus, par ordre de priorité. Une règle qui conserve son id conserve son createdAt.

Modifié le 2026-09-27, correctif de sécurité au sein de la v1 : session connectée uniquement, pour tous les processus. Une règle de validation automatique valide des bons de commande ou des factures sans intervention humaine, donc une clé API reçoit 403 HUMAN_SESSION_REQUIRED quel que soit son rôle achats. La lecture des règles accepte toujours une clé API acheteur.

Erreurs

  • 400 Bad Request - AUTONOMY_PLAN_REQUIRED : une nouvelle règle, ou la modification d’une règle existante, définit autoApprove true sur un plan sans autonomie (« Auto-approve rules need the Autonomous plan - the {Plan} plan allows rules that require approval only. Upgrade to Autonomous to use auto-approve rules. »). Rien n’est enregistré. Une règle déjà enregistrée avec autoApprove true peut être renvoyée avec ses conditions inchangées (son libellé et son interrupteur d’activation peuvent changer), pour que le reste de la liste reste modifiable ; modifier ses conditions est refusé.
  • 400 Bad Request - DUPLICATE_RULE_ID : la liste contient plusieurs fois le même id de règle (« Rule '{id}' is in the list more than once. Send each rule once. »). Rien n’est enregistré.
  • 403 Forbidden - Code HUMAN_SESSION_REQUIRED. L’appelant n’est pas une personne connectée (par exemple, une clé API), quel que soit le processus (« Automation rules can only be changed by a signed-in person. Change them in Pleaxy. »). Rien n’est enregistré.
  • 401 Unauthorized - Aucun identifiant n’a été fourni, ou la valeur du jeton Bearer / de X-Api-Key est manquante, invalide, expirée ou révoquée.
  • 403 Forbidden - Le jeton Bearer ou la clé API de l’appelant ne donne pas accès à cet espace de travail (regionId), ou n’a pas le rôle requis.
PATCH /v1/workspaces/{regionId}/automation-rules/{process}
Requête
curl -X PATCH "$PLEAXY_API_BASE_URL/v1/workspaces/{regionId}/automation-rules/{process}" \
  -H "X-Api-Key: $PLEAXY_API_KEY" \
  -H "Content-Type: application/json" \
  -d @body.json
body.json
{
   "rules": [
      { "id": "string", "label": "string", "conditions": { "supplierWorkspaceId": "string", "supplierContains": "string", "maxAmount": number }, "autoApprove": boolean, "enabled": boolean }
   ]
}
Réponse · 200 OK
{
   "process": "purchase_order" | "invoice_payment",
   "rules": [
      { "id": "string", "label": "string", "conditions": { "supplierWorkspaceId": "string", "supplierContains": "string", "maxAmount": number }, "autoApprove": boolean, "enabled": boolean, "createdAt": "string" }
   ]
}
Nous contacter