Webhook : Réception des soumissions de formulaires pour les scripts personnalisés

Utilisez les webhooks, un système de notifications automatisées, pour recevoir les soumissions de formulaires à des scripts personnalisés. Les données capturées vous seront transmises par POST.
Pour activer le Webhook, allez dans Paramètres du site → Formulaires → Webhook.
Saisissez l'adresse de votre script. S'il est nécessaire d'envoyer des cookies, cochez la case. Enregistrez les modifications.
Note: Le lien vers le script doit être disponible et le script doit répondre dans les cinq secondes. Dans le cas contraire, les données ne seront pas envoyées et le système effectuera deux nouvelles tentatives d'envoi, à raison d'une par minute.
Note: votre script doit utiliser le protocole sécurisé HTTPS.
Allez sur la page et cochez la case "WEBHOOK" dans le panneau Contenu du bloc de formulaire.

Cliquez sur "Enregistrer et fermer", puis publiez la page. Lorsque quelqu'un remplit le formulaire, les données sont envoyées via POST à l'adresse du script que vous avez spécifiée dans les paramètres du site.
Un exemple de script pour envoyer les soumissions à votre adresse électronique
Placez le script sur votre serveur et ajoutez son adresse aux paramètres Webhook. Vous commencerez alors à recevoir les données capturées par courrier électronique.
<?php

header('Access-Control-Allow-Origin: *');

$headers = "From: from@webhookservesite.com";​ 
/* change this sample email address to the valid email that you would like to receive letters from  */
​
 $message = print_r($_POST,true);
 @mail('to@mail.com', 'Tilda TEST', $message, $headers);
/* change this sample email address to the valid email that you would like to receive submissions to  */

echo"ok";

?>
Transfert de données sur les produits
Dans les paramètres du service Webhook, vous trouverez des paramètres supplémentaires pour le transfert des données produit vers le script : Transfert des données produit dans l'ordre des tableaux et transfert de l'identifiant externe (code externe) à partir d'autres systèmes.
La case à cocher Externalid n'est disponible que si vous sélectionnez l'option de transfert des données de produits sous forme de tableaux. Si vous la cochez, l'identifiant externe du produit dans le catalogue est transféré pour connecter ce produit au système externe.
Comment obtenir plus d'informations et récupérer des variables en PHP
Pour récupérer les données de tous les champs et valeurs sans modification, vous devez accéder à la variable $_POST. $_POST est un tableau associatif, par exemple :
Email=test%40email.com 
Nom=test+nom 
Téléphone=0123456789 
Commentaires=exemple+comment 
Selectbox=rouge 
Case à cocher=oui 
Date=25-03-2017 
Heure=17%3A59 
Quantité=124 
Url=site.com
Pour récupérer des informations sur un champ particulier, vous devez accéder à l'élément de tableau par son nom, par exemple $_POST["Date"], où "Date" est un nom de variable qui a été spécifié dans le champ du formulaire.

Si vous souhaitez ajouter vos commentaires aux champs, vous pouvez utiliser cet exemple pour le faire :
<?php

header('Access-Control-Allow-Origin: *');

$headers = "From: from@webhookservesite.ru";​

$message = "";

foreach($_POST as $key => $value) {
  if($key == "Date") {
    $message .= "Hotel check out date"; 
  } else { 
    $message .= $key; 
  }
  $message .= ": " . $value . "\n"; 
} 

$message = ​print_r($message, true);

@mail('to@mail.com', 'Tilda TEST', $message, $headers);

echo "ok";

?> 
Si vous ne modifiez pas les noms de variables des champs, vous récupérerez les informations relatives aux noms de champs dont les premières lettres sont en majuscules.

Si vous avez défini un nom de variable différent pour un champ particulier, les informations que vous récupérerez ressembleront à ceci :
champ de nom personnalisé=jaune
Outre les données des champs du formulaire, vous pouvez également récupérer les données suivantes :
tranid=467251%3A8442970
formid=form48844953
où "tranid" fait référence à l'ID du lead (un numéro de lead unique) de la section "Leads" et "formid" fait référence à l'ID du bloc (le numéro unique du bloc qui a été utilisé pour la soumission des données).

Certains caractères seront remplacés avant que les réponses au formulaire ne soient transférées, par exemple, le signe "@" sera remplacé par "%40", le signe deux-points (" :") sera remplacé par "%3a". Pour décoder ces caractères, vous pouvez utiliser la fonction urldecode.(https://www.php.net/manual/en/function.urldecode.php).

Comment récupérer l'adresse à partir de laquelle la réponse au formulaire a été soumise

Vous pouvez accéder à la variable $_SERVER["HTTP_REFERER"] pour récupérer l'adresse à partir de laquelle la réponse au formulaire a été soumise via un webhook.

Comment obtenir un fichier de cookies (facultatif)

Cochez la case "Envoyer des cookies" dans les paramètres du webhook si vous voulez que le formulaire inclue le champ COOKIES chaque fois qu'il y a un fichier de cookies, par exemple :
COOKIES=_ga%3DGA1.2.1861016115.1519204131%3B+_ym_uid%3D2021810468765220932 
Veuillez noter que vous ne recevrez aucun fichier cookie avec la réponse au formulaire si l'utilisateur n'a jamais visité votre site web auparavant. Si l'utilisateur a visité une page web avec une balise UTM et qu'il est revenu sur le site web au plus tard 30 jours après, le fichier cookie comprendra des paramètres UTM, par exemple :
COOKIES=TILDAUTM%3Dutm_source%253Dyandex%257C%257C%257Cutm_medium%253Dcpc%257C%257C%257Cutm_campaign%253Dpromo%257C%257C%257Cutm_content%253Dblocktext%257C%257C%257Cutm_term%253Dpoisk%257C%257C%257C 
Vous pouvez utiliser les services suivants pour vérifier à quoi ressemblent les données des champs provenant des réponses au formulaire :
http://requestcatcher.com
https://webhook.site
Remarque : malheureusement, l'équipe d'assistance Tilda ne répond pas aux questions relatives aux codes personnalisés.
Fabriqué le
Tilda