Skip to main content
GET
Get agent conversation

Authorizations

Authorization
string
header
required

Personal access token, sent as Authorization: Bearer <token>. Each operation lists the permission it needs: read_only or full_access. A full-access token can call every operation. A read-only token can call only the operations that list read_only; anything else returns 403 read_only_credential_route_not_allowed.

Path Parameters

conversation_id
string
required

ID of the conversation. Get this from List agent conversation users.

app_id
string
required

ID of the app whose agents to read.

Response

The conversation and its most recent messages.

One conversation with one of the app's agents, with its messages.

id
string
required

ID of the conversation.

Example:

"68a1d2c3e4f5061728394a5b"

app_id
string
required

ID of the app.

Example:

"6820f3a4e7b91d003c45a1f2"

agent_name
string
required

Name of the agent the conversation is with.

Example:

"support_agent"

created_by_id
string | null

ID of the app user who started the conversation. An anonymous visitor's conversation carries anonymous, guest, an empty string, or null instead.

Example:

"68a1d2c3e4f5061728394a6c"

created_by_email
string | null

Email of the app user who started the conversation, or null for an anonymous visitor or an app user who no longer exists.

Example:

"jane@acme.com"

metadata
Metadata · object

Free-form data stored with the conversation. It holds whatever the app set when it created the conversation, plus channel details such as a WhatsApp user's phone number.

Example:
messages
any[]

Up to the 200 most recent messages, oldest first. Each message has a role of user or assistant and its content. An assistant message also lists the tool_calls the agent made and what each one returned, which can include records from the app's data.

Example:
message_count
integer
default:0

Number of messages in the conversation.

Example:

6

credit_count
number
default:0

Credits charged for the agent's replies in the conversation.

Example:

1.5

answering
string
default:ai

Who answers the next customer message: ai (the agent), human (the app owner stepped in or replied from their own WhatsApp Business phone), or escalated (the agent asked for the owner and is waiting).

Example:

"ai"

answering_version
integer
default:1

Version of the answering mode. Send it back as expected_version when changing the mode.

Example:

1

human_until
string<date-time> | null

When a hold taken from the owner's own phone ends and the agent resumes, or null while the owner has stepped in.

escalation_summary
string | null

Why the agent asked for the owner, when it did.

created_date
string<date-time> | null

When the conversation was created, as a UTC timestamp in ISO 8601 format.

Example:

"2026-01-15T09:23:41"

updated_date
string<date-time> | null

When the conversation was last updated, as a UTC timestamp in ISO 8601 format.

Example:

"2026-01-15T09:31:07"