Implementazione

Schema POST

La richiesta POST inviata al webhook sarà in formato JSON con quanto segue: schema:

Payload protocollo 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;
}

Descrizione del campo

Campo Descrizione
lead_id Stringa univoca che identifica un determinato lead.

Consigli per l'uso: da utilizzare per deduplicare i lead che sono ricevuto. Sarà univoco in tutti i moduli. Durante il report per problemi relativi a una richiesta specifica, questo ID sarà obbligatorio.

api_version Versione dell'API a cui appartiene questo schema dei lead. Verrà utilizzata quando migrazione a un nuovo schema, e per il momento può essere ignorata.
form_id ID univoco per ogni modulo configurato in Google Ads. Il prodotto corrente consente l'aggiunta di un modulo a livello di campagna (anziché l'aggiunta di un modulo a livello di gruppo di annunci o di annuncio) ).

Implicazioni: i lead possono essere suddivisi solo in form_id a livello di campagna (ad es. a livello di campagna).

I client devono utilizzare un numero intero di 8 byte per l'elaborazione.

campaign_id L'ID campagna Google Ads o l'ID elemento pubblicitario (Display &Video 360) del modulo per i lead allegato.

Per l'elaborazione, i client devono utilizzare un numero intero a 8 byte.

adgroup_id L'ID gruppo di annunci Google Ads viene utilizzato per distinguere gruppo di annunci della campagna. (Disponibile per i lead provenienti da video e discovery) annunci)

Per l'elaborazione, i client devono utilizzare un numero intero a 8 byte.

creative_id L'ID creatività di Google Ads viene utilizzato per distinguere le specifiche creatività nel gruppo di annunci. (Disponibile per i lead provenienti da video e discovery) annunci)

Per l'elaborazione, i client devono utilizzare un numero intero a 8 byte.

gcl_id Clic Google ID, un parametro univoco utilizzato per monitorare ogni clic di un annuncio.
google_key Una chiave configurata dall'inserzionista in ogni modulo.

Consiglio per la gestione: prima di elaborare un lead ricevuto più di webhook, la convalida di google_key equivale alla configurazione Google Ads per avere la certezza che la richiesta sia valida. Conserva riservata e aggiornata in Google Ads, se c'è un motivo per riteniamo che questa situazione si sia diffusa rapidamente.

is_test Questo campo è "facoltativo" semantica. Se il valore è true, consideralo come lead di prova. Se il valore è false o se il campo non è presente, trattare come lead di produzione valido.
user_column_data Una tupla chiave-valore ripetuta che trasmette i dati inviati dall'utente.
  • user_column_data.column_id: tipo di dati inviato da per l'utente.
  • User_column_data.column_value: per ogni tipo di dati, viene compilato un tipo di valore a seconda del tipo di dati. Tutti i nostri tipi di dati attuali hanno il valore user_column_data.string_value.
  • user_column_data.column_name: testo leggibile di il tipo di dati inviato dall'utente. Questo campo potrebbe non essere sempre viene compilata, utilizza invece column_id .
