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

# List Conversation Messages

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

Return the complete transcript, ordered by sequence.

Deliberately unpaginated: transcripts are read as a whole, and image payloads
are references rather than blobs.

## Path parameters

- `conversation_id` string, uuid, required

## Response `200`

Successful Response

- ConversationDetail — Conversation + its messages, ordered by sequence.
  - `conversation` Conversation, required
    - `id` string, uuid, required
    - `project_id` string, uuid, required
    - `title` string, nullable, required
    - `visibility` 'private' | 'project', required
    - `created_at` string, date-time, required
    - `updated_at` string, date-time, required
    - `created_by` string, uuid, nullable
    - `created_by_name` string, nullable
  - `messages` ConversationMessage[], required
    - `id` string, uuid, required
    - `conversation_id` string, uuid, required
    - `sequence` integer, required
    - `role` 'user' | 'assistant' | 'tool', required
    - `content` union[], required
      - union
        - union
          - TextBlock
            - `type` 'text'
            - `text` string, required
          - ToolUseBlock
            - `type` 'tool_use'
            - `id` string, required
            - `name` string, required
            - `input` object, required
            - `provider_signature` string, nullable
          - ToolResultBlock — unresolved $ref
          - ContextBlock — Live state block persisted with a user message. Persistence-only: exists for audit (`text` is the rendered live block exactly as the model saw it; `context` is the structured source). Deliberately absent from agent/types.py — at replay it is either dropped (non-final user messages) or mapped to a plain TextBlock.
            - `type` 'context'
            - `text` string, required
            - `context` MessageContext, required
              - …
        - UnknownBlock
          - `type` string, required
    - `provider` string, nullable
    - `model` string, nullable
    - `prompt_version` string, nullable
    - `input_tokens` integer, nullable
    - `output_tokens` integer, nullable
    - `cache_read_tokens` integer, nullable
    - `cache_write_tokens` integer, nullable
    - `created_at` string, date-time, required

## Other responses

- `4XX` — Client Error
- `5XX` — Server Error

---

[API](https://skmtc.dev/rudus/apis/rudus-api.md) · [All operations](https://skmtc.dev/rudus/apis/rudus-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/rudus/rudus-api/revisions/5673f72c8a5d/schema)
