We breiden de ondersteuning voor webhooks actief uit.Zojuist geland: 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 langdurige operaties zijn voltooid. In plaats van te polleren voor status, ontvangt je applicatie directe updates.Gebruiksscenario’s
Asynchrone Verwerking
Ontvang een melding wanneer batches of crawls zijn voltooid in plaats van te polleren
Pipeline Triggers
Start automatisch downstream-verwerking wanneer gegevens gereed zijn
Waarschuwingen
Stuur waarschuwingen naar Slack, e-mail of andere systemen bij voltooiing
Gegevenssynchronisatie
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 is voltooid 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 | Event 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-reactie) |
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 endpoint moet binnen 30 seconden een2xx statuscode retourneren. Elke andere reactie triggert een herhaling.
| Reactie | 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 leidt tot dubbele leveringen.Implementeer idempotente handlers
Implementeer idempotente handlers
Gebruik het
id veld om te dedupliceren. Sla verwerkte event ID’s op en sla duplicaten over.Log webhook ontvangsten
Log webhook ontvangsten
Log alle webhook ontvangsten voor debugging. Inclusief het event ID, timestamp en verwerkingsresultaat.
Gebruik HTTPS endpoints
Gebruik HTTPS endpoints
Gebruik altijd HTTPS voor webhook endpoints. HTTP endpoints 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 endpoint openbaar toegankelijk is (niet localhost)
- Controleer je serverlogs op binnenkomende verzoeken
- Zorg ervoor dat je een
2xxstatuscode retourneert
Ontvangen van dubbele webhooks
Ontvangen van dubbele webhooks
Dit is te verwachten tijdens herhalingen. Implementeer idempotente verwerking met behulp van het
id veld:Webhooks time-out
Webhooks time-out
Je endpoint 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.
Handtekening Verificatie
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-gemeenschap.