Wann Polling sinnvoll ist
Polling eignet sich für Fälle, in denen ein öffentlicher HTTPS-Endpoint unpraktisch oder unnötig ist:- Lokale Entwicklung: Pollen Sie vom Laptop aus, ohne ngrok oder Tunnel
- Private Netzwerke: Der konsumierende Dienst darf aus dem Internet nicht erreichbar sein
- Batch-Verarbeitung: Sie möchten alle Events des Tages auf einmal, etwa um Bestellungen zur Compliance-Archivierung zu sichern oder Auszahlungen über Nacht abzugleichen
- Systeme, die kein HTTP empfangen können: ein Cronjob, eine Datenpipeline oder ein Skript
Einen Polling-Endpoint anlegen
- Öffnen Sie die Webhook-Seite (Einstellungen → Entwickler → Manage Webhooks)
- Fügen Sie im eingebetteten Webhook-Portal einen neuen Endpoint hinzu und wählen Sie den Typ Polling-Endpoint
- Wählen Sie die Event-Typen aus, die Sie empfangen möchten
- Speichern Sie den Endpoint
Events pollen
Senden Sie einen GET-Request an die Polling-URL mit Ihrem API-Key:payload jeder Nachricht ist exakt der JSON-Body, den ein Webhook-Endpoint erhalten würde, also der { event, data }-Envelope aus dem Payload-Format, umgeben von Nachrichten-Metadaten und einem offset:
Signaturprüfung entfällt, da der Request per API-Key authentifiziert wird und nicht als signierte Zustellung.
Ihre Position committen
Nach der Verarbeitung eines Batches committen Sie denoffset der letzten verarbeiteten Nachricht:
Consumer-IDs
Die{consumer_id} in der URL ist eine von Ihnen gewählte Zeichenkette. Jede Consumer-ID verfolgt ihre eigene Position im Stream, sodass zwei Consumer, die denselben Endpoint lesen, jeweils jedes Event erhalten.
- Verwenden Sie eine stabile ID pro Worker (
kitchen-archive,finance-reconciliation), damit der Fortschritt Neustarts übersteht - Teilen Sie niemals eine Consumer-ID zwischen gleichzeitig laufenden Clients. Zwei Prozesse, die als derselbe Consumer pollen, driften im Stream auseinander und die API gibt Fehler zurück
Der Stream beginnt mit dem Anlegen des Polling-Endpoints. Zuvor gesendete Events sind nicht enthalten.
Ein typischer Polling-Loop
pollOnce() in dem Takt aus, der passt: alle paar Sekunden für Near-Realtime oder einmal pro Nacht für einen täglichen Export.
Weiterleitung an einen privaten Dienst
Wenn Sie lieber bei einer Webhook-artigen HTTP-Zustellung bleiben möchten, Ihr Dienst aber in einem privaten Netzwerk läuft, betreiben Sie Svix Bridge innerhalb dieses Netzwerks. Bridge pollt den Endpoint und leitet jede Nachricht an eine interne URL, an RabbitMQ oder Kafka weiter, inklusive Wiederholungen, wenn eine der beiden Seiten vorübergehend nicht erreichbar ist. Die Seite des Polling-Endpoints im eingebetteten Portal enthält eine Starter-Konfiguration für Bridge, in der App-ID und Endpoint-ID bereits eingetragen sind.Verwandte Themen
Webhooks einrichten
Push-Zustellung an einen öffentlichen HTTPS-Endpoint
Idempotenz
Dasselbe Event sicher mehrfach verarbeiten
Webhook-Events
Jeder Event-Typ, den Sie abonnieren können
Webhooks testen
Zustellungen prüfen und Test-Events versenden