BillKit/DocsConsole
Events

Stream events

Receive this account's events as they happen, over Server-Sent Events.

GET/v1/events/stream
Operation stream_events·Scope events:read·OpenAPI v1.1.0

Parameters

ParameterDescription
typearray of enum · queryoptionalOnly events of these exact types, comma-separated, such as invoice.paid,invoice.voided. No wildcards. An unknown type is a 400.
starting_afterstring | null · queryoptionalResume after this event id instead of starting from now. The stream replays every event recorded after it, in order, then continues live. Any of your event ids works, from this stream, GET /v1/events or a webhook. Unknown ids are rejected with a 400. At most 128 characters.
Last-Event-IDstring | nulloptionalStandard SSE resume header, sent automatically by a browser EventSource on reconnect. Used only when starting_after is absent.

Errors

StatusCause
400The request was refused (type: invalid_request_error): a required parameter is missing (parameter_missing), one failed validation (parameter_invalid) or is not one the operation takes (parameter_unknown), and param names it.
401No credential, or one that does not authenticate.
402The account is suspended (tenant_suspended), or the payment provider refused a charge or refund the call made (type: payment_error, code: payment_refused).
403Authenticated, but not allowed: missing scope (insufficient_scope), a key of the wrong mode (mode_mismatch), or a refused origin. Needs the events:read scope.
404No such object in this account and mode.
429Rate limited. Retry-After says when to try again.
500Something failed on BillKit's side (type: api_error). Retry with the same Idempotency-Key.
503Temporarily unable to serve. reason says whether the request was attempted.
Request · curl
curl -X GET https://api.billkit.eu/v1/events/stream \
  -H "Authorization: Bearer $BILLKIT_API_KEY"