Search Docs…

Search Docs…

Compte et Facturation

Compte et Facturation

Compte et Facturation

Annuler ou améliorer votre forfait

Annuler ou améliorer votre forfait

Annuler ou améliorer votre forfait

Les webhooks d'ApiFlow sont signés avec une clé secrète pour garantir qu'ils ne sont pas falsifiés en transit et pour confirmer qu'ils ont été envoyés par ApiFlow.

Signature des Webhooks

Lorsque ApiFlow envoie un webhook, il calcule une signature en utilisant l'algorithme HMAC avec la fonction de hachage SHA-256. La signature est ensuite incluse dans l'en-tête X-Webhook-Signature de la requête.

Pour créer un secret de signature de webhook, allez d'abord dans les Paramètres du compte dans le portail des développeurs et cliquez sur l'onglet “Clés”.

Ici, vous pouvez créer un nouveau secret en cliquant sur “Remplacer le secret”. Il ne sera montré qu'une seule fois, donc sauvegardez-le en toute sécurité.

Vérification des Webhooks

Pour vérifier un webhook, vous devez calculer la signature HMAC du corps de la requête en utilisant la clé secrète et la comparer à la signature dans l'en-tête X-Webhook-Signature.

Notez que vous devez d'abord créer un secret de signature de webhook dans les Paramètres du compte dans le portail des développeurs.

Voici un exemple de comment vérifier un webhook en Node.js :

const crypto = require('node:crypto');

function verifyWebhookSignature(key, data, signature) {

	const expectedSignature = crypto.createHmac('sha256', key)
        .update(data)
        .digest('hex');

	return expectedSignature === signature;
}

//...

app.post('/webhook', (req, res) => {
    const isValid = verifyWebhookSignature(
        process.env.WEBHOOK_SECRET,
        JSON.stringify(req.body),
        req.headers['x-webhook-signature']
    );

    //...
});