Imparerai
Impari a conoscere il Codice e a creare funzioni personalizzate che vengono eseguite direttamente da Klaviyo.
Il codice richiede uno sviluppo personalizzato e il team di assistenza di Klaviyo non è in grado di offrire assistenza pratica. Se non ha uno sviluppatore nel suo team e non si sente a suo agio nello scrivere codice da solo, consideri di rivolgersi a un Partner Klaviyo per ricevere assistenza.
Prima di iniziarePrima di iniziare
Il codice fa parte della piattaforma di dati dei clienti (CDP) di Klaviyo.
Il CDP di Klaviyo non è incluso nell'applicazione di marketing standard di Klaviyo e per accedere alle funzionalità associate è necessario un abbonamento al CDP. Visiti la nostra guida alla fatturazione per saperne di più sull'aggiunta di questa funzionalità al suo piano o per iniziare se è un nuovo cliente.
Che cos'è il Codice?
Il codice le consente di eseguire funzioni personalizzate in risposta agli eventi acquisiti in Klaviyo. Può scrivere le sue funzioni Javascript o Python nell'editor di codice, che vengono poi eseguite direttamente nella piattaforma.
Con il codice, puoi inviare dati ai sistemi esterni senza dover impostare un endpoint HTTP pubblico per ricevere webhook e costruire funzionalità personalizzate che si attivano in risposta al verificarsi di un evento. Inoltre puoi accedere a molti moduli precostituiti per facilitare la creazione di soluzioni personalizzate.
ArgomentiArgomenti
Il codice le consente di eseguire funzioni personalizzate in risposta a qualsiasi evento che può essere interrogato tramite l'API Get Events.
Questi includono:
- Eventi e-mail (ad esempio, e-mail cliccate, e-mail contrassegnate come spam)
- Eventi SMS (ad esempio, SMS inviati, SMS ricevuti)
- Eventi notifiche push (ad esempio, push ricevuta, push rimbalzata)
- Eventi da integrazioni (cioè eventi da integrazioni di prima parte create da Klaviyo)
- Eventi API (cioè gli eventi sincronizzati tramite l'API di Klaviyo)
Klaviyo Code non supporta i seguenti eventi come argomenti:
- Email aperta
- Email ricevuta
Interfaccia del codice
Per accedere al Codice, si rechi nella scheda Codice della Piattaforma dati clienti (CDP) > Gestione dati > Codice.
Per creare una funzione personalizzata, selezioni il pulsante Crea una funzione :
Verrà portato alla pagina Ricette , dove potrà selezionare una soluzione precostituita da eseguire, oppure una funzione Python o Node.js vuota.
Se seleziona una ricetta esistente, vedrà l'editor di codice con il codice della soluzione, insieme ad una descrizione della funzionalità.
Se seleziona una funzione vuota, in modo da poter creare le sue soluzioni personalizzate, apparirà la maschera Dettagli dove potrà farlo:
-
Nome della sua funzione
Un nome per identificare la sua funzione. -
Selezioni un argomento per la sua funzione
L'evento che attiverà l'esecuzione del suo codice . -
Selezionare un runtime
L'ambiente di runtime in cui viene eseguito il codice (ad esempio, Python o Node.js).
Dopo aver effettuato le selezioni necessarie e aver selezionato il pulsante Crea funzione , si aprirà un'interfaccia con le seguenti schede:
- Editore
- Uscita del test
- Diari
Editore
Nella pagina Editor in Codice, la pagina è suddivisa in 3 schede:
-
Codice
La scheda Codice contiene un editor in cui può scrivere funzioni Python o Javascript. -
Moduli
I moduli sono pacchetti di terze parti che aggiungono funzionalità alle sue funzioni. -
Variabili d'ambiente
Le variabili d'ambiente sono le coppie chiave-valore a cui la sua funzione accede quando viene eseguita.
Codice
Nella scheda Codice , vedrà un editor che potrà utilizzare per scrivere funzioni Python o Javascript che verranno eseguite in risposta all'argomento selezionato.
Parametri della funzione HandlerParametri della funzione Handler
Di seguito sono riportati alcuni esempi di parametri dell'evento e del contesto che vengono passati alla funzione handler.
Esempio di formato dell'evento
{
{
"dati": {
"tipo": "evento",
"id": "7S2q9haejYG",
"attributi": {
"timestamp": 1694435729,
"event_properties": {
"MfaEnabled": false,
"IpAddress": "000.00.0.0",
"UserAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36",
"UserRole": "Owner",
"SessionId": "34sh0a9nh8ngnk2nfacjxmt592yx40ib",
"LoginType": "Username_password",
"current_company_id": "XXXXX",
"$event_id": "1694435729"
},
"datetime": "2023-09-11 12:35:29+00:00",
"uuid": "b0b8fe80-509f-11ee-8001-278cc529fcd3"
},
"relazioni": {
"profilo": {
"dati": {
"type": "profile",
"id": "123456"
},
"link": {
"self": "https://a.klaviyo.com/api/events/7S2q9haejYG/relationships/profile/",
"related": "https://a.klaviyo.com/api/events/7S2q9haejYG/profile/"
}
},
metrico": {
"dati": {
"type": "metric",
"id": "4Tdup6"
},
"link": {
"self": "https://a.klaviyo.com/api/events/7S2q9haejYG/relationships/metric/",
"related": "https://a.klaviyo.com/api/events/7S2q9haejYG/metric/"
}
}
},
"link": {
"self": "https://a.klaviyo.com/api/events/7S2q9haejYG/"
}
}
}
Esempio di formato del contesto
{
"company_id": "XXXXX",
"trigger": {"type": "event", "uid": "123456"},
"function_id": "123456",
}
ModuliModuli
Nella scheda Moduli, può scegliere tra i moduli precostituiti più popolari (cioè pacchetti di terze parti che aggiungono funzionalità alle sue funzioni).
Per aggiungere un modulo esterno da utilizzare nel suo codice, selezioni il pulsante Aggiungi modulo:
Nella maschera che appare, può cercare e selezionare il modulo che desidera aggiungere:
Una volta aggiunto, può utilizzare il modulo con il codice che scrive in Klaviyo.
Per informazioni su come utilizzarlo, faccia riferimento alla documentazione nativa del modulo esterno.
Variabili d'ambiente
La scheda Variabili d'ambiente le permette di impostare delle coppie chiave-valore che il suo codice in Klaviyo può consultare quando viene eseguito. Questi possono essere utilizzati per memorizzare informazioni come credenziali e chiavi segrete, in modo che le sue funzioni possano accedervi durante l'esecuzione.
Per aggiungere una variabile d'ambiente, selezioni il pulsante Aggiungi una variabile:
Nella maschera che appare, può impostare una coppia chiave-valore per la sua variabile d'ambiente.
Una volta create, le variabili d'ambiente saranno elencate nella pagina e potranno essere utilizzate nel suo codice.
Per accedere alle variabili d'ambiente nel suo codice, utilizzi os.getenv("Key") per Python, oppure process.env("Key") per Node.js.
Per aggiornare il valore di una variabile d'ambiente esistente, deve creare una nuova variabile con la stessa chiave per la quale desidera aggiornare il valore.
Uscita del test
La scheda Test output in Codice le permette di testare il suo codice con eventi recenti per confermare che l'output si comporta come previsto.
Per testare la sua funzione:
- Seleziona il pulsante Esegui test:
- Nella maschera che appare, selezioni un evento da testare. Può selezionare tra i 10 eventi più recenti catturati in Klaviyo.
- Dopo aver selezionato un evento da testare, verrà mostrato l'output del test:
Diari
La scheda Registri mostra lo stato di salute delle funzioni del suo Codice in corso. Vedrà:
-
Stato
Il progresso dell'esecuzione di una funzione. -
Tempo di risposta
La quantità di tempo necessaria al suo codice per essere eseguito in risposta a un evento. -
Data
Un timestamp per il momento in cui la funzione è stata eseguita.
Distribuzione del codice
Per distribuire il codice che scrive nell'editor, deve spostare il menu a tendina dello stato su Live.
Una volta impostato su live, il codice che lei scrive verrà eseguito ogni volta che l'evento dell'argomento viene catturato in Klaviyo.
Quando una funzione è impostata dal vivo, può esserci un ritardo fino a 15 minuti prima che gli eventi inizino ad attivare la funzione.
Esempio di soluzione
Di seguito è riportato un esempio di soluzione personalizzata implementata con Code.
Nell'esempio, i dati degli eventi sono impostati come proprietà del profilo, in modo da poter essere utilizzati nelle e-mail mirate e nella segmentazione. L'evento personalizzato Servizio prenotato viene catturato in Klaviyo quando i clienti prenotano un servizio fotografico con il marchio, e i dati sulla città di prenotazione e l'URL associato vengono impostati come proprietà del profilo sul rispettivo profilo.
Viene creata anche una proprietà chiamata Prenotazioni recenti , che memorizza i dati dei 5 eventi di tiro prenotati più recenti, in modo da poterli scorrere e accedervi nei modelli di e-mail.
CodiceCodice
Il codice Python per questa soluzione è scritto nell'editor di codice e viene eseguito direttamente da Klaviyo.
Codice di esempioCodice di esempio
ModuliModuli
In questo esempio, viene utilizzato il modulo klaviyo-api, che consente all'utente di lavorare più facilmente con le API di Klaviyo attraverso metodi precostituiti.
Variabili d'ambienteVariabili d'ambiente
Le variabili d'ambiente possono essere utilizzate per memorizzare informazioni come credenziali e chiavi segrete, in modo che le sue funzioni possano accedervi durante l'esecuzione. Per questo esempio, vengono impostate le seguenti coppie chiave-valore:
-
KLAVIYO_PRIVATE_KEY
Una variabile d'ambiente per memorizzare la chiave privata associata all'account Klaviyo che effettua le richieste API. -
MAX_PROPRIETÀ_DA_STORE
Una variabile d'ambiente utilizzata per definire il numero massimo di proprietà da memorizzare per la funzione di esempio.
Test
Durante la creazione della funzione per impostare i dati degli eventi come proprietà del profilo, la scheda Test output viene utilizzata per verificare l'output previsto.
DiariDiari
Una volta creata e testata la funzione, la scheda Registri mostra lo stato di salute della funzione mentre viene eseguita in risposta agli eventi di ripresa prenotati .
RisultatoRisultato
Con questa funzione del Codice, quando i clienti si iscrivono ai servizi fotografici e attivano l'evento personalizzato Servizio prenotato, i dati dell'evento saranno memorizzati nel profilo del cliente per essere utilizzati nella segmentazione e nelle campagne mirate.
Implementazione delle ricetteImplementazione delle ricette
Le Ricette nel Codice le consentono di implementare soluzioni precostituite senza la necessità di uno sviluppo personalizzato.
Per implementare una Ricetta nel suo account Klaviyo:
- Selezioni il pulsante Crea funzione nella pagina Codice.
- Scelga la Ricetta che desidera implementare nel suo account. Verrà portato nell'editor dove potrà vedere il codice della Ricetta selezionata, insieme ad una descrizione di ciò che fa la funzione.
- Clicchi sul pulsante Seleziona per continuare.
- Scelga un nome per la funzione e il trigger che ne causerà l'esecuzione. Il tempo di esecuzione viene impostato automaticamente in base al codice della Ricetta.
- Selezioni il pulsante della funzione Crea.
- Una volta creata la funzione, imposti le variabili d'ambiente pertinenti, in modo che la funzione abbia i dati necessari per essere eseguita.
- La Ricetta può ora essere testata e impostata su Live.
Le ricette possono richiedere l'aggiornamento di alcuni campi per farli corrispondere alle preferenze di denominazione desiderate e ai dati dei suoi eventi. Consulti le istruzioni della Ricetta per vedere quali campi possono essere rinominati e modificati.
Risorse aggiuntive
Iniziare con il CDP di Klaviyo
Capire i diversi webhook disponibili in Klaviyo