ik_live_… ingest key), the token-authed customer portal API for your end customers, and the admin API that drives the console — authenticated by your session in the browser, or by an OAuth access token when a connected agent is acting on your behalf.
Ingest
application/x-www-form-urlencoded, or multipart/form-data — so an HTML form can post straight to an endpoint with no JavaScript (see the quickstart). Anything else is read as JSON regardless of its Content-Type, which is what most webhook providers send.
Whenever the URL names a dataset — a path-form endpoint, or a trailing {dataset} — the payload is stored whole into it and project mapping rules are not evaluated. Rules run on exactly one shape: POST /v1/ingest/{ingest_key} with no dataset, where every matching rule writes its own record and none matching leaves routed empty. A /v1/webhooks/{key}/{slug} request is evaluated against that webhook’s own criteria and mappings, not the project’s rules. Endpoints can additionally require an HMAC signature and an IP allowlist.
Streaming
Customer portal API
Admin API
The console’s admin API lives at/admin/api/projects/{pid}/… and drives everything you see in the app — sign in to explore it. It accepts either a browser session or Authorization: Bearer with an OAuth access token, which is how a connected agent reaches the very same routes. Project-scoped resources:
Workspace-level resources sit directly under
/admin/api/… with no {pid} segment:
Request headers
Response codes
Outbound (to your endpoints)
Deliveries are signed and carryHookie-Signature, Hookie-Event-Id, and Hookie-Delivery-Id. Delivery is at-least-once and unordered — dedupe on the event id and verify the signature.