Transformer un payload de webhook
Cet outil réécrit la charge utile JSON d’un webhook pour l’adapter au système qui la reçoit : renommer des champs, aplatir une structure imbriquée, ne garder que l’essentiel. Vous collez un événement d’exemple, vous définissez la correspondance entre champs d’entrée et de sortie, et la transformation s’applique — entièrement dans votre navigateur.
Lancer gratuitement
Tout se passe dans votre navigateur : gratuit, sans envoi de vos données.
Deux systèmes qui ne parlent pas la même langue
Un service émet un webhook avec ses propres noms de champs ; celui qui le reçoit en attend d’autres. Entre les deux, il faut une traduction. Plutôt que d’écrire un petit service intermédiaire pour renommer trois clés, vous définissez la correspondance ici et vérifiez le résultat sur un événement réel. Ce qui prenait un déploiement se règle en quelques minutes.
Renommer, aplatir, filtrer
Les opérations courantes sont couvertes : renommer une clé, remonter un champ enfoui dans un objet imbriqué vers la racine, supprimer les champs superflus, imposer une valeur constante. Vous composez ainsi la structure exacte attendue par le système cible, à partir de la charge utile brute reçue, sans toucher au service émetteur que vous ne contrôlez pas toujours et dont vous ne pouvez pas modifier le format.
Tout se passe dans votre navigateur
La transformation s’exécute intégralement sur votre appareil. Le contenu de vos événements — qui contient souvent des identifiants, des montants ou des e-mails de clients — n’est ni transmis, ni enregistré, ni journalisé sur nos serveurs. Vous testez une correspondance sur des données réelles en toute discrétion, fermez l’onglet, et il n’en reste rien. C’est gratuit, sans limite et sans inscription.
Du test manuel à l’automatisation
Ici, sur la page, la mise au point de la correspondance est gratuite et illimitée. Une fois la transformation figée, l’API l’applique à chaque événement, en direct dans votre flux, facturée $0.002 par requête en dollars US. Vous restez maître de la logique ; l’API ne fait qu’exécuter, sans surprise, ce que vous avez validé à la main sur des exemples concrets.
Cas d’usage
Brancher un paiement sur votre CRM
Un webhook de paiement arrive avec vingt champs ; votre CRM en attend cinq, sous d’autres noms. Nadia définit la correspondance, la teste sur un vrai événement, et le pont fonctionne sans écrire de service dédié.
Nettoyer un payload trop verbeux
Un fournisseur envoie une charge utile énorme dont Thomas ne veut que trois champs. Il filtre le superflu et ne transmet à son système que l’essentiel, plus léger et plus clair.
Tester une correspondance avant de la coder
Avant d’implémenter la transformation dans son code, l’équipe de Studio Lumen SAS la met au point ici sur des exemples réels, puis reprend la logique validée.
Questions fréquentes
Mes données sont-elles envoyées sur vos serveurs ?
Non. Dans le navigateur, la transformation s’exécute entièrement sur votre appareil. Le contenu de vos événements n’est ni transmis, ni enregistré, ni journalisé. C’est un argument décisif pour des payloads qui contiennent des données personnelles.
Quelles transformations sont possibles ?
Renommer des champs, aplatir des objets imbriqués, filtrer ou supprimer des clés, imposer des valeurs constantes. De quoi composer la structure exacte attendue par le système qui reçoit l’événement.
Gère-t-il les structures JSON imbriquées ?
Oui. Vous pouvez remonter un champ situé profondément dans un objet vers la racine, ou au contraire regrouper des champs, pour passer d’une forme à une autre sans perdre de données.
Est-ce vraiment gratuit ?
Dans le navigateur, oui : sans limite et sans inscription, puisque tout se calcule sur votre appareil. Pour appliquer la transformation automatiquement via l’API, elle est facturée $0.002 par requête, en dollars US.
Puis-je l’intégrer à mon flux automatisé ?
Oui, via l’API : elle applique votre transformation à chaque événement entrant, au fil de l’eau. D’autres canaux suivront. La mise au point, elle, reste gratuite sur la page.
Faut-il créer un compte ?
Non. L’outil s’utilise directement dans le navigateur, sans inscription. Pour l’usage facturé de l’API, l’achat est direct et se fait en une fois.
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/dev/webhook-transform \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"input":"…"}'const res = await fetch("https://api.kit.forhosting.com/dev/webhook-transform", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"input": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/webhook-transform",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"input": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/webhook-transform", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"input":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"input":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/webhook-transform", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"input": "…"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.webhook_transform",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |