---
title: "Get the messages in a conversation"
method: GET
path: "/api/v1/conversations/{conversation_id}/messages/"
tags: ["messages"]
---

# Get the messages in a conversation

`GET /api/v1/conversations/{conversation_id}/messages/`

## Request

- Base URL: `https://api.prolific.com`
- URL: `https://api.prolific.com/api/v1/conversations/{conversation_id}/messages/`
- Auth: API key in header `Authorization`

Returns the messages in one conversation, oldest first, in the same shape as `GET /api/v1/messages`. The caller must be a member of the conversation. A conversation the caller is not a member of is reported as not found.

Results are paginated. Follow `next` for the following page, or stop when it is null.

## Path parameters

- `conversation_id` string, required

## Query parameters

- `workspace_id` string
- `limit` integer
- `cursor` string

## Response `200`

A page of messages

- ConversationMessages
  - `next` string, nullable, required: URL of the next page, or null on the last page.
  - `results` Message[], required
    - `id` string, required: Unique ID of the message
    - `sender_id` string, required: Id of the user who sent the message
    - `body` string, required: Body of the message.
    - `sent_at` string, date-time, required: Date time when message was sent
    - `type` string: Will only me message for now
    - `channel_id` string, required: The channel ID, for linking back to a thread in the Prolific app.
    - `data` MessageData: Metadata for a message
      - `study_id` string: What study the message relates to. In case this is not automatically filled for the participant, they can choose which study their message relates to.
      - `category` 'payment-timing' | 'payment-issues' | 'technical-issues' | 'feedback' | 'rejections' | 'other': Participants can self-categorise their message before sending it.

## Other responses

- `400`: Error
- `404`: No conversation with this id, or the caller is not a member of it. The API does not distinguish the two.
- `503`: Message service temporarily unavailable
- `504`: Message query timed out

## Changes

- **2026-09-17** `6c9aa73fa51f`: 1 warning, 1 info
  - deleted the `header` request parameter `Authorization`
  - the endpoint scheme security `token` was added to the API
- **2026-09-15** `b871601fe1d2`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/prolific/apis/api-reference/changes/api/v1/conversations/:conversation_id/messages/get.md)

---

[API](https://skmtc.dev/prolific/apis/api-reference.md) - [All operations](https://skmtc.dev/prolific/apis/api-reference/llms.txt) - [OpenAPI document](https://skmtc.dev/prolific/apis/api-reference/revisions/36e3bb40c638?raw)
