Implémentation

Schéma POST

La requête POST envoyée au webhook est au format JSON avec les valeurs suivantes : schéma:

Charge utile proto de webhook

// Represent user lead data for single column
message UserLeadColumnData {
  // Human-readable text of the field type (e.g.: Full Name,  What is your
  // preferred dealership?). This field might not always be populated.
  optional string column_name = 1;

  // Column value based on column type
  oneof column_value {
    string string_value = 2;
  }
  // Column id. Populated for all types of fields. (e.g.: FULL_NAME)
  optional string column_id = 3;
}

// Message to construct webhook JSON payload
message WebhookLead {
  // Unique id to represent lead
  optional string lead_id = 1;
  // User inputted data per column
  repeated UserLeadColumnData user_column_data = 2;
  // API version
  optional string api_version = 3;
  // Form id to which lead belonged to.
  optional int64 form_id = 4;
  // Campaign id that the lead form is associated with
  optional int64 campaign_id = 5;
  // Key to be used by advertiser to verify the request
  // is from Google.
  optional string google_key = 6;
  // Denotes if the lead is a test lead.
  optional bool is_test = 7;
  // Click ID for the lead submission.
  optional string gcl_id = 8;
  // Adgroup id which generated the lead.
  optional int64 adgroup_id = 9;
  // Creative id which generated the lead.
  optional int64 creative_id = 10;
}

Description du champ

Champ Description
lead_id Chaîne unique identifiant un prospect donné.

Recommandation de gestion:utilisez cette option pour dédupliquer les prospects qui sont reçues. Il sera unique pour tous les formulaires. Lors du signalement liés à un prospect spécifique, cet identifiant est obligatoire.

