I lead Salesforce possono essere creati quando un utente si iscrive al tuo forum configurando un webhook per eventi utente che invia dati a Zapier e utilizzando quindi l’integrazione Zapier-Salesforce per creare il lead.
Crea un nuovo Zap
Accedi a Zapier e clicca sul pulsante Crea un Zap!. Verrai reindirizzato a una pagina con un modulo per creare il tuo Zap:
Dai un nome al tuo Zap e poi clicca su Scegli App nella sezione Trigger del modulo. Dalla sezione Scegli un’app di Trigger della pagina, seleziona Webhooks:
Nel modulo Seleziona Webhook di Zapier per Trigger, seleziona “mostra opzioni meno comuni” e poi scegli Cattura Hook Raw:
Clicca su Salva + Continua.
Quindi copia l’URL del webhook negli appunti.
Crea un Webhook per Eventi Utente su Discourse
Per creare il Webhook di Discourse, sul tuo forum Discourse, vai su Amministratore / API / Webhook e clicca sul pulsante Aggiungi webhook. Nel modulo che appare, incolla l’URL del webhook di Zapier nel campo URL del payload. Sotto “Quali eventi dovrebbero attivare questo webhook?”, seleziona Seleziona eventi individuali. Quindi, sotto il gruppo Eventi utente, spunta la casella L’utente viene creato. Spunta la casella Attiva per abilitare il webhook e clicca sul pulsante Crea.
Suggerimento: Poiché stai selezionando solo l’evento user_created, Discourse attiverà questo webhook solo quando un nuovo utente si iscrive, non per altre modifiche all’utente. Ciò significa che il passaggio di filtro di Zapier descritto di seguito è opzionale, ma consigliato come misura di sicurezza.
Testa il Webhook su Zapier
Ora torna su Zapier e clicca sul pulsante ‘Ok, l’ho fatto’:
Ora devi inviare una richiesta di esempio da Discourse a Zapier. Per generare i dati necessari per testare i passaggi successivi, dovrai creare un nuovo utente sul tuo forum. Un indirizzo Gmail temporaneo va bene per questo scopo. Iscriviti al tuo forum come nuovo utente, quindi torna al passaggio di esempio su Zapier per visualizzare i dati.
Puoi espandere l’esempio per vedere i dati inviati da Discourse. Clicca su Continua per passare al passaggio successivo.
Cattura l’evento Utente creato di Discourse
Se hai selezionato solo l’evento user_created durante la configurazione del webhook su Discourse, questo passaggio di filtro è opzionale. Tuttavia, è comunque una buona misura di sicurezza. Clicca su Aggiungi un passaggio e poi su Filtro:
Per filtrare tutti gli eventi tranne quello Utente creato, configura il filtro in modo che continui solo se Headers Http X Discourse Event corrisponde esattamente a user_created.
Clicca sul pulsante Testa e Continua. Se hai attivato l’evento di esempio creando un nuovo utente sul tuo forum, dovresti vedere un avviso di successo. Se invece vedi un avviso che il tuo Zap non sarebbe continuato, torna ai tuoi dati di esempio e assicurati che Headers Http X Discourse Event sia impostato su user_created.
Clicca sul pulsante Continua per passare al passaggio successivo.
Analizza il payload grezzo con un passaggio Esegui JavaScript
Clicca su Aggiungi un passaggio dal menu del tuo Zap. Quindi clicca su Azione/Ricerca e seleziona Codice dal menu Azione. Nel modulo Codice, seleziona Esegui-JavaScript.
Zapier creerà un oggetto inputData a cui puoi aggiungere proprietà nominate. Aggiungi un nome per la tua proprietà nella colonna di sinistra. Dalla colonna di destra, seleziona “Cattura Hook Raw” dal menu a tendina e poi seleziona “Corpo Grezzo”:
Scorri la pagina verso il basso per vedere un campo di inserimento codice:
Devi quindi sostituire il codice di esempio con un codice che analizza il Corpo Grezzo e restituisce un oggetto contenente i valori necessari per la tua azione finale. Ecco il codice che sto utilizzando. Salesforce richiede un cognome, quindi se non esiste un cognome, viene restituito un errore. Sul mio sito Discourse ho aggiunto un campo utente personalizzato per l’Azienda che è obbligatorio all’iscrizione. Voglio passare questi dati a Salesforce. Esaminando il payload inviato da Discourse, so che questo campo si trova in \"user_fields\":[\"10\"]. Dovrai configurare il codice in modo che restituisca i campi dati grezzi che desideri passare a Salesforce.
const parsed = JSON.parse(inputData.raw);
if (parsed.user) {
const user = parsed.user,
name = user.name,
userFields = user.user_fields;
let firstName,
lastName,
company;
if (name) {
const splitName = name.split(' ');
firstName = splitName[0];
lastName = splitName[1]
}
if (userFields) {
company = userFields['10'];
}
if (lastName) {
return {id: user.id,
username: user.username,
lastName: lastName,
firstName: firstName,
email: user.email,
company: company,
error: null
};
} else {
return {error: "Cognome mancante"}
}
} else {
return {error: "Non è stato restituito un oggetto utente"};
}
Dopo aver aggiunto il tuo codice, clicca sul pulsante Continua, quindi clicca sul pulsante Testa questo passaggio. I risultati dovrebbero restituire i dati del nuovo utente:
Filtra le richieste fallite
Se il tuo passaggio JavaScript ha restituito un errore, ad esempio “Cognome mancante”, puoi aggiungere un altro passaggio di filtro per evitare di inviare richieste fallite a Salesforce. Clicca su Aggiungi un passaggio dal menu dei Zap, quindi clicca su Filtro. Configura questo filtro in modo che continui solo se non ci sono errori:
Crea un lead su Zapier
Clicca su Aggiungi un passaggio e poi su Azione/Ricerca. Dal menu Azione cerca e seleziona Salesforce. Nel menu Azione di Salesforce seleziona Crea Lead. Clicca su Salva + Continua. Quindi clicca su Collega un account. Ti verrà chiesto di consentire a Zapier di accedere al tuo account Salesforce. Clicca sul pulsante Test per verificare la connessione:
Nella pagina Configura Lead Salesforce puoi aggiungere campi dal passaggio Esegui-JavaScript ai corrispondenti campi Salesforce:
Clicca su Continua e poi su Invia test a Salesforce. Dovresti vedere un nuovo lead Salesforce. Se tutto funziona correttamente, clicca su Fine e attiva il Zap.















