Ein Webhook ist eine URL von Ihnen, auf die wir ein POST schicken, wenn auf einem verbundenen Konto etwas passiert — eine Nachricht kommt an, eine Verbindung wird hinzugefügt, ein Konto braucht Aufmerksamkeit. Er ersetzt das Pollen, was bei einer API mit Nutzungsgrenzen keine Stilfrage ist, sondern der Unterschied zwischen funktionieren und nicht funktionieren.
Prüfen Sie die Signatur. Jedes Mal.
Ihr Endpunkt steht im öffentlichen Internet, und alles, was ihn erreicht, kann dort schicken, was es will. Jede Zustellung trägt eine Signatur, berechnet aus einem Geheimnis, das nur Sie und wir haben; prüfen Sie sie, bevor Sie den Körper lesen, und vergleichen Sie in konstanter Zeit statt mit einem Zeichenkettenvergleich, der früh aussteigt.
Rechnen Sie damit, dasselbe Ereignis zweimal zu bekommen
Die Zustellung erfolgt mindestens einmal. Wenn Ihr Endpunkt langsam ist, einen 500 zurückgibt oder auch nur so aussieht, kommt dasselbe Ereignis noch einmal. Das ist kein Fehler, den man meldet; das ist die Zusage. Machen Sie den Handler idempotent, und das Problem verschwindet.
Antworten Sie schnell mit 200 und erledigen Sie die Arbeit danach. Ein Handler, der zehn Sekunden lang andere APIs aufruft, bevor er antwortet, ist ein Handler, der wiederholt wird, während er noch arbeitet.
Häufige Fragen
Mein Assistent hat keinen Server. Kann er Webhooks bekommen?
Ja, über den KI-Posteingang: ein Webhook, den wir für Ihre KI aufbewahren, statt ihn irgendwohin zu senden. Er hält jedes Ereignis Ihrer verbundenen Konten 30 Tage lang vor, und ein Assistent oder ein Raum-Agent mit angekreuztem MakeHybrid liest ihn auf Nachfrage.
Kann ein Webhook einen KI-Agenten in einem Projektraum starten?
Nicht direkt, denn Räume antworten auf Nachrichten. Ihr Webhook-Handler kann einem Raum als externer KI-Agent beitreten und das Ereignis dort posten und dabei den Agenten, der darauf handeln soll, per @mention erwähnen.