api_version Version de l'API à laquelle ce schéma de prospect appartient. Il sera utilisé lorsque vers un nouveau schéma, et peuvent être ignorées pour le moment.
form_id ID unique pour chaque formulaire configuré dans Google Ads. Le produit actuel permet l'association d'un formulaire au niveau de la campagne (et non au niveau d'un groupe d'annonces ou d'une annonce, niveaux).

Conséquences:les prospects ne peuvent être répartis qu'au niveau de form_id (au niveau de la campagne).

Les clients doivent utiliser un entier de 8 octets pour traiter la requête.

campaign_id ID de la campagne Google Ads ou de l'élément de campagne (Display &Video 360) de la formulaire pour prospects joint.

Les clients doivent utiliser un entier de 8 octets pour traiter la requête.

adgroup_id L'ID du groupe d'annonces Google Ads permet de distinguer les groupes d'annonces le groupe d'annonces de la campagne. (Disponible pour les prospects des campagnes vidéo et Discovery annonces uniquement)

Les clients doivent utiliser un entier de 8 octets pour traiter la requête.

creative_id L'ID de création Google Ads permet de distinguer les dans le groupe d'annonces. (Disponible pour les prospects des campagnes vidéo et Discovery annonces uniquement)

Les clients doivent utiliser un entier de 8 octets pour traiter la requête.

gcl_id Clic Google ID, un paramètre unique utilisé pour suivre chaque clic sur une annonce.
google_key Une clé configurée par l'annonceur avec chaque formulaire.

Recommandation de traitement:Avant de traiter un prospect reçu plus de webhook, valider google_key revient à configurer Google Ads afin d'avoir la certitude que le prospect est valide. Conserver cette clé confidentielle. Vous devez la mettre à jour dans Google Ads s'il y a une raison pensent que cela a largement fait l’objet d’une fuite.

is_test Ce champ indique "facultatif" sémantique. Si la valeur est "true", traiter cette en tant que prospect test. Si la valeur est "false" ou si le champ n'est pas présent, traiter ce prospect en tant que responsable de production valide.
user_column_data Nuptial clé-valeur répété transmettant des données soumises par l'utilisateur.
  • user_column_data.column_id: type de données envoyé par l'utilisateur.
  • User_column_data.column_value: pour chaque type de données, un type de valeur est renseigné en fonction du type de données. Tous nos types de données actuels ont la valeur user_column_data.string_value
  • user_column_data.column_name: texte lisible de l'élément le type de données envoyé par l'utilisateur. Ce champ peut ne pas toujours être renseigné, utilisez plutôt column_id .
user_column_data.column_id Contenu de la colonne user_column_data.string_value user_column_data.column_name (obsolète)
"FULL_NAME" Nom complet de l'utilisateur. "Nom complet"
"FIRST_NAME" Prénom de l'utilisateur. "Prénom"
"LAST_NAME" Nom de l'utilisateur. "Nom"
"E-MAIL" Adresse e-mail de l'utilisateur. "Adresse e-mail de l'utilisateur"
"PHONE_NUMBER" Téléphone de l'utilisateur (E.164) format (ex. : "+11234567890". "Téléphone de l'utilisateur" :
"POSTAL_CODE" Code postal de l'utilisateur. "Code postal"
"COMPANY_NAME" Nom de l'entreprise de l'utilisateur. "Nom de l'entreprise"
"JOB_TITLE" Fonction de l'utilisateur. "Fonction" :
"E-MAIL_WORK" Adresse e-mail professionnelle de l'utilisateur. "Adresse e-mail professionnelle"
"WORK_PHONE" Numéro de téléphone professionnel de l'utilisateur. "Téléphone professionnel"
"ADRESSE_STREET" Adresse postale de l'utilisateur. "Adresse postale"
"VILLE" Ville de l'utilisateur. "Ville"
"REGION" Région de l'utilisateur. "Région"
PAYS Pays de l'utilisateur. "Pays"
MODÈLE_DE_VEILLE Quel modèle vous intéresse ? N/A
"VEHICLE_TYPE" Quel type de véhicule vous intéresse ? N/A
"OFFRE_PRÉFÉRENCE" Sélectionnez votre concessionnaire préféré N/A
"VEHICLE_PURCHASE_TIMELINE" Quand prévoyez-vous d'acheter un véhicule ? N/A
"VEHICLE_CONDITION" Êtes-vous intéressé(e) par un véhicule neuf ou d'occasion ? N/A
"PROPRIÉTÉ_DE_VÉHICLE" Possédez-vous un véhicule ? "N/A"
"VEHICLE_PAYMENT_TYPE" Quel type d'acquisition de véhicule vous intéresse ? N/A
"COMPANY_SIZE" Quelle est la taille de votre entreprise ? N/A
"VENTES_ANNUELS" Quel est votre volume de ventes annuel ? N/A
"YEAR_IN_BUSINESS" Depuis combien d'années êtes-vous en activité ? N/A
"JOB_DEPARTMENT" Dans quel service travaillez-vous ? N/A
"JOB_ROLE" Quel est votre poste ? N/A
"EDUCATION_PROGRAM" Quel programme vous intéresse ? N/A
"EDUCATION_COURSE" Quel cours vous intéresse ? N/A
"PRODUIT" Quel produit vous intéresse ? N/A
"SERVICE" Quel service vous intéresse ? N/A
"OFFRE" Quelle offre vous intéresse ? N/A
"CATEGORY" Quelle catégorie vous intéresse ? N/A
"PREFERRED_CONTACT_METHOD" Sélectionnez votre méthode de contact préférée N/A
"PREFERRED_LOCATION" Sélectionnez votre lieu préféré N/A
"PREFERRED_CONTACT_TIME" À quelle heure souhaitez-vous être contacté(e) ? N/A
"PURCHASE_TIMELINE" Quand comptez-vous effectuer un achat ? N/A
"ANNÉES_D'EXPERIENCE" Combien d'années d'expérience professionnelle avez-vous ? N/A
"JOB_INDUSTRY" Dans quel secteur travaillez-vous ? N/A
"LEVEL_OF_EDUCATION" Quel niveau d'études avez-vous atteint ? N/A
"PROPERTY_TYPE" Quel type de logement recherchez-vous ? N/A
"REALTOR_HELP_GOAL" Pourquoi souhaitez-vous faire appel à un agent immobilier ? N/A
"PROPERTY_COMMUNITY" Quelle communauté vous intéresse ? N/A
"PRICE_RANGE" Quelle gamme de prix recherchez-vous ? N/A
"NUMBER_OF_BEDROOMS" Combien de chambres recherchez-vous ? N/A
"PROPRIÉTÉ_FOURNIE" Recherchez-vous un logement entièrement meublé ? N/A
"PETS_ALLOWED_PROPERTY" Recherchez-vous des logements qui acceptent les animaux de compagnie ? N/A
"NEXT_PLANNED_PURCHASE" Quel est le prochain produit que vous prévoyez d'acheter ? N/A
"EVENT_ compagnie_INTEREST" Voulez-vous vous inscrire à un événement ? N/A
"PREFERRED_SHOPPING_PLACES" Où souhaitez-vous effectuer vos achats ? N/A
"FAVORITE_BRAND" Quelle est votre marque préférée ? N/A
"TRANSPORTATION_COMMERCIAL_LICENSE_TYPE" Quel type de licence commerciale possédez-vous ? N/A
"EVENT_BOOKING_INTEREST" Souhaitez-vous réserver un événement ? N/A
DESTINATION_COUNTRY Quel est votre pays de destination ? N/A
"DESTINATION_CITY" Quelle est votre ville de destination ? N/A
"DEPARTURE_COUNTRY" Quel est votre pays de départ ? N/A
"DEPARTURE_CITY" Quelle est votre ville de départ ? N/A
"DEPARTURE_DATE" Quelle est votre date de départ ? N/A
RETOUR_DATE Quelle est votre date de retour ? N/A
"NUMBER_OF_TRAVELERS" Avec combien de personnes voyagez-vous ? N/A
"TRAVEL_BUDGET" Quel est votre budget de voyage ? N/A
"TRAVEL_ACCOMMODATION" Où souhaitez-vous loger pendant votre voyage ? N/A

Gestion des prospects

Les gestionnaires de prospects doivent répondre avec les codes HTTP suivants:

Réponse HTTP Corps de la réponse (JSON) Erreur récupérable ?
200 {} N/A
4XX {"message: Texte d'erreur au format libre, décrivant le problème avec la demande"} Non
5XX {"message: Message d'erreur facultatif retraible intermittente"} Oui

Doublons

Il n'est pas garanti qu'un seul prospect soit généré exactement une fois, d'où il le webhook doit gérer correctement les doublons.