Implementierung

POST-Schema

Die an den Webhook gesendete POST-Anfrage hat das JSON-Format mit dem folgenden Schema:

Webhook-Proto-Nutzlast

// 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;
}

Feldbeschreibung

Feld Beschreibung
lead_id Eindeutiger String, der einen bestimmten Lead identifiziert.

Empfehlung zur Verarbeitung:Hiermit können Sie Duplikate von eingehenden Leads entfernen. Dieser Name ist für alle Formulare eindeutig. Wenn Sie Probleme im Zusammenhang mit einem bestimmten Lead melden, ist diese ID erforderlich.

api_version API-Version, zu der dieses Lead-Schema gehört. Dies wird bei der Migration zu einem neuen Schema verwendet und kann vorerst ignoriert werden.
form_id Eindeutige ID für jedes in Google Ads konfigurierte Formular Das aktuelle Produkt ermöglicht das Anhängen eines Formulars auf Kampagnenebene im Gegensatz zum Anhängen auf Anzeigengruppen- oder Anzeigenebene.

Auswirkungen:Leads können nur auf form_id-Ebene aufgeteilt werden, also auf Kampagnenebene.

Clients müssen zum Verarbeiten eine Ganzzahl von 8 Byte verwenden.

campaign_id Die Google Ads-Kampagnen-ID oder Werbebuchungs-ID (Display & Video 360) des angehängten Lead-Formulars.

Clients müssen für die Verarbeitung eine 8-Byte-Ganzzahl verwenden.

adgroup_id Die Google Ads-Anzeigengruppen-ID dient dazu, eine bestimmte Anzeigengruppe in der Kampagne zu unterscheiden. (Nur für Leads aus Video- und Discovery-Anzeigen verfügbar)

Clients müssen für die Verarbeitung eine 8-Byte-Ganzzahl verwenden.

creative_id Die Google Ads-Creative-ID wird verwendet, um ein Creative in der Anzeigengruppe zu unterscheiden. (Nur für Leads aus Video- und Discovery-Anzeigen verfügbar)

Clients müssen für die Verarbeitung eine 8-Byte-Ganzzahl verwenden.

gcl_id Google Click ID, ein eindeutiger Parameter, mit dem jeder Klick auf eine Anzeige erfasst wird.
google_key Ein vom Werbetreibenden für jedes Formular konfigurierter Schlüssel.

Empfehlung zur Verarbeitung:Vor der Verarbeitung eines Lead, der über einen Webhook empfangen wurde, entspricht die Validierung von google_key der Konfiguration in Google Ads, um sicherzugehen, dass der Lead gültig ist. Behandeln Sie diesen Schlüssel vertraulich und aktualisieren Sie ihn in Google Ads, wenn es einen Grund zu der Annahme gibt, dass er bereits mehrfach durchgesickert ist.

is_test Die Semantik dieses Feldes ist optional. Wenn der Wert „true“ ist, wird dieser Lead als Test-Lead behandelt. Wenn der Wert „false“ ist oder das Feld nicht vorhanden ist, wird dieser Lead als gültigen Produktions-Lead behandelt.
user_column_data Wiederholtes Schlüssel/Wert-Tupel, das vom Nutzer übermittelte Daten überträgt.
  • user_column_data.column_id: Der vom Nutzer eingereichte Datentyp.
  • User_column_data.column_value: Für jeden Datentyp wird abhängig vom Datentyp ein Werttyp ausgefüllt. Alle unsere aktuellen Datentypen haben den Wert user_column_data.string_value.
  • user_column_data.column_name: menschenlesbarer Text des vom Nutzer gesendeten Datentyps. Dieses Feld wird möglicherweise nicht immer ausgefüllt. Verwenden Sie stattdessen column_id .
