List messages in a conversation
Returns the messages within a single conversation in chronological
order. The {id} is the value returned from GET /v1/conversations. A
malformed id returns 400 INVALID_INPUT; a well-formed but unknown id,
including ids belonging to another organization, returns
404 NOT_FOUND.
Each message carries a direction of inbound or outbound; the rest
of the shape is shared across both. Message content is subject to your
retention window: once a message has passed retention, its body
renders as null and media_urls as [], and the original content
cannot be recovered.
Cursor pagination uses meta.next_cursor, which is null on the last
page.
Requires the conversations:read scope.
Authenticate by sending your API key as a bearer token:
Authorization: Bearer am_live_.... Every request is automatically
scoped to the organization that owns the key and to the scopes granted
to that key.
In: header
Path Parameters
Query Parameters
501 <= value <= 200Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/v1/conversations/string/messages"{
"success": true,
"data": [
{
"id": "5a1b2c3d-4e5f-6789-abcd-ef0123456789",
"direction": "inbound",
"phone_number_id": "7c1f0a2d-9e8b-4c3a-9d2e-1f0a2b3c4d5e",
"from_number": "+15554443333",
"to_number": "+15551112222",
"body": "Cancel my appointment please",
"media_urls": [],
"channel": "sms",
"segment_count": 1,
"created_at": "2026-04-28T12:00:01Z",
"redacted_at": null
},
{
"id": "8f3a2b1c-1c2d-4e5f-9a8b-0c1d2e3f4a5b",
"direction": "outbound",
"phone_number_id": "7c1f0a2d-9e8b-4c3a-9d2e-1f0a2b3c4d5e",
"from_number": "+15551112222",
"to_number": "+15554443333",
"body": "Confirmed for Tuesday at 10am.",
"media_urls": [],
"channel": "sms",
"segment_count": 1,
"status": "delivered",
"created_at": "2026-04-28T11:00:00Z",
"redacted_at": null
},
{
"id": "0190a1b2-c3d4-e5f6-a7b8-c9d0e1f2a3b9",
"direction": "outbound",
"phone_number_id": "7c1f0a2d-9e8b-4c3a-9d2e-1f0a2b3c4d5e",
"from_number": "+15551112222",
"to_number": "+15554443333",
"body": null,
"media_urls": [],
"channel": "sms",
"segment_count": 1,
"status": "delivered",
"created_at": "2026-01-10T08:00:00Z",
"redacted_at": "2026-04-10T03:11:42Z"
}
],
"meta": {
"total": 0,
"limit": 50,
"offset": 0,
"next_cursor": null
}
}{
"success": false,
"error": {
"code": "VALIDATION_FAILED",
"message": "validation failed",
"request_id": "01JTBQH2FZ8K1RXC0WJ4Z9P3VM",
"details": {
"to": "must be E.164",
"body": "must be 1..1600 chars"
}
}
}{
"success": false,
"error": {
"code": "UNAUTHORIZED",
"message": "authentication failed",
"request_id": "01JTBQH2FZ8K1RXC0WJ4Z9P3VM"
}
}{
"success": false,
"error": {
"code": "FORBIDDEN",
"message": "missing required scope",
"request_id": "01JTBQH2FZ8K1RXC0WJ4Z9P3VM"
}
}{
"success": false,
"error": {
"code": "NOT_FOUND",
"message": "not found",
"request_id": "01JTBQH2FZ8K1RXC0WJ4Z9P3VM"
}
}{
"success": false,
"error": {
"code": "VALIDATION_FAILED",
"message": "validation failed",
"request_id": "01JTBQH2FZ8K1RXC0WJ4Z9P3VM",
"details": {
"to": "must be E.164",
"body": "must be 1..1600 chars"
}
}
}