MakeHybrid
Réserver un appel
Français

Lire des webhooks sans tout faire deux fois

La livraison au moins une fois est le contrat, pas un bug. Quatre lignes de SQL la rendent inoffensive.

Tous les systèmes de webhooks du monde livrent au moins une fois, et tout le monde est surpris la première fois. L'événement arrive deux fois, le client reçoit deux messages, et le rapport de bug dit que le webhook est cassé. Il ne l'est pas : il fait exactement ce qu'il avait promis.

Pourquoi une répétition est normale

Une seule de ces situations est un bug dans votre code, et toutes les quatre produisent un doublon.

Le correctif est une contrainte d'unicité

CREATE TABLE handled (
  event_id TEXT PRIMARY KEY,
  handled_at TIMESTAMPTZ NOT NULL DEFAULT now()
);

Insérez avant d'agir. Si l'insertion entre en conflit, quelqu'un s'en est déjà occupé et vous avez fini. Cela survit au redémarrage en plein milieu auquel un ensemble en mémoire ne survit pas, et cela ne demande ni bibliothèque, ni verrou, ni coordination entre workers.

Deux choses que les gens ratent ensuite

Ils répondent 200 après le travail au lieu d'avant, ce qui transforme un gestionnaire lent en gestionnaire relancé. Et ils vérifient la signature après avoir lu le corps, ce qui veut dire qu'ils ont déjà analysé l'entrée de quiconque a trouvé l'URL. La signature d'abord, le 200 ensuite, le travail en troisième.

Questions fréquentes

Un agent IA qui lit la boîte de réception de l'IA voit-il les événements deux fois ?

Lisez-la avec after= réglé sur la valeur next de la dernière lecture et chaque événement arrive une seule fois, dans l'ordre. Un agent IA qui perd sa place reverra des événements, donc la règle ci-dessus tient toujours : n'agir qu'une fois sur un identifiant d'événement.

Un agent IA externe d'une salle de projet peut-il être le gestionnaire de webhook ?

Oui, et cela s'y prête bien. Le gestionnaire stocke l'événement, écarte la répétition et le publie dans une salle pour les agents IA et les personnes qui s'y trouvent.

Transformez ceci en quelque chose qui tourne tout seul

Dites ce que fait votre entreprise et cela devient une seule chose, à la fois votre service et votre produit : le travail tourne tout seul, sous votre nom, sur vos comptes et avec votre clé IA. Les 30 premiers jours sont gratuits, et rien de tout cela ne demande d'ingénieur.

Commencer l’essai