---
title: "Webhooks : prévenez vos autres outils en temps réel | Briks"
url: https://briks.dev/fr/docs/webhooks
description: "Envoyez un message signé à un autre outil à chaque publication, envoi de formulaire ou enregistrement modifié. Contenus, signatures, relances, livraisons."
last_updated: 2026-10-08
---

# Webhooks : prévenez vos autres outils en temps réel

Un webhook envoie un court message à un autre outil dès qu'il se passe quelque chose dans votre projet : une publication, une entrée de formulaire, un enregistrement modifié. Cette page explique comment en ajouter un, à quoi ressemble le message, comment l'autre côté peut vérifier qu'il est authentique, et ce qui se passe quand cet autre côté est indisponible.

7 minutes de lecture Vérifié par rapport au studio le 8 octobre 2026

## Ce qu'est un webhook

Voyez cela comme votre projet qui appelle un autre service pour lui dire ce qui vient de se passer. Vous donnez à Briks une adresse (une URL fournie par l'autre outil), vous choisissez les événements à signaler, et chaque fois que l'un d'eux se produit, Briks envoie un message à cette adresse. De nombreux outils d'automatisation, outils de gestion de clients et modules complémentaires de tableur peuvent vous fournir une telle adresse.

Techniquement, chaque message est une requête POST : un appel qui porte un corps, ici écrit en JSON, un format de texte simple que les programmes savent lire. L'outil qui le reçoit lit ce corps et fait ce que vous avez configuré.

| Événement, tel que le studio l'affiche | Code | Envoyé quand |
| --- | --- | --- |
| **Published** | `site.published` | Une nouvelle version du site est en ligne. |
| **Form received** | `form.received` | Un visiteur a envoyé un message via l'un des formulaires du site. |
| **Record changed** | `record.changed` | Un enregistrement de la base de données du projet a été ajouté, modifié ou supprimé. |

`record.changed` suit les modifications faites dans le studio : un enregistrement ajouté, modifié ou supprimé dans l'onglet Database, une collection vidée, ou la base de données restaurée. Les enregistrements que le site en ligne sauvegarde de lui-même, comme une demande de réservation envoyée par un visiteur, ne le déclenchent pas.

`form.received` est envoyé pour les entrées venant de l'aperçu comme de la production. Chaque message indique laquelle, afin que l'autre outil puisse ignorer les entrées de l'aperçu.

Où

1. Projects
2. Your project
3. Settings
4. Webhooks

## Limites de chaque plan

| Plan | Webhooks par projet | Appels par jour et par projet |
| --- | --- | --- |
| Free | 1 | 2,000 |
| Starter | 5 | 5 000 |
| Pro | 10 | 10,000 |
| Studio | 25 | 50,000 |
| Agency | 50 | 100 000 |

Les appels par jour sont partagés avec les tâches planifiées. Chaque tentative d'envoi compte pour un, nouvelles tentatives comprises, et la journée commence à minuit UTC.

Quand les appels du jour sont épuisés, un envoi n'est pas effectué et est marqué **Failed** avec : Today's calls for this project are used up, so this delivery was not sent. Send it again tomorrow.

Quand un projet a autant de webhooks que son forfait le permet, **Add webhook** est grisé et un lien **Get more** à côté du compteur ouvre la fenêtre de mise à niveau, qui nomme le plus petit forfait offrant de la place pour un autre.

## Ajouter un webhook

1. Appuyez sur Add webhook

   Où : Settings, Webhooks

   La page indique combien vous en avez par rapport à votre offre, par exemple 1 sur 5 avec votre offre. Les Editors, Admins et Owners peuvent ajouter des webhooks.

2. Saisissez l'adresse

   Où : Add a webhook

   Collez dans **Address** l'adresse que l'autre outil vous a donnée. Ce doit être une adresse https publique, avec le nom écrit en toutes lettres plutôt qu'un numéro.

3. Ajouter une note

   Où : Add a webhook

   **Note** est facultative, jusqu'à 120 caractères, et vous aide à distinguer les webhooks plus tard : `Enquiries sheet`, par exemple.

4. Choisissez les événements

   Où : Add a webhook

   Cochez les événements dont il doit être informé. **Published** et **Form received** sont cochés au départ ; modifiez-les selon vos besoins.

5. Enregistrer et copier le secret

   Où : Your signing secret

   Appuyez sur **Add webhook**. Une boîte de dialogue affiche le secret de signature, qui commence par `whsec_`. Appuyez sur **Copy** et gardez-le : il n'est affiché qu'une fois. Puis appuyez sur **Done**.

6. Envoyer un test

   Où : Settings, Webhooks

   Ouvrez les trois points du webhook et choisissez **Send a test event**. Vous voyez : A test event is on its way. See how it went under Deliveries.

Chaque webhook de la liste affiche son adresse, sa note et ses événements, le secret avec lequel il est signé (les premiers caractères) et le déroulement de la dernière livraison. Son interrupteur le passe sur **On** ou **Off**, et ses trois points contiennent **Send a test event** (jusqu'à dix par heure, uniquement lorsqu'il est activé), **Change**, **New signing secret** et **Delete**.

## À quoi ressemble une livraison

Chaque envoi comporte les trois mêmes parties : `type` (le code de l'événement), `timestamp` (le moment où il s'est produit, en UTC) et `data` (les détails). Voici une saisie de formulaire :

Une livraison form.received

> `{"type":"form.received","timestamp":"2026-10-08T09:41:07.000Z","data":{"form":{"id":"…","subject":"Demande de mariage","page":"/contact","fields":[{"label":"Nom","value":"Ellie Marsh"},{"label":"Date du mariage","value":"14 juin 2027"}],"replyTo":"ellie@example.com"},"production":true}}`

| Événement | Ce que contient `data` |
| --- | --- |
| `form.received` | `form` : son `id`, son `subject`, la `page` d'où il a été envoyé, `fields` (chacun avec un `label` et une `value`, dans l'ordre du formulaire) et `replyTo`, l'e-mail du visiteur quand le formulaire en demande un. Puis `production` : `true` pour le site en ligne, `false` pour l'aperçu. |
| `site.published` | `url` : l'adresse à laquelle il est passé en ligne. `production` : si le site est en production. `abTest` : si un test A/B est en cours. `served` : si Briks a vu la nouvelle version répondre à cette adresse au moment d'envoyer le message. |
| `record.changed` | `action` : `created`, `updated`, `deleted`, `cleared` ou `restored`. `collection` : la collection concernée. `record` : l'identifiant de l'enregistrement. Les valeurs de l'enregistrement ne sont pas incluses. |
| `test` | Un `message` et le `project`, avec son `id` et son `name`. Envoyé uniquement quand vous appuyez sur **Send a test event**. |

