Basics
Errors
Errors share one shape. Switch onerror.type, a closed list; never parse message.
Every error carries
hint, one sentence saying what to change; for a 422 unsupported_content it says what to send instead, param names what was refused and channel the conversation’s channel. Errors that clear by themselves carry retry_after in seconds; every error carries request_id; quote it when asking for help.
Pagination
Lists takelimit (1 to 100, default 20) and after or before, set to the ID of an item you already have, and answer { "data": [...], "has_more": true }. The event log (GET /v0/events) is oldest first, so after moves forward in time; every other list is newest first.
Events
The reference listsGET /v0/events, the live stream (GET /v0/stream, a WebSocket) and the webhook delivery Flow sends to your endpoint. See Events and webhooks.