---
title: "List Conversation Messages"
method: GET
path: "/conversations/{conversation_id}/messages"
tags: ["Conversations"]
---

# List Conversation Messages

`GET /conversations/{conversation_id}/messages`

## Request

- Base URL: `https://developers.chatway.app/api/v1`
- URL: `https://developers.chatway.app/api/v1/conversations/{conversation_id}/messages`
- Auth: API key in header `X-API-KEY`

Retrieve one page of a conversation's messages, newest first. Obtain conversation_id from List Conversations or `data.conversation.id` in a message webhook. Follow links.next to read older pages. Each message's identifier is data[].id.

## Path parameters

- `conversation_id` string, required

## Query parameters

- `limit` integer, nullable
- `page` integer, nullable
- `include_fields` string, nullable
- `exclude_fields` string, nullable
- `search` string

## Response `200`

Paginated list responses include `data`, `meta.pagination`, and `links`. Use the `page` and `limit` query parameters to walk results. Follow `links.next` until it is `null`, or increment `page` until `current_page >= total_pages`.

| Field | Description |
|---|---|
| `meta.pagination.total` | Total records across all pages |
| `meta.pagination.count` | Records returned on this page |
| `meta.pagination.per_page` | Page size used for this response (matches `limit`) |
| `meta.pagination.current_page` | Current page number (1-based) |
| `meta.pagination.total_pages` | Total number of pages |
| `links.next` | URL for the next page, or `null` on the last page |
| `links.first` / `links.last` | First and last page URLs |

- object
  - `data` object[], required
    - `type` string, required
    - `id` string, required
    - `attributes` object, required: Returned attributes depend on include_fields and exclude_fields. Filtered-out attributes are omitted. The field types below apply when an attribute is present. If both filters are supplied, only include_fields is applied.
      - `conversation_id` string
      - `chat_contact_id` string, nullable
      - `agent` object, nullable
        - `id` string, nullable, required
        - `name` string, nullable, required
      - `contact` object, nullable
        - `id` string, nullable, required
        - `name` string, nullable, required
        - `email` string, nullable, required
        - `phone` string, nullable, required
      - `origin` string
      - `content` string
      - `type` string
      - `created_at` string, nullable
  - `meta` object, required
    - `pagination` object, required
      - `total` integer, required
      - `count` integer, required
      - `per_page` integer, required
      - `current_page` integer, required
      - `total_pages` integer, required
  - `links` object, required
    - `self` string, required
    - `first` string, required
    - `next` string, nullable, required
    - `last` string, required

## Other responses

- `404`: Conversation not found
- `422`: Validation error

---

[API](https://skmtc.dev/chatway/apis/chatway-developer-docs.md) · [All operations](https://skmtc.dev/chatway/apis/chatway-developer-docs/llms.txt) · [OpenAPI document](https://skmtc.dev/chatway/apis/chatway-developer-docs/revisions/ca1a1da291cc?raw)
