We breiden de ondersteuning voor webhooks actief uit.Net gelanceerd: automatische herhalingen met exponentiële backoff — mislukte leveringen worden nu tot 5 keer opnieuw geprobeerd binnen 30 minuten.Binnenkort beschikbaar:
- Team-brede standaard webhook-URL’s
- Cryptografische handtekeningen voor payloadverificatie
Overzicht
Webhooks leveren real-time HTTP POST-meldingen aan je server wanneer langlopende operaties voltooid zijn. In plaats van de status te polleren, ontvangt je applicatie directe updates.Gebruiksscenario’s
Asynchrone Verwerking
Ontvang een melding wanneer batches of crawls voltooid zijn in plaats van te polleren
Pipeline Triggers
Start automatisch downstream verwerking wanneer data gereed is
Waarschuwingen
Stuur waarschuwingen naar Slack, e-mail of andere systemen bij voltooiing
Data Synchronisatie
Houd je database gesynchroniseerd met Olostep-resultaten
Ondersteunde Evenementen
batch.completed
batch.completed
Wordt geactiveerd wanneer een batch klaar is met verwerken (alle items voltooid of mislukt).
crawl.completed
crawl.completed
Wordt geactiveerd wanneer een crawl klaar is en alle ontdekte pagina’s zijn verwerkt.
Webhooks Instellen
Geefwebhook door bij het aanmaken van een resource. Deze URL ontvangt de voltooiingsmelding.
Parameternaam: De canonieke parameter is
webhook. Voor achterwaartse compatibiliteit wordt webhook_url ook geaccepteerd als alias.Webhook Payload
Alle webhook payloads volgen een uniforme envelopstructuur:Envelopvelden
| Veld | Beschrijving |
|---|---|
id | Evenement-ID — hetzelfde bij alle herhalingspogingen |
object | Type evenement (bijv. event.batch.completed) |
timestamp | Wanneer deze leveringspoging is verzonden (epoch ms) |
delivery_attempt | Huidige poging / max pogingen (bijv. 1/5, 3/5) |
data | De daadwerkelijke resourcegegevens (zelfde formaat als API-respons) |
Herhalingsgedrag
Mislukte webhook leveringen worden automatisch opnieuw geprobeerd met exponentiële backoff over een venster van 30 minuten:| Poging | Vertraging voor poging | Cumulatieve tijd |
|---|---|---|
| 1 | Onmiddellijk | 0 min |
| 2 | ~2 min | ~2 min |
| 3 | ~4 min | ~6 min |
| 4 | ~7 min | ~13 min |
| 5 | ~15 min | ~28 min |
Timeout per verzoek: 30 seconden
Wat telt als succes
Je eindpunt moet binnen 30 seconden een2xx statuscode retourneren. Elke andere respons triggert een herhaling.
| Respons | Resultaat |
|---|---|
200 OK | ✅ Geleverd |
201 Created | ✅ Geleverd |
301 Redirect | ❌ Herhalen (we volgen geen redirects) |
400 Bad Request | ❌ Herhalen |
500 Server Error | ❌ Herhalen |
| Timeout (>30s) | ❌ Herhalen |
| Verbinding geweigerd | ❌ Herhalen |
Best Practices
Reageer snel, verwerk asynchroon
Reageer snel, verwerk asynchroon
Retourneer
200 OK onmiddellijk en verwerk de webhook asynchroon. Als je verwerking langer dan 30 seconden duurt, proberen we opnieuw — wat dubbele leveringen veroorzaakt.Implementeer idempotente handlers
Implementeer idempotente handlers
Gebruik het
id veld om te dedupliceren. Sla verwerkte evenement-ID’s op en sla duplicaten over.Log webhook ontvangsten
Log webhook ontvangsten
Log alle webhook ontvangsten voor debugging. Inclusief de evenement-ID, timestamp en verwerkingsresultaat.
Gebruik HTTPS eindpunten
Gebruik HTTPS eindpunten
Gebruik altijd HTTPS voor webhook eindpunten. HTTP eindpunten zijn kwetsbaar voor afluisteren en man-in-the-middle aanvallen.
Problemen Oplossen
Geen webhooks ontvangen
Geen webhooks ontvangen
- Controleer of de
webhookparameter in je verzoek is opgenomen - Controleer of je eindpunt openbaar toegankelijk is (niet localhost)
- Controleer je serverlogs op binnenkomende verzoeken
- Zorg ervoor dat je een
2xxstatuscode retourneert
Dubbele webhooks ontvangen
Dubbele webhooks ontvangen
Dit is te verwachten tijdens herhalingen. Implementeer idempotente verwerking met behulp van het
id veld:Webhooks verlopen
Webhooks verlopen
Je eindpunt moet binnen 30 seconden reageren. Verwerk webhooks asynchroon:
Binnenkort Beschikbaar
Team Standaard URL
Stel een standaard webhook-URL in in je accountinstellingen. Alle verzoeken zullen deze URL gebruiken, tenzij overschreven.
Handtekeningverificatie
Cryptografische handtekeningen (HMAC-SHA256) om te verifiëren dat webhook payloads van Olostep komen.
Wil je vroegtijdige toegang tot deze functies? Neem contact op via info@olostep.com of sluit je aan bij onze Slack-community.