E-mails & webhooks de form
Quand un form est soumis, trois choses peuvent se produire en plus du stockage de la réponse : un e-mail de confirmation à l'expéditeur, un e-mail de notification à quelqu'un dans l'organisation, et un webhook vers n'importe quel système externe. Chacun se configure sur le form et les trois peuvent coexister.
E-mail de confirmation (à l'expéditeur)
- Activation en désignant le champ qui contient l'adresse e-mail de l'expéditeur (le reply-to field). Avec cela en place (plus un SMTP fonctionnel sous Settings → Email), chaque expéditeur reçoit une copie de ses propres réponses.
- Le sujet et le nom de l'expéditeur sont par form. L'adresse de reply-to est validée et nettoyée des sauts de ligne avant usage (empêchant l'injection d'en-têtes SMTP via une réponse « email » forgée).
- L'envoi se fait en arrière-plan après l'acceptation de la soumission ; le visiteur n'attend pas le saut de messagerie.
E-mail de notification admin
- Une ou plusieurs adresses de l'organisation reçoivent le contenu de la soumission ; le message inclut la valeur de chaque champ visible, mise en forme (les checkbox lists et les adresses rendues lisiblement).
- L'adresse IP d'origine peut être incluse comme ligne dans cet e-mail (commutateur par form, activé par défaut) ou omise ; notez qu'elle est aussi supprimée lorsque les règles du form/du stockage d'IP empêchent l'enregistrement des IP.
- La notification passe par les mêmes réglages SMTP ; les adresses sont validées à l'enregistrement.
Webhooks par form
Chaque form peut aussi POSTer (ou PUT/PATCH) ses soumissions vers un système externe (un CRM, un pipeline, un canal de bot) :
- URL d'endpoint + secret de signature: avec un secret défini, la requête porte un en-tête
X-Chinaski-Signature: sha256=…(HMAC du corps de la requête) pour que les récepteurs puissent vérifier l'authenticité. - Méthode, en-têtes et modèle de corps personnalisés: le corps par défaut est un JSON contenant les réponses ; un modèle de corps personnalisé avec des placeholders
{{field_name}}peut façonner le payload pour une API cible, et des en-têtes personnalisés clé : valeur (un par ligne) accompagnent la requête. - Les réponses webhook sont enregistrées dans le journal de livraison avec des tentatives de relance (backoff de 1/10/60 minutes, trois tentatives) ; la même mécanique de livraison que les webhooks au niveau du site, consultables/relançables dans l'admin.
L'avertissement air-gap
Les e-mails et les webhooks partent vers l'extérieur. Avec le mode air-gap activé, les forms acceptent et stockent toujours les soumissions, mais les e-mails de confirmation, les notifications admin et les appels webhook sont tous ignorés. La révision locale dans l'admin montre toujours chaque réponse.