API docs
Use the backend API to configure Dispatch, send messages, inspect attempts, and read Ingest data.
Reference
The interactive API reference includes request fields, path parameters, response examples, and downloadable OpenAPI files.
Authentication
Create API keys from the Dispatch dashboard and send them as bearer tokens from your backend. Keep API keys server-side.
Dashboard sessions can also call API routes from the signed-in app. Production integrations should use API keys.
Scopes
Use * for a trusted backend service, or issue narrower keys for specific jobs.
| Scope | Use it for |
|---|---|
app:read / app:write | List, fetch, and create Dispatch apps. |
recipient:read / recipient:write | Manage recipients and create portal sessions. |
event_type:read / event_type:write | List, publish, and archive event types. |
endpoint:read / endpoint:write | Manage recipient endpoints and rotate endpoint secrets. |
message:read / message:write | List, send, inspect, and replay messages. |
Common workflows
- Create apps and event types during product setup.
- Create portal sessions when customers manage their webhook endpoints.
- Send messages when customer-facing events happen in your app.
- List messages and attempts when debugging a customer delivery issue.
- Replay a message after a destination comes back online.
Status codes and errors
200means the requested record or list was returned.201means a configuration object was created.202means a message or replay was accepted and delivery will continue asynchronously.400means the request is missing a required field or has invalid input.401means the request is missing valid authentication.403means the API key does not have the required scope.404means the app, recipient, endpoint, message, or event was not found in your workspace.429means the workspace or plan limit was reached for that action.
Read Ingest state
Use these endpoints when your backend needs a workspace-level read of sources, recent events, or open issues.
For event-level investigation, the dashboard usually gives more context because it includes delivery attempts, payload access, and replay controls.