Webhooks

Webhooks API — push sports event updates, no polling

Orbistats' webhooks API subscribes to the events you care about — goals, final results, odds moves — and pushes a signed JSON payload to your endpoint the instant they happen. No polling loop, no wasted requests, no delay waiting for the next poll interval.

What's Included

Everything in the webhooks feed

Included

Event Subscriptions

Subscribe to specific leagues, matches or event types.

Included

Instant Delivery

Payloads sent the moment an event occurs.

Included

Retry Logic

Automatic retries with backoff on failed deliveries.

Security

Signed Payloads

Verify authenticity with an HMAC signature header.

Included

Delivery Logs

See every attempt, response code and retry in your dashboard.

Coverage

10 Sports, One Format

Same event schema across every sport we cover.

Setting Up

Register an endpoint

Register the URL you want events delivered to, and the event types you want to subscribe to.

Request Body
FieldTypeRequiredDescription
urlstringRequiredYour HTTPS endpoint to receive events.
eventsarrayRequiredEvent types to subscribe to, e.g. ["match.goal","match.finished"].
sportstringOptionalLimit the subscription to one sport.
secretstringOptionalCustom signing secret. Auto-generated if omitted.
Example Request
POST /v1/webhooks
Authorization: Bearer YOUR_API_KEY
{
  "url": "https://yourapp.com/webhook",
  "events": ["match.goal", "match.finished"]
}
Example Event
POST your endpoint

What we send you

Every event arrives as a signed POST request to the URL you registered.

Payload
POST https://yourapp.com/webhook
X-Orbistats-Signature: sha256=a1b2c3...
{
  "event": "match.finished",
  "match_id": 48213,
  "sport": "football",
  "final_score": "2-1",
  "timestamp": "2026-09-14T16:52:11Z"
}
Verifying the Signature

Compute an HMAC-SHA256 of the raw request body using your webhook secret, and compare it to the X-Orbistats-Signature header before trusting the payload.

Your Response
200Acknowledged — we mark the delivery successful.
4xx / 5xxWe retry with exponential backoff, up to 5 attempts.
Event Types

What you can subscribe to

EventFires When
match.startedA match kicks off.
match.goalA goal or scoring event occurs.
match.finishedA match ends, final score included.
odds.movedA price moves past your configured threshold.
Code Examples

Register a webhook from any language

Official SDKs cover Python, JavaScript and PHP — every other language works over plain REST.

cURL
Python
JavaScript
curl -X POST https://api.orbistats.com/v1/webhooks \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{"url":"https://yourapp.com/webhook","events":["match.goal"]}'
See Also

Related products & sports

Prefer to hold a connection open instead of receiving pushes? Or jump straight to a sport-specific page.

Get Started

Start free. Upgrade when you need enterprise SLAs.

Self-serve API keys for developers today — dedicated infrastructure, custom feeds and SLAs when you're ready.