Chaque envoi comporte aussi trois en-têtes : `webhook-id` (l'identifiant du message), `webhook-timestamp` (le moment de l'envoi, en secondes) et `webhook-signature`. Ils suivent le format ouvert Standard Webhooks, donc les outils qui le comprennent peuvent vérifier les envois à votre place.

## Vérifier qu'une livraison est authentique

N'importe qui peut envoyer un message à une adresse, donc le destinataire doit vérifier la signature avant de lui faire confiance. La signature est produite avec le secret de signature que vous seul et Briks possédez. Dès qu'un projet a un webhook, la page Webhooks affiche un court exemple de code sous **Checking a delivery is genuine**. En clair, la vérification se déroule ainsi :

1. Prenez le corps de la requête tel qu'il est arrivé, sous forme de texte, avant de le lire comme du JSON.
2. Reliez le `webhook-id`, le `webhook-timestamp` et le corps par des points.
3. Prenez votre secret, retirez le `whsec_` du début et décodez le reste depuis le base64. C'est la clé.
4. Signez le texte assemblé avec HMAC SHA-256 et cette clé, écrivez le résultat en base64, et placez `v1,` devant.
5. La livraison est authentique si cela correspond à l'une des valeurs séparées par des espaces dans `webhook-signature`, et si l'horodatage date de moins de cinq minutes.

Une livraison renvoyée conserve son `webhook-id`, ce qui permet au destinataire de garder les identifiants déjà traités et d'ignorer les doublons.

Gardez le secret en sécurité

Le secret de signature s'affiche une seule fois et ne peut plus être réaffiché. Si vous le perdez ou s'il fuite, choisissez **New signing secret** dans les trois points du webhook. L'ancien cesse aussitôt de signer les nouvelles livraisons, alors saisissez le nouveau dans l'outil récepteur sans attendre.

## Envois et nouvelles tentatives

Où

1. Projects
2. Your project
3. Settings
4. Webhooks
5. Deliveries

**Deliveries** liste chaque envoi des trente derniers jours, du plus récent au plus ancien. Affinez avec **Status** puis appuyez sur **Show**. Cliquez sur un envoi pour voir le message complet, l'erreur éventuelle et la réponse de l'adresse.