user_column_data.column_id Contenuti_colonna_utente.string_value user_column_data.column_name (deprecato)
"FULL_NAME" Nome completo dell'utente. "Nome e cognome"
"FIRST_NAME" Nome dell'utente. "Nome"
"LAST_NAME" Cognome dell'utente. "Cognome"
"EMAIL" Email dell'utente. "Email dell'utente"
"PHONE_NUMBER" Telefono utente in E.164 di testo, ad esempio "+11234567890". "Telefono dell'utente"
"POSTAL_CODE" Codice postale dell'utente. "Codice postale"
"COMPANY_NAME" Nome dell'azienda dell'utente. "Nome dell'azienda"
"JOB_TITLE" Qualifica dell'utente. "Qualifica"
"EMAIL_LAVORO" Email di lavoro dell'utente. "Email di lavoro"
"TELEFONO DI LAVORO" Telefono di lavoro dell'utente. "Telefono di lavoro"
"INDIRIZZO_STREET" Indirizzo dell'utente. "Via"
"CITTÀ" Città dell'utente. "Città"
"REGIONE" Regione dell'utente. "Regione"
"PAESE" Paese dell'utente. "Paese"
"VEHICLE_MODEL" Quale modello ti interessa? N/D
"TIPO_DI_VEICOLO" Quale tipo di veicolo ti interessa? N/D
"PREFERRED_DEALERSHIP" Seleziona il tuo concessionario preferito N/D
"VEHICLE_PURCHASE_TIMELINE" Quando intendi acquistare un veicolo? N/D
"VEHICLE_CONDITION" Ti interessa un veicolo nuovo o usato? N/D
"VEHICLE_OWNERSHIP" Possiedi un veicolo? "N/D"
"VEHICLE_PAYMENT_TYPE" Che tipo di proprietà del veicolo ti interessa? N/D
"COMPANY_SIZE" Quali sono le dimensioni della tua azienda? N/D
"VENDITE_ANNUALI" Qual è il tuo volume annuale di vendite? N/D
"YEARS_IN_BUSINESS" Da quanti anni eserciti la tua attività? N/D
"DIPARTIMENTO_LAVORO" In quale reparto lavori? N/D
"JOB_ROLE" Qual è il tuo ruolo professionale? N/D
"PROGRAMMA_EDUCATION" Quale programma ti interessa? N/D
"CORSO_DI_EDUCAZIONE" Quale corso ti interessa? N/D
"PRODOTTO" Quale prodotto ti interessa? N/D
"SERVIZIO" Quale servizio ti interessa? N/D
"OFFERTA" Quale offerta ti interessa? N/D
"CATEGORIA" Quale categoria ti interessa? N/D
"PREFERRED_CONTACT_METHOD" Seleziona il tuo metodo di contatto preferito N/D
"POSIZIONE_PREFERRED" Seleziona la tua località preferita N/D
"PREFERRED_CONTACT_TIME" Qual è l'orario migliore per contattarti? N/D
"PURCHASE_TIMELINE" Quando intendi effettuare un acquisto? N/D
"YEARS_OF_EXPERIENCE" Quanti anni di esperienza lavorativa hai accumulato? N/D
"JOB_INDUSTRY" In quale settore lavori? N/D
"LEVEL_OF_EDUCATION" Qual è il livello di istruzione più elevato che hai conseguito? N/D
"PROPERTY_TYPE" Quale tipo di immobile stai cercando? N/D
"REALTOR_HELP_GOAL" Per cosa vuoi chiedere aiuto a un agente immobiliare? N/D
"PROPERTY_COMMUNITY" Quale community ti interessa? N/D
"INTERVALLO_PREZZO" Quale fascia di prezzo stai cercando? N/D
"NUMBER_OF_BEDROOMS" Di quante stanze da letto hai bisogno? N/D
"PROPRIETÀ_FURNISHED" Stai cercando un immobile completamente arredato? N/D
"PETS_ALLOWED_PROPERTY" Stai cercando immobili in cui sono ammessi animali domestici? N/D
"ACQUISTO_SUCCESSIVO_PIANIFICATO" Qual è il prossimo prodotto che intendi acquistare? N/D
"EVENT_membership_INTEREST" Vuoi registrarti a un evento? N/D
"PREFERRED_SHOPPING_PLACES" Dove ti interessa fare acquisti? N/D
"FAVORITE_BRAND" Qual è il tuo brand preferito? N/D
"TRANSPORTATION_COMMERCIAL_LICENSE_TYPE" Quale tipo di licenza commerciale valida possiedi? N/D
"EVENT_BOOKING_INTEREST" Ti interessa prenotare un evento? N/D
"DESTINATION_COUNTRY" Qual è il paese di destinazione? N/D
"DESTINATION_CITY" Qual è la città di destinazione? N/D
"PARTENZA_PAESE" Qual è il paese di partenza? N/D
"siderazione_CITY" Qual è la città di partenza? N/D
"DATA_PARTENZA" Qual è la data di partenza? N/D
"RETURN_DATE" Qual è la data di ritorno? N/D
"NUMBER_OF_TRAVELERS" Quante persone viaggiano con te? N/D
"BUDGET_VIAGGIO" Qual è il tuo budget per il viaggio? N/D
"VIAGGI_ACCOMMODATION" Dove vuoi soggiornare durante il viaggio? N/D

Gestione dei lead

I gestori di lead devono rispondere con i seguenti codici HTTP:

Risposta HTTP Corpo della risposta (JSON) Errore recuperabile?
200 {} N/D
4XX {"message: Testo di errore in formato libero, che descrive il problema nella richiesta"} No
5XX {"message: Messaggio di errore intermittente retraibile facoltativo"}

Duplicati

Non è garantito che un singolo lead venga consegnato esattamente una volta, pertanto il webhook deve gestire i duplicati in modo controllato.