Alertes instantanées sur les automatisations
POST
https://app.sendapp.ai/api/automations/hooks
Abonne l'une de vos adresses aux exécutions d'une automatisation, de tout type : dès qu'elle démarre, se termine ou échoue, SendApp envoie un POST avec l'automatisation, l'exécution, le contact et les données de l'événement. C'est ce qu'utilise le déclencheur instantané de Zapier. La liste de toutes les automatisations se lit avec
GET /api/automations?all=1 ; GET /api/automations/hooks affiche les abonnements, GET /api/automations/hooks/sample un exemple, DELETE /api/automations/hooks/{id} en supprime un. Chaque envoi comporte l'en-tête
X-SendApp-Signature: t=<unix>,v1=<hmac> : HMAC-SHA256 de t.corps avec le secret, que vous ne recevez qu'une seule fois, à la création de l'abonnement.Si votre adresse répond 410, l'abonnement est supprimé. Avec 429, 5xx ou sans réponse, l'envoi est retenté jusqu'à 4 fois.
Si votre adresse échoue sans arrêt (20 envois d'affilée), l'abonnement est mis en pause : pendant cette période, les événements ne sont ni envoyés ni récupérés ensuite. SendApp réessaie environ une fois par heure avec l'événement du moment, et la première réponse positive relance l'abonnement. Il repart aussi si vous le recréez. S'il échoue encore pendant environ une semaine de tentatives, il est supprimé. Au-delà de 500 envois en attente par abonnement, ou 1000 par compte, les nouveaux sont ignorés. Votre adresse doit répondre sous 4 secondes, sinon l'envoi compte comme échoué. Le champ
paused de l'abonnement indique s'il est en pause, et nous vous prévenons par e-mail une fois par pause.run.reason est un code fixe, jamais un texte : opted_out, app_off, timeout, step_failed, skipped ou vide.Les liens
order_status_url et tracking_url peuvent ouvrir des données du destinataire sans connexion : traitez-les comme confidentiels.Si la connexion avec laquelle vous avez créé l'abonnement expire, les envois sont mis en pause et les événements de la période ne sont pas récupérés : nous vous prévenons une seule fois, dans le panneau et par e-mail. Reconnectez-la pour les relancer.
Les tests de l'automatisation et les exécutions ignorées par ses contrôles (anti-répétition, horaires d'envoi) n'envoient rien.
Vous recevez les données personnelles du contact dans votre outil : vous en restez responsable et devez respecter le statut
opted_out. Un contact exclu ne bloque pas l'envoi : contact.id est la clé à utiliser pour retrouver le contact via les API. Le corps indique toujours contact.opted_out et contact.marketing_consent, et run.skipped_for_opt_out est vrai si une étape ou l'exécution a été ignorée pour cause d'exclusion. Il ne contient aucun texte de conversation.Un e-mail en échec peut envoyer à la fois
run_completed et run_failed pour la même exécution : l'étape qui met l'e-mail en file d'attente clôt l'exécution et, si l'e-mail échoue ensuite, l'exécution passe en échec.L'abonnement s'interrompt si vous révoquez la connexion ou la clé API avec laquelle il a été créé. Les envois s'arrêtent aussi si le compte est suspendu, si le forfait a expiré ou sans accès à l'API.
Paramètres
5 · 1 obligatoires
url
obligatoire
Adresse https publique.
events
facultatif
Un ou plusieurs parmi
run_started, run_completed, run_failed. Par défaut : run_started.
automation_id
facultatif
Vide = toutes les automatisations du compte.
label
facultatif
Un nom pour le reconnaître.
include_event_data
facultatif
Inclut les données de l'événement qui a démarré la règle, dans
data.hook_data, ainsi que data.payment_link et data.deal_name. Désactivé par défaut : dans ce cas, ces champs n'apparaissent pas. Activé, les identifiants et les champs de texte libre connus (body, message, comment, note, description, ticket, assignee, reason) sont retirés, y compris imbriqués. Il peut contenir des données personnelles et d'autres données des systèmes connectés, sous votre responsabilité. Avec le même paramètre, GET /api/automations/hooks/sample affiche un exemple comprenant ces champs.
Besoin d'aide pour l'intégration ? info@sendapp.live