---
title: "Channel message history"
method: GET
path: "/v1/agents/{agent_id}/channels/{channel_id}/messages"
tags: ["Agent Channels"]
---

# Channel message history

`GET /v1/agents/{agent_id}/channels/{channel_id}/messages`

## Request

- Base URL: `https://api.1claw.co`
- URL: `https://api.1claw.co/v1/agents/{agent_id}/channels/{channel_id}/messages`
- Auth: HTTP bearer

List inbound and outbound messages for a channel.

## Path parameters

- `agent_id` string, uuid, required
- `channel_id` string, uuid, required

## Query parameters

- `limit` integer

## Response `200`

Message list

- ChannelMessageListResponse
  - `messages` ChannelMessageResponse[]
    - `id` string, uuid
    - `channel_id` string, uuid
    - `direction` 'inbound' | 'outbound'
    - `external_chat_id` string
    - `external_message_id` string
    - `sender_name` string
    - `content` string
    - `media_url` string
    - `is_voice_message` boolean: Whether this message was a voice message
    - `voice_file_id` string, nullable: Telegram voice file ID
    - `voice_duration_secs` integer, nullable: Duration of voice message in seconds
    - `transcription_status` 'pending' | 'completed' | 'failed', nullable: Status of voice transcription
    - `created_at` string, date-time

## Other responses

- `401`: Authentication required or invalid

---

[API](https://skmtc.dev/1claw/apis/1claw-api.md) · [All operations](https://skmtc.dev/1claw/apis/1claw-api/llms.txt) · [OpenAPI document](https://skmtc.dev/1claw/apis/1claw-api/revisions/5fa0918f3b41?raw)
