API Reference
HTTP endpoints for ingestion and project administration.
Kite has separate authentication boundaries for event ingestion and project administration.
| Surface | Authentication | Use |
|---|---|---|
/events, /events/batch | Project environment API key | Backend event ingestion. |
/projects/* | Administrative bearer token and organization header | Config and project operations. |
/livez | None | Process liveness check. |
/readyz | None | Readiness check for traffic, database, shutdown, and workers. |
/startupz | None | Startup completion check. |
/health | None | Compatibility alias for /readyz. |
/metrics | Internal bearer token | Detailed service metrics. |
Authenticated metrics include queue backlog by status, oldest pending age, expired leases, and per-worker last success, duration, consecutive failures, and SLA-delay alerts.
An OpenAPI contract and complete endpoint reference are not available yet. Prefer the SDK for ingestion and the CLI for administrative operations while the public API stabilizes.
Webhook delivery
Webhook delivery is at-least-once. Kite prevents lease expiry from duplicating requests during normal processing, but a worker crash after the receiver accepts the POST and before Kite records completion can cause the same event to be sent again.
Consumers should store and deduplicate the stable event identifier sent in the kite-event-id
header. The same value is also available as id in the JSON payload and remains unchanged across
retries and recovery of abandoned deliveries. A newly created webhook only receives events emitted
after its creation.
See Webhooks and signatures for the payload, retry schedule, and a complete signature verification example. See Backfill and recomputation for delayed data and state replay semantics.