ForHosting KIT · Strumenti per sviluppatori

Trasforma i payload dei webhook

L'email che si trova in data.customer.email finisce sotto correo e l'importo 8500 sotto importe, mentre un percorso inesistente viene semplicemente omesso: descriva la forma che si aspetta il sistema ricevente e ottenga il messaggio ricostruito su misura. Gratis nel suo browser.

  • Gratis
  • Funziona nel suo browser
  • Senza registrazione
  • I suoi dati restano sul dispositivo
Usalo da WebAPIEmailTelegramApp presto

Funziona nel tuo browser: gratis, senza registrazione, i file non escono dal tuo dispositivo.

Utile a chi deve collegare due sistemi che non parlano lo stesso formato.

Perché due sistemi raramente concordano sulla forma

Due sistemi che si dicono integrati raramente concordano su nomi, annidamento o perfino formato delle date. Un servizio di pagamento invia l'importo in centesimi come numero intero, mentre il suo sistema di fatturazione lo aspetta come testo decimale annidato tre livelli più in basso. Un CRM invia l'evento di un nuovo contatto commerciale come oggetto piatto, e il suo strumento di marketing vuole un elenco di contatti anche quando ce n'è uno solo. Non sono errori: sono due squadre che prendono decisioni diverse e ragionevoli in modo indipendente, e questo disallineamento è proprio ciò che rompe integrazioni che in una dimostrazione sembravano funzionare. Questo strumento si mette in mezzo e ricostruisce ciò che uno invia nella struttura che l'altro si aspetta, senza che nessuno dei due cambi il proprio codice.

Una mappatura al posto del codice scritto a mano

La forma di destinazione si descrive con una mappatura. Ogni nome del risultato punta al percorso con i punti in cui si trova il suo valore nel messaggio in arrivo: nell'esempio, correo punta a data.customer.email e importe a data.amount, così l'importo 8500 finisce sotto importe. Un percorso inesistente, come data.no.existe, viene omesso invece di essere riempito con un valore inventato. Tenere la mappatura fuori dalla sua applicazione conta: le trasformazioni scritte a mano vengono dimenticate e si rompono in silenzio quando l'origine cambia un nome mesi dopo, mentre una mappatura separata si può rileggere e verificare da sola. Un servizio con decine di partner può tenere una mappatura per ciascuno e aggiungerne uno nuovo senza toccare il codice condiviso.

Adattare un evento di pagamento al proprio formato interno

Un negozio online gestito da Marco Rossi riceve eventi di pagamento con decine di campi e ne usa solo cinque, con nomi diversi da quelli interni. Trasformare l'evento prima di salvarlo tiene il database pulito.

Testare un'integrazione prima di scrivere codice

Prima di programmare l'integrazione fra due sistemi, un team incolla un evento di esempio e prova la mappatura direttamente nel browser, per essere sicuro della struttura finale prima di scrivere una riga di codice.

È davvero gratis o c'è un limite nascosto?

Gratis nel browser, senza limiti d'uso: gira sul tuo dispositivo, non conta richieste.

Posso salvare una mappatura per riusarla?

Sì, puoi copiare la configurazione della mappatura e riapplicarla a eventi simili, senza ridefinirla ogni volta da zero.

Devo registrarmi per usarlo?

No, il modo gratis nel browser non richiede account.

Posso usarlo dal telefono?

Sì, funziona dal browser del telefono. Per mappature con molti campi è più comodo da computer, ma per un evento semplice va bene anche da mobile.

Che cosa succede se un percorso della mappatura non esiste?

Quella voce semplicemente non compare nel risultato, invece di essere riempita con un valore inventato. Nell'esempio, falta punta a data.no.existe, che non c'è nell'origine, e il risultato contiene solo correo e importe.

Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.

POSThttps://api.kit.forhosting.com/dev/webhook-transform

Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.

curl -X POST https://api.kit.forhosting.com/dev/webhook-transform \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"payload":{"user":{"name":"Ada"}},"mapping":{"nombre":"user.name"}}'
{
  "payload": {
    "user": {
      "name": "Ada"
    }
  },
  "mapping": {
    "nombre": "user.name"
  }
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "dev.webhook_transform",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.

per richiesta$0.002

Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.

HTTPCodiceSignificato
401unauthorizedChiave API mancante o non valida: controlla l'header Authorization.
402insufficient_balanceCredito esaurito: ricarica per continuare a eseguire attività.
404unknown_typeTipo di attività sconosciuto: controlla il campo type della richiesta.
429rate_limitedTroppe richieste in poco tempo: rallenta e riprova tra qualche secondo.

Uno strumento che prende il payload JSON di un webhook — l'evento che ti manda un servizio esterno — e lo trasforma nel formato che ti serve: rinomina campi, ne toglie o ne aggiunge, cambia la struttura.

Incolla l'evento, definisci la mappatura

Incolli il JSON reale che ti arriva — da un servizio di pagamento, da un modulo, da un gestionale — e definisci come vuoi che diventino i campi in uscita: quale campo sorgente va in quale campo destinazione, quali restano com'erano, quali si scartano del tutto. Il risultato è il nuovo JSON, pronto da inviare al sistema di arrivo senza altre modifiche.

Gratis, nel browser, senza limiti

Questo strumento gira interamente nel browser: il payload che incolli non esce dal tuo dispositivo, non passa da nessun server per essere trasformato. È gratis e senza limiti d'uso — comodo anche per webhook che contengono dati di clienti, dove mandarli a un servizio esterno per una semplice trasformazione sarebbe un problema di per sé, anche se i dati non vengono conservati da nessuna parte.

Quando serve davvero

Un servizio manda un evento con una struttura, il tuo CRM ne accetta un'altra: invece di scrivere codice di trasformazione per ogni integrazione, definisci la mappatura una volta e la riusi ogni volta che arriva un evento simile, senza toccare più codice per un cambio di piccolo dettaglio nei nomi dei campi o nella struttura degli oggetti annidati che il servizio esterno decide di cambiare.

Anche via API, se ti serve automatico

Il modo gratis è pensato per un uso manuale, dalla pagina, evento per evento, quando basta trasformare un payload ogni tanto durante lo sviluppo. Se vuoi che la trasformazione avvenga automaticamente per ogni evento in arrivo, dentro un flusso automatizzato senza intervento umano, lo stesso motore di trasformazione è disponibile via API, a $0.002 a evento elaborato, senza abbonamento né costi fissi.

Collegare un modulo web a un CRM diverso

Rossi & Figli S.r.l. riceve i lead da un modulo con una struttura JSON e li deve inviare al proprio CRM, che si aspetta campi con nomi diversi. Definire la mappatura una volta e riusarla evita di scrivere codice solo per rinominare campi.

Dove finiscono i dati che incollo?

Da nessuna parte: la trasformazione avviene nel browser, il JSON non viene inviato a nessun server. Solo usando la versione API il payload viene elaborato ed eliminato subito dopo.

Funziona con qualsiasi struttura JSON, anche annidata?

Sì, puoi mappare anche campi dentro oggetti annidati o dentro un array, non solo i campi di primo livello.

Leggi la documentazione completa del KIT →