Automatiser Transept avec des déclencheurs webhook
En temps normal, un workflow s'exécute quand vous cliquez sur Lancer. Un déclencheur webhook remplace ce fonctionnement par une URL : dirigez n'importe quel système capable d'envoyer une requête HTTP vers cette adresse, et le workflow s'exécutera de lui-même.
Sur cette page
Comment passer un workflow sur un déclencheur webhook ?
Ouvrez un workflow enregistré dans le concepteur et regardez la carte de déclenchement en haut — celle qui indique Vous le lancez manuellement. Il s'agit d'un sélecteur. Manuel est l'option par défaut : c'est vous qui cliquez sur Lancer. Webhook attribue au workflow une URL privée vers laquelle un système externe envoie une requête POST, de sorte que l'exécution démarre d'elle-même. Un déclencheur appartient à un workflow enregistré ; enregistrez donc d'abord le workflow — l'option Webhook reste désactivée sur un brouillon non enregistré.
Comment obtenir et renouveler l'URL du webhook ?
Basculez la carte sur Webhook, définissez sur quoi porte l'exécution (ci-dessous) et enregistrez. Transept génère une URL secrète pour ce workflow spécifique et ne l'affiche qu'une seule fois — copiez-la à ce moment-là, car seul un hachage est stocké et l'URL complète ne pourra plus jamais être affichée. Le secret réside dans l'URL plutôt que dans un en-tête, car les systèmes d'envoi les plus simples ne peuvent pas configurer d'en-têtes ; traitez donc l'URL comme un mot de passe — quiconque la possède peut lancer l'exécution.
Si vous rouvrez la carte plus tard, vous verrez un préfixe masqué (whk_live_…) à la place de l'URL complète, ainsi qu'une action Renouveler. Le renouvellement génère une nouvelle URL et invalide l'ancienne dès que vous confirmez ; c'est ainsi que l'on révoque un lien qui a fuité. Vous pouvez aussi désactiver le déclencheur sans le supprimer, ou le supprimer purement et simplement. La carte indique la date de sa dernière exécution.
Sur quoi porte chaque exécution
Deux paramètres déterminent ce que le workflow traite lorsque l'URL est appelée :
- Cible — un document fixe que vous désignez (chaque déclenchement s'applique à ce document et à son groupe de langues), ou la page Notion indiquée dans la charge utile entrante (Transept fait le lien avec votre document et importe la page la première fois qu'il la détecte).
- Langues — toutes les versions linguistiques (par défaut ; l'exécution s'étend à toutes les langues de la cible sous forme d'exécution groupée), ou un seul document.
- Contenu mis à jour uniquement — activé par défaut, car une exécution automatisée ne doit retraiter que ce qui a changé depuis la dernière fois, plutôt que de retraduire tout le document à chaque déclenchement. Voir Exécuter uniquement ce qui a changé.
Déclenchement depuis une automatisation de base de données Notion
Une automatisation de base de données Notion peut appeler le déclencheur via son action Envoyer un webhook : dirigez l'action vers l'URL de déclenchement et, chaque fois que l'automatisation s'exécute, Transept lance le workflow sur la page à l'origine du déclenchement. Il y a deux points importants à connaître avant d'y avoir recours.
Premièrement, les automatisations Notion se déclenchent lors d'un changement de propriété (ou de la création d'une page), et non par la simple modification du contenu — ainsi, modifier le texte d'une page peut ne rien déclencher. La méthode la plus fiable consiste à utiliser une propriété de Statut surveillée par l'automatisation : changez-en la valeur (par exemple, en Prêt pour la traduction) et ce changement servira de signal.
Deuxièmement, un webhook Notion se contente de désigner la page — il n'en transmet jamais le contenu — Transept doit donc lire la page via votre connexion Notion, laquelle doit être autorisée à accéder à la base de données dans Notion. Ces deux étapes (connecter Notion, puis partager la base de données avec l'intégration) sont détaillées dans la section « Déclencheurs Notion : donner accès à Transept » de l'article Automatiser Transept avec l'API. Si vous omettez l'une ou l'autre, chaque déclenchement sera rejeté avec une erreur d'accès.
Comment le déclencher depuis Zapier, n8n ou un script ?
Tout système capable d'envoyer une requête HTTP POST peut activer le déclencheur — qu'il s'agisse d'une étape Zapier ou n8n, d'une tâche de CI ou d'un curl à la fin d'un build. Pour une cible de type document fixe, le corps de la requête n'a pas d'importance : un POST vide suffit. Seule une cible de type page Notion lit le corps pour identifier la page modifiée. Aucun en-tête Authorization n'est nécessaire — le secret est l'URL complète.
Que se passe-t-il lors du déclenchement
Par défaut, un déclenchement lance le workflow sur toutes les versions linguistiques et — avec l'option Contenu mis à jour uniquement activée — ne retraduit que les blocs dont la source a changé depuis la dernière exécution. Ainsi, une modification mineure ne consomme que quelques blocs au lieu du document entier. Les exécutions lancées de cette manière sont facturées au mot, exactement comme dans l'éditeur, et si votre solde est insuffisant, rien n'est envoyé ni facturé.
Une étape configurée pour attendre votre révision marque toujours un temps d'arrêt : le processus traduit jusqu'à ce point de contrôle puis s'interrompt. La langue s'affiche alors dans le panneau « Prêt pour révision » de l'éditeur pour validation — l'automatisation ne contourne jamais vos étapes de révision. Par ailleurs, lorsqu'une cible de type page Notion est illisible (souvent parce que la base de données n'a pas été partagée avec l'intégration), la carte du déclencheur fait remonter le dernier échec via une mention horodatée « impossible de lire la page Notion », vous permettant de comprendre pourquoi un déclenchement n'a pas abouti.
Le webhook peut-il transmettre le contenu lui-même ?
Oui. Définissez la cible du déclencheur sur « le corps de la requête est le contenu » et tout ce que vous envoyez par POST à l'URL devient le document : du Markdown brut, de l'HTML ou du texte brut (envoyez le Content-Type correspondant), ou un JSON tel que {"content": "…", "content_type": "markdown"}. Choisissez pour chaque déclencheur si chaque envoi crée un nouveau document ou met à jour un document fixe — une mise à jour réaligne le contenu afin que seuls les blocs modifiés soient retraduits. C'est ainsi qu'une plateforme d'e-mailing, une étape Zapier/n8n ou n'importe quel script transmet un modèle ou un article directement dans un workflow de traduction sans import manuel. Les envois répétés sont dédupliqués pendant 24 heures ; incluez un external_id dans le JSON (votre identifiant de message) pour un contrôle précis. Corps de message jusqu'à 10 Mo.
Un problème persiste ? Demandez à Literess dans l'application, ou écrivez à [email protected].