LiveAgent
Manage tickets (conversations), agents, and messages in LiveAgent via the LiveAgent REST API.
No external dependencies — standard library Python only, no credential record required. Pass your API key as a direct tool input.
What it does
Branches on an operation input and calls the corresponding LiveAgent API endpoint
at {baseUrl}/api, returning the raw JSON response body and HTTP status.
Operations
| operation | method | endpoint | notes |
|---|---|---|---|
list_conversations |
GET | /api/conversations |
Optional dateFrom/dateTo filters |
get_conversation |
GET | /api/conversations/{conversationId} |
Single ticket detail |
add_message |
POST | /api/conversations/{conversationId}/messages |
Append a reply |
set_status |
PUT | /api/conversations/{conversationId}/status |
Change ticket status |
list_agents |
GET | /api/agents or /api/agents/{agentIdentifier} |
All agents or one by email/id |
agent_reports |
GET | /api/reports/agents |
Performance metrics, optional date range |
All operations require apiKey and baseUrl.
Authentication
LiveAgent authenticates with an API key passed as the ?apikey= query parameter
on every request. No OAuth flow, no session token — a single static key.
To get a key: 1. Log into your LiveAgent panel as an administrator. 2. Go to Configuration > System > API. 3. Copy or generate an API key.
Inputs
| name | required | description |
|---|---|---|
apiKey |
yes | LiveAgent API key. |
operation |
yes | One of the operations listed above. |
baseUrl |
yes | Base URL of your LiveAgent install, e.g. https://acme.ladesk.com. |
conversationId |
for get/add/set | Conversation (ticket) id. |
message |
for add_message |
Reply body text. |
status |
for set_status |
New status code: R (resolved), O (open), P (pending). |
agentIdentifier |
for list_agents |
Agent email or user id. Leave empty to list all agents. |
dateFrom |
optional | Start date YYYY-MM-DD for list_conversations / agent_reports. |
dateTo |
optional | End date YYYY-MM-DD for list_conversations / agent_reports. |
Outputs
| output | description |
|---|---|
result |
Raw response body from LiveAgent (JSON string). |
status |
HTTP status code as a string. |
Examples
List all open conversations:
operation = list_conversations
apiKey = abc123yourapikey
baseUrl = https://acme.ladesk.com
Get a specific ticket:
operation = get_conversation
apiKey = abc123yourapikey
baseUrl = https://acme.ladesk.com
conversationId = XABC-12345
Append a reply:
operation = add_message
apiKey = abc123yourapikey
baseUrl = https://acme.ladesk.com
conversationId = XABC-12345
message = Thank you for contacting us. Your issue has been escalated.
Resolve a ticket:
operation = set_status
apiKey = abc123yourapikey
baseUrl = https://acme.ladesk.com
conversationId = XABC-12345
status = R
List all agents:
operation = list_agents
apiKey = abc123yourapikey
baseUrl = https://acme.ladesk.com
Agent performance report for a date range:
operation = agent_reports
apiKey = abc123yourapikey
baseUrl = https://acme.ladesk.com
dateFrom = 2026-06-01
dateTo = 2026-06-14
Notes
- Non-2xx responses are not transport failures — the tool returns the HTTP status
and LiveAgent error body in
resultso the caller can inspect them. - Response bodies are capped at 5 MB.
- In LiveAgent, tickets and conversations are the same object — there is no separate
/ticketsendpoint in the v1 API;/conversationsis the canonical resource. - Full API reference:
{baseUrl}/docs/api/or https://support.liveagent.com/840770-Complete-API-reference