---
title: "Get conversation messages"
method: GET
path: "/v1/{organization}/conversation/{conversation_id}/messages/"
tags: ["Conversation"]
---

# Get conversation messages

`GET /v1/{organization}/conversation/{conversation_id}/messages/`

## Request

- Base URL: `https://api.amigo.ai`
- URL: `https://api.amigo.ai/v1/{organization}/conversation/{conversation_id}/messages/`
- Auth: HTTP bearer and API key in header `X-ORG-ID` and HTTP basic
- TypeScript: <https://skmtc.dev/amigo/apis/amigo-api/docs/v1/:organization/conversation/:conversation_id/messages/get.ts> (a function with typed inputs; its response is checked against the schema)

Retrieve messages in a conversation, sorted in the specified order, up to the specified limit.

#### Permissions
This endpoint is impacted by the following permissions:
* Only messages that the authenticated user has `Conversation.GetMessage` permission on will be returned.

## Path parameters

- `organization` string, required
- `conversation_id` string, required: The identifier of the conversation.

## Query parameters

- `id` string[]: The IDs of the messages to retrieve.
- `message_type` MessageType[]: The type of messages to retrieve.
- `interaction_id` string[]: The IDs of the interactions to retrieve messages for.
- `limit` integer: The maximum number of messages to return. At most 500 messages can be returned in one request.
- `continuation_token` integer: The continuation token to use to retrieve the next set of messages.
- `sort_by` string[]: The field to sort the messages by. Supported fields are `interaction_id` and `created_at`. Specify a `+` before the field name to indicate ascending sorting and `-` for descending sorting. Multiple fields can be specified to break ties.

## Headers

- `x-mongo-cluster-name` string, nullable: The Mongo cluster name to perform this request in. This is usually not needed unless the organization does not exist yet in the Amigo organization infra config database.
- `Sec-WebSocket-Protocol` string[]

## Response `200`

Succeeded.

- SrcAppEndpointsConversationGetConversationMessagesResponse
  - `messages` MessageInstance[], required: The retrieved messages.
    - `id` string, required
    - `interaction_id` string, required: The identifier of the interaction.
    - `created_at` string, date-time, required: The time at which this message was created.
    - `sender` string, required: A human-friendly name of the sender of the message.
    - `message` string, required: The text content of the message.
    - `format` 'text' | 'voice', required
    - `message_type` 'user-message' | 'agent-message' | 'agent-inner-thought' | 'external-event', required
  - `has_more` boolean, required: Whether there are more, earlier messages in the conversation to retrieve.
  - `continuation_token` integer, nullable, required: The continuation token to use to retrieve the next set of messages.

## Other responses

- `401`: Invalid authorization credentials.
- `403`: Missing required permissions.
- `404`: Specified organization or conversation is not found.
- `422`: Invalid request path parameter failed validation.
- `429`: The user has exceeded the rate limit of 20 requests per minute for this endpoint.
- `503`: The service is going through temporary maintenance.

## Changes

> 58 revisions in range; 3 not diffed.

- **2026-10-19** `dc823d012f4f`: 1 breaking
  - for the `query` request parameter `message_type`, default value was changed from `external-event, user-message, agent-message` to `agent-message, external-event, user-message`
- **2026-10-19** `08ce51ddd896`: 1 breaking
  - for the `query` request parameter `message_type`, default value was changed from `agent-message, user-message, external-event` to `external-event, user-message, agent-message`
- **2026-10-18** `bd2a419a309c`: 1 breaking
  - for the `query` request parameter `message_type`, default value was changed from `external-event, agent-message, user-message` to `agent-message, user-message, external-event`
- **2026-10-18** `a7433fb5bb39`: 1 breaking
  - for the `query` request parameter `message_type`, default value was changed from `agent-message, user-message, external-event` to `external-event, agent-message, user-message`
- **2026-10-18** `2d265ff3564b`: 1 breaking
  - for the `query` request parameter `message_type`, default value was changed from `user-message, external-event, agent-message` to `agent-message, user-message, external-event`

[Operation history](https://skmtc.dev/amigo/apis/amigo-api/changes/v1/:organization/conversation/:conversation_id/messages/get.md)

---

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