| Statut | Signification |
| --- | --- |
| **Sending** | En attente de sa première tentative. |
| **Nouvelle tentative** | Un essai a échoué et un autre est prévu. La ligne indique quand, après le prochain essai. |
| **Delivered** | L'adresse a répondu avec un statut 2xx, le code du web pour dire que tout s'est bien passé. |
| **Failed** | Toutes les tentatives ont échoué, ou l'envoi n'a pas pu être effectué du tout. |

Chaque essai attend une réponse pendant 15 secondes au maximum. Si la réponse n'est pas un 2xx, Briks réessaie : cinq essais en tout, le premier tout de suite, puis après environ 30 secondes, 2 minutes, 8 minutes et 32 minutes, soit environ 45 minutes du premier au dernier. Une réponse 410 (gone) arrête immédiatement les nouvelles tentatives. Les redirections ne sont pas suivies, donnez donc l'adresse finale.

Une fois qu'une livraison est **Failed** ou **Delivered**, **Send again** renvoie le même message avec le même identifiant, signé à nouveau. Le webhook doit être activé.

## Analyses et paramètres

**Insights** résume les trente derniers jours : **Deliveries**, la part **Delivered**, **Failed after every try** (avec le nombre de nouvelles tentatives nécessaires) et le temps d'**Average answer**. En dessous, **By event** et **By address** montrent où se concentrent les échecs.

**Settings** propose **Download JSON** sous **Download the webhooks**, avec l'adresse, les événements et la note de chaque webhook. Les secrets de signature ne sont jamais inclus. Sa zone de danger contient **Clear log**, qui supprime le journal des envois et arrête toute nouvelle tentative, et **Delete all**, qui supprime tous les webhooks après que vous avez saisi le nom du projet. Les deux sont réservés aux Owners et aux Admins.

## Exemple concret : envoyer les réponses d'un formulaire vers un autre outil

Les envois de formulaire ne peuvent pas être exportés depuis le studio : un webhook permet donc de les conserver dans un autre outil à mesure qu'ils arrivent. Le studio les garde aussi : les 100 derniers s'affichent sous **Settings**, **Forms**.

Une photographe de mariage à York envoie les demandes à sa liste de clients

1. Obtenez une adresse depuis l'autre outil

   Où : Her client list tool

   Elle y crée un webhook entrant et copie l'adresse qu'on lui donne.

2. Ajouter le webhook

   Où : Settings, Webhooks

   Elle colle l'adresse, écrit la note `Client list`, décoche **Published** et laisse seulement **Form received** coché.

3. Donnez le secret à l'outil

   Où : Her client list tool

   Son outil vérifie les signatures, donc elle colle le secret de signature dans ses réglages avant de fermer la boîte de dialogue.

4. Testez-le

   Où : Settings, Webhooks, Deliveries

   Elle envoie un événement de test et le voit **Delivered** sous **Deliveries**.

5. Associez les champs

   Où : Her client list tool

   Elle associe les libellés `fields` Name, Wedding date et Venue aux colonnes de son outil, et lui demande d'ignorer les messages où `production` vaut `false`.

La prochaine demande

> Un couple remplit le formulaire de contact sur son site en ligne.

La demande arrive dans sa boîte de réception, puisque le site est en production, et apparaît dans sa liste de clients un instant après.

## À lire ensuite

- [Les fonctionnalités de votre site **Formulaires** Ajoutez un formulaire, testez-le en aperçu, retrouvez chaque entrée dans le studio, recevez-la par e-mail en production et relayez-la par webhook.](https://briks.dev/fr/docs/forms)
- [Données et automatisation **Tâches planifiées** Planifiez une tâche sur votre site : résumé matinal, nettoyage hebdo. Écrivez l'horaire, lisez chaque exécution, corrigez un échec, voyez les limites du plan.](https://briks.dev/fr/docs/crons)
- [Données et automatisation **Base de données** Voyez ce que stocke votre site, modifiez ou ajoutez des enregistrements à la main, exportez les collections en JSON ou CSV. Qui peut quoi, et les limites.](https://briks.dev/fr/docs/database)
- [Données et automatisation **Journaux** Lisez le journal de création et les requêtes du site sur 24 h, filtrez par niveau ou statut, repérez un formulaire ou une tâche en échec, ou une page lente.](https://briks.dev/fr/docs/logs)

Toujours bloqué ?

Écrivez à [hello@briks.dev](mailto:hello@briks.dev) en indiquant le nom de votre projet et ce que vous espériez voir. Une capture d'écran aide.