user_column_data.column_id Content User_column_data.string_value user_column_data.column_name (eingestellt)
"FULL_NAME" Vollständiger Name des Nutzers „Vollständiger Name“
FIRST_NAME Vorname des Nutzers „Vorname“
LAST_NAME Nachname des Nutzers „Nachname“
"EMAIL" E-Mail-Adresse des Nutzers „E-Mail-Adresse des Nutzers“
„PHONE_NUMBER“ Telefonnummer des Nutzers im E.164-Format, z.B. "+11234567890". „Telefonnummer des Nutzers“
„POSTAL_CODE“ Postleitzahl des Nutzers. „Postleitzahl“
COMPANY_NAME Name des Unternehmens des Nutzers „Name des Unternehmens“
"JOB_TITLE" Position des Nutzers. „Position“
WORK_EMAIL Geschäftliche E-Mail-Adresse des Nutzers. „E-Mail-Adresse (geschäftlich)“
„WORK_PHONE“ Geschäftliche Telefonnummer des Nutzers. „Telefonnummer (geschäftlich)“
„STREET_ADDRESS“ Straße und Hausnummer des Nutzers „Adresse“
"CITY" Ort des Nutzers „Stadt“
„REGION“ Region des Nutzers. „Region“
"COUNTRY" Land des Nutzers „Land“
VEHICLE_MODEL Für welches Modell interessierst du dich?
VEHICLE_TYPE Für welchen Fahrzeugtyp interessierst du dich?
„PREFERRED_DEALERSHIP“ Bevorzugten Händler auswählen
„VEHICLE_PURCHASE_TIMELINE“ Wann möchtest du ein Fahrzeug kaufen?
„VEHICLE_condition“ Welchen Zustand soll das Fahrzeug haben?
„VEHICLE_OWNERSHIP“ Besitzt du ein Fahrzeug? „–“
VEHICLE_PAYMENT_TYPE Welche Form der Fahrzeugfinanzierung interessiert dich?
„COMPANY_SIZE“ Wie groß ist dein Unternehmen?
„JÄHRLICHE_VERKÄUFE“ Wie hoch ist dein Jahresumsatz?
„YEARS_IN_BUSINESS“ Wie lange bist du schon im Geschäft?
„JOB_DEPARTMENT“ In welcher Abteilung arbeitest du?
„JOB_ROLE“ Welchen Beruf übst du aus?
„EDUCATION_PROGRAM“ Für welches Programm interessierst du dich?
„EDUCATION_COURSE“ Für welchen Kurs interessierst du dich?
„PRODUKT“ Für welches Produkt interessierst du dich?
„DIENST“ Welche Dienstleistung interessiert dich?
"ANGEBOT" Für welches Angebot interessierst du dich?
„KATEGORIE“ Für welche Kategorie interessierst du dich?
„PREFERRED_CONTACT_METHOD“ Bevorzugte Methode zur Kontaktaufnahme auswählen
"PREFERRED_LOCATION" Bevorzugten Standort auswählen
PREFERRED_CONTACT_TIME Wann bist du am besten zu erreichen?
KAUFZEITRAUM Wann möchtest du etwas kaufen?
"YEARS_OF_EXPERIENCE" Wie viele Jahre Berufserfahrung hast du?
„JOB_INDUSTRY“ In welcher Branche bist du tätig?
"LEVEL_OF_EDUCATION" Was ist dein höchster Bildungsabschluss?
PROPERTY_TYPE Nach welcher Art von Immobilie suchst du?
REALTOR_HELP_GOAL Wobei soll dir ein Makler helfen?
"PROPERTY_COMMUNITY" Welche Immobilienart interessiert Sie?
"PRICE_RANGE" Für welche Preisspanne interessierst du dich?
„NUMBER_OF_BEDROOMS“ Wie viele Schlafzimmer sollten es sein?
„FURNISHED_PROPERTY“ Bist du auf der Suche nach einer voll möblierten Immobilie?
"PETS_ALLOWED_PROPERTY" Suchst du nach Immobilien, in denen Haustiere erlaubt sind?
„NEXT_PLANNED_PURCHASE“ Welches Produkt möchtest du als Nächstes kaufen?
"EVENT_SIGNUP_INTEREST" Möchtest du dich für eine Veranstaltung registrieren?
„PREFERRED_SHOPPING_PLACES“ Wo würdest du einkaufen?
„FAVORITE_BRAND“ Was ist deine Lieblingsmarke?
"TRANSPORTATION_COMMERCIAL_LICENSE_TYPE" Welche Art von gültiger gewerblicher Lizenz hast du?
„EVENT_BOOKING_INTEREST“ Möchten Sie eine Veranstaltung buchen?
"DESTINATION_COUNTRY" Was ist dein Zielland?
"DESTINATION_CITY" Was ist dein Zielort?
DEPARTURE_COUNTRY Was ist dein Abreiseland?
DEPARTURE_CITY Was ist dein Abreiseort?
DEPARTURE_DATE Wann reist du ab?
RETURN_DATE Wann reist du zurück?
"NUMBER_OF_TRAVELERS" Mit wie vielen Personen reist du?
TRAVEL_BUDGET Wie hoch ist dein Reisebudget?
„TRAVEL_ACCOMMODATION“ Wo möchtest du während der Reise übernachten?

Umgang mit Anfragen

Lead-Handler sollten mit den folgenden HTTP-Codes antworten:

HTTP-Antwort Antworttext (JSON) Wiederholbarer Fehler?
200 {}
4XX {"message: Free form error text, which what was wrong with request"} Nein
5XX {„message: Intermitt retraible error optional message"} Ja

Duplikate

Es kann nicht garantiert werden, dass ein einzelner Lead genau einmal gesendet wird. Daher sollte der Webhook, der Lead-Verarbeitung verarbeitet, Duplikate ordnungsgemäß verarbeiten sollten.