List messages in a conversation
The transcript, newest first. Page backwards through history with next_cursor.
Authorization
bearerAuth An API key from Settings → Integrations → Webhook (org admins only), sent as Authorization: Bearer rf_org_….
The scope is ranked — a key satisfies any requirement at or below its own tier:
read— see leads, conversations, transcripts and handoffs. Never changes anything.write— create and update leads, claim and resolve handoffs.admin— mint and revoke tokens, and change org-wide integration settings.
There is no approve scope. It was a rung once; it is not one now, and a key requested with it is rejected.
Tokens are org-scoped: one sees every agent's leads in its org. There is no project dimension. The token is shown once at creation and stored only as a hash.
In: header
Path Parameters
The conversation to read.
uuidQuery Parameters
Page size, 1–100. Defaults to 50.
1 <= value <= 10050Opaque cursor from a previous response's next_cursor. Omit for the first page.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/api/v1/conversations/497f6eca-6276-4993-bfeb-53cbbbba6f08/messages"{ "object": "list", "data": [ { "object": "message", "id": "1f0b7e91-2c44-4a7e-91d8-6a3f2b5c0e11", "conversation_id": "8c2d41aa-0f3e-4d61-9d0b-77b1c4e2a910", "direction": "outbound", "sender_type": "ai", "content": "Happy to help — what's your budget range?", "platform_message_id": "wamid.HBgLOTcxNTAxMjM0NTY3", "media": null, "created_at": "2026-07-15T09:31:12.000Z" } ], "next_cursor": null, "url": "/api/v1/conversations/8c2d41aa-0f3e-4d61-9d0b-77b1c4e2a910/messages"}