Come personalizzare il payload dei webhook

La mia esigenza specifica è sincronizzare i dati degli utenti attivati su Pardot tramite webhook. Il problema attuale è che il payload del webhook non corrisponde ai campi configurati su Pardot.

Esiste un plugin che possa eseguire questa conversione?

forse si può usare l’integrazione di Zapier

2 Mi Piace

Se non si desidera utilizzare qualcosa come Zapier, sarà necessaria una plugin personalizzata.

2 Mi Piace

Per ora, l’esigenza è stata soddisfatta implementando un livello di conversione intermedio. Ma questa non dovrebbe essere la best practice. Sarebbe bello se Discourse supportasse nativamente la definizione del formato dei dati di push.

Devi chiamare un’API esistente o crearne una nuova con un plugin. Non ci si può aspettare che Discourse accetti ogni formato di dati esistente, vero?

Forse potresti usare Discourse Jira come esempio, anche se potrebbe essere eccessivo.

3 Mi Piace

Intendo fornire i dati di push per ogni evento corrispondente, configurando la mappatura dei nuovi campi, ad esempio user.id => user_id, e se si desidera appiattire la struttura dei dati (tutti i JSON diventano una struttura di primo livello, senza nidificazione). Ad esempio, i dati per l’evento di conferma email dell’utente sono i seguenti (semplificati):

{
  "user": {
    "id": 1,
    "username": "jack",
    "name": "jack 2026"
  }
}

Selezionando l’appiattimento della struttura dei dati, si configura quindi la mappatura di ogni campo (questo potrebbe richiedere un modulo molto lungo).

user.id => user_id
user.username => username
user.name => name

La struttura dei dati effettivamente inviata dopo la configurazione è la seguente:

{
  "user_id": 1,
  "username": "jack",
  "name": "jack 2026"
}

Naturalmente, questo può essere configurato come un’opzione avanzata, che chi non ne ha bisogno può completamente ignorare.