Skip to main content
GET
/
transcripts
List Transcripts
curl --request GET \
  --url https://voice-livekit.studio.lyzr.ai/v1/transcripts \
  --header 'x-api-key: <api-key>'
{
  "items": [
    {
      "id": "<string>",
      "sessionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "roomName": "<string>",
      "agentId": "<string>",
      "orgId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "createdByUserId": "<string>",
      "sessionReport": {},
      "chatHistory": [
        {}
      ],
      "closeReason": "<string>",
      "durationMs": 123,
      "messageCount": 123,
      "startedAt": "2023-11-07T05:31:56Z",
      "endedAt": "2023-11-07T05:31:56Z",
      "createdAt": "2023-11-07T05:31:56Z",
      "updatedAt": "2023-11-07T05:31:56Z"
    }
  ],
  "total": 42,
  "limit": 10,
  "offset": 0,
  "nextOffset": 10
}
Retrieve a detailed, paginated list of past conversational sessions. The Transcripts endpoint is one of the most powerful tools in the API. It allows you to fetch full chat histories, audit agent performance, extract metadata (like call duration and message counts), and review post-call session reports.
Authentication Required: You must include your API key in the x-api-key header. You will only receive transcripts that fall under your authorized organizational or user scope.

Powerful Filtering Capabilities

To analyze specific slices of your data, you can combine multiple query parameters.

1. Entity Filters

Target specific conversations using IDs:
  • agentId: View all conversations handled by a specific Voice Agent. Great for evaluating how well a newly deployed agent is performing.
  • sessionId: Retrieve the exact transcript for a single, known conversation.
  • orgId: Filter calls belonging to a specific organization (useful for multi-tenant applications).

2. Time-Based Filters

Extract records from specific date ranges using ISO-8601 formatted timestamps (e.g., 2026-03-01T00:00:00Z):
  • from: The start date/time.
  • to: The end date/time.

3. Sorting & Pagination

Manage large datasets effectively:
  • limit & offset: Standard pagination controls.
  • sort: Order your results chronologically (asc) or see the most recent calls first (desc).

Understanding the Response Payload

A successful request returns a paginated list containing an items array. Each item in this array represents a single session and contains rich metadata. Key fields in a Transcript object:
  • chatHistory: An array of message objects representing the turn-by-turn conversation between the human user and the Voice Agent.
  • sessionReport: An intelligent, auto-generated summary or structured data extraction from the call (if configured on your agent).
  • Call Metrics:
    • durationMs: Total length of the session in milliseconds.
    • messageCount: Total number of turns/messages exchanged.
    • closeReason: Why the session ended (e.g., user disconnected, timeout, or agent ended the call).

Authorizations

x-api-key
string
header
required

Query Parameters

limit
integer

The maximum number of transcripts to return per page.

Example:

10

offset
integer

The number of items to skip for pagination.

Example:

0

sort
enum<string>

Sort order based on creation time.

Available options:
asc,
desc
Example:

"desc"

agentId
string

Filter transcripts by a specific Agent ID.

Example:

"f790923795a23467555c0ad6"

orgId
string<uuid>

Filter transcripts by Organization ID.

Example:

"3fa85f64-5717-4562-b3fc-2c963f66afa6"

sessionId
string<uuid>

Fetch the transcript for a specific LiveKit session.

Example:

"3fa85f64-5717-4562-b3fc-2c963f66afa6"

from
string

Start date for filtering (ISO date or ISO date-time with offset). Example: 2026-03-01T00:00:00Z

Example:

"2026-03-01T00:00:00Z"

to
string

End date for filtering (ISO date or ISO date-time with offset). Example: 2026-03-25T23:59:59Z

Example:

"2026-03-25T23:59:59Z"

Response

Paginated transcripts retrieved successfully.

items
object[]
total
integer
Example:

42

limit
integer
Example:

10

offset
integer
Example:

0

nextOffset
integer
Example:

10