API (Application Programming Interface)
Eine definierte Schnittstelle, über die Softwaresysteme miteinander kommunizieren können – der Standard für die Integration von KI-Diensten in Anwendungen.
Ein Mechanismus, bei dem ein Server automatisch eine HTTP-Anfrage an eine vordefinierte URL sendet, wenn ein bestimmtes Ereignis eintritt – 'Don't call us, we'll call you'.
Ein Webhook ist eine automatische Benachrichtigung von Server zu Server – “Don’t call us, we’ll call you”. Statt ständig nachzufragen, sagt der Server dir Bescheid, sobald etwas passiert.
Polling vs. Webhook:
Polling: App → "Neue Zahlung?" → Server → "Nein"
App → "Neue Zahlung?" → Server → "Nein"
App → "Neue Zahlung?" → Server → "Ja!" → Verarbeitung
Webhook: (App wartet)
Server → "Neue Zahlung!" → App → Verarbeitung
Typische Anwendungen: Zahlungsbenachrichtigungen (Stripe), CI/CD-Trigger (GitHub), Chat-Bots (Slack), KI-Workflow-Benachrichtigungen.
app.post('/webhook/stripe', (req, res) => {
const sig = req.headers['stripe-signature'];
// Signatur verifizieren
const event = stripe.webhooks.constructEvent(
req.rawBody, sig, process.env.WEBHOOK_SECRET
);
// Event verarbeiten
if (event.type === 'payment_intent.succeeded') {
const payment = event.data.object;
await fulfillOrder(payment.metadata.orderId);
}
res.json({ received: true }); // Schnell mit 200 antworten!
});
Webhooks sind ein Kernbaustein für Agentic Workflows und Event-driven AI:
| Webhook | Polling | WebSocket | |
|---|---|---|---|
| Richtung | Server → Client | Client → Server | Bidirektional |
| Latenz | Niedrig | Hoch | Sehr niedrig |
| Ressourcen | Effizient | Verschwenderisch | Verbindung offen |
| Ideal für | Seltene Events | Einfache Systeme | Echtzeit-Daten |
Ein Webhook ist wie ein Paketbenachrichtigungsdienst: Statt ständig beim Paketshop nachzufragen, ob dein Paket da ist (Polling), bekommst du automatisch eine Nachricht, sobald es angekommen ist.
Server-zu-Server-Benachrichtigung bei Ereignissen (Push statt Pull)
Effizienter als Polling, da nur bei tatsächlichen Events kommuniziert wird
Standard für Integrationen: Zahlungen, CI/CD, Chat-Bots, KI-Workflows
Zahlungsbenachrichtigung
Stripe sendet einen Webhook, wenn eine Zahlung erfolgreich war
CI/CD-Trigger
GitHub sendet einen Webhook bei jedem Push, der eine Build-Pipeline startet
KI-Workflows
Benachrichtigung, wenn ein LLM-Training abgeschlossen ist oder ein Batch-Job fertig
Chat-Integrationen
Slack oder Discord Bots empfangen Nachrichten über Webhooks
Bei einer API fragst DU den Server (Pull). Bei einem Webhook ruft der SERVER DICH an (Push). APIs sind synchron (Frage → Antwort), Webhooks sind asynchron (Ereignis → Benachrichtigung).
Webhook-Signatur verifizieren (HMAC), HTTPS verwenden, IP-Whitelisting, Replay-Schutz durch Timestamps und idempotente Verarbeitung.
Um einen Webhook zu testen, können Sie Tools wie Postman oder Insomnia verwenden, um HTTP-Anfragen an die Webhook-URL zu senden. Alternativ können Sie auch einen lokalen Server einrichten, der die Anfragen empfängt und die Antworten protokolliert.
Webhooks werden häufig in der Integration von Anwendungen verwendet, z.B. um Benachrichtigungen über neue Ereignisse in Echtzeit zu erhalten, wie bei Zahlungsabwicklungen oder beim Aktualisieren von Daten in CRM-Systemen. Sie ermöglichen eine effiziente Kommunikation zwischen verschiedenen Diensten.