List one page of the channel transcript for a participant — the conversation as they had it.
Unlike `topics/{topic}/messages`, this is not scoped to a topic: it interleaves every turn the agent and participant exchanged on `channelAddress`, whichever topic each ran on, newest-first. Each row carries its `topicId` so a client can mark where the conversation moved onto a ticket and back. Use it for the "read the whole chat" view; use the topic thread for "read this one concern". `channelAddress` is required and single-valued by design — a participant reachable on both email and WhatsApp held two conversations, not one interleaved stream. Returns an empty page when nothing ran on that channel.
Authorization
Bearer JWT Authorization header using the Bearer scheme. Enter 'Bearer' [space] and then your token.
In: header
Path Parameters
The unique identifier of the agent.
The tenant identifier
Query Parameters
The participant whose conversation to read.
uuidThe participant address the conversation ran on.
The maximum number of items to return per page
int32int32Opaque cursor token from an external system (e.g. RAG API). When set, M:Fruxon.Common.Collections.PageToken.AsString returns this value directly instead of encoding Fruxon.Common.Collections.PageToken.Skip.
Response Body
curl -X GET "https://api.fruxon.com/v1/tenants/string/agents/string/conversation/messages"{
"items": [
{
"id": "string",
"role": "string",
"agentId": "string",
"content": "string",
"createdAt": 0,
"occurredAt": 0,
"sessionId": "string",
"topicId": "00000000-0000-0000-0000-000000000000",
"internal": false,
"executionRecordId": "00000000-0000-0000-0000-000000000000",
"traceStepId": "string",
"origin": "AGENT_REPLY",
"author": "PARTICIPANT",
"attachments": []
}
],
"nextPageToken": "string",
"totalCount": 0
}{
"type": "string",
"title": "string",
"status": 0,
"detail": "string",
"instance": "string",
"property1": null,
"property2": null
}{
"type": "string",
"title": "string",
"status": 0,
"detail": "string",
"instance": "string",
"property1": null,
"property2": null
}