Get Ticket Details
Retrieves ticket details by ticket ID.
Request Method
GET
Request URL
https://livedesk-api.engagelab.com/api/v2/accounts/tickets/:ticket_id
Authentication
For details, see the authentication instructions in API Overview.
Request
Request Example
curl -X GET 'https://livedesk-api.engagelab.com/api/v2/accounts/tickets/:ticket_id' \
-H 'Content-Type: application/json' \
-H 'Authorization: Basic base64(api_key:api_secret)' \
curl -X GET 'https://livedesk-api.engagelab.com/api/v2/accounts/tickets/:ticket_id' \
-H 'Content-Type: application/json' \
-H 'Authorization: Basic base64(api_key:api_secret)' \
This code block in the floating window
Path Parameters
| Field | Type | Required | Description |
|---|---|---|---|
| ticket_id | String | Yes | Ticket ID. |
Response
Response Example
{
"code": 0,
"message": "Success",
"data": {
"ticket_id": "tk_20251104_789abc",
"title": "Printer jammed and unable to print",
"description": "The customer reported that A4 paper is stuck at the paper output tray and requires urgent attention.",
"attachments": [
{
"file_url": "https://example.com/files/error.jpg"
}
],
"status": "open",
"priority": "high",
"ticket_type": "incident",
"requester": {
"euid": "contact_12345",
"name": "Zhang San",
"email": "zhangsan@example.com",
"phone": "+8613900000000",
"channel_contacts": {
"channel_id": "inbox_100",
"contact_id": "-1001234567890",
"sub_contact_id": "23232323",
"followers": ["u_12345", "u_67890"]
}
},
"submitter": {
"id": "u_99999"
},
"assignment_team": {
"id": 5,
"name": "IT Support"
},
"custom_fields": {
"device_sn": "PRN-2024-001"
},
"conversation_list": [
{
"message_id": "msg_20251104_001",
"sender": {
"id": "u_12345",
"type": "internal_member",
"name": "Support Agent Li"
},
"content": "We have received your feedback and are processing it.",
"content_type": "text",
"attachments": [
{
"file_type": "image/jpeg",
"file_url": "https://example.com/files/progress.jpg"
},
{
"file_type": "application/pdf",
"file_url": "https://example.com/files/report.pdf"
}
],
"sent_at": "2025-11-19T05:55:25Z",
"is_internal": false
}
],
"status_changes": [
{
"to_status": "in_progress",
"changed_at": "2025-11-04T09:25:00+08:00",
"changed_by_type": "user",
"changed_by_id": "u_12345"
},
{
"to_status": "resolved",
"changed_at": "2025-11-04T10:30:00+08:00",
"changed_by_type": "system"
}
],
"tags": ["printer", "hardware"],
"sla": {
"first_response_due": "2025-11-04T10:00:00+08:00",
"resolution_due": "2025-11-05T18:00:00+08:00",
"first_response_at": "2025-11-04T09:20:00+08:00",
"breached": false
},
"followers": [
{ "id": "u_12345" },
{ "id": "u_67890" }
],
"satisfactions": {
"rating": 5,
"feedback": "Very fast handling",
"submitted_at": "2025-11-05T09:20:00+08:00"
},
"created_at": "2025-11-04T09:15:22+08:00",
"updated_at": "2025-11-04T09:18:45+08:00",
"resolved_at": null,
"closed_at": null
}
}
{
"code": 0,
"message": "Success",
"data": {
"ticket_id": "tk_20251104_789abc",
"title": "Printer jammed and unable to print",
"description": "The customer reported that A4 paper is stuck at the paper output tray and requires urgent attention.",
"attachments": [
{
"file_url": "https://example.com/files/error.jpg"
}
],
"status": "open",
"priority": "high",
"ticket_type": "incident",
"requester": {
"euid": "contact_12345",
"name": "Zhang San",
"email": "zhangsan@example.com",
"phone": "+8613900000000",
"channel_contacts": {
"channel_id": "inbox_100",
"contact_id": "-1001234567890",
"sub_contact_id": "23232323",
"followers": ["u_12345", "u_67890"]
}
},
"submitter": {
"id": "u_99999"
},
"assignment_team": {
"id": 5,
"name": "IT Support"
},
"custom_fields": {
"device_sn": "PRN-2024-001"
},
"conversation_list": [
{
"message_id": "msg_20251104_001",
"sender": {
"id": "u_12345",
"type": "internal_member",
"name": "Support Agent Li"
},
"content": "We have received your feedback and are processing it.",
"content_type": "text",
"attachments": [
{
"file_type": "image/jpeg",
"file_url": "https://example.com/files/progress.jpg"
},
{
"file_type": "application/pdf",
"file_url": "https://example.com/files/report.pdf"
}
],
"sent_at": "2025-11-19T05:55:25Z",
"is_internal": false
}
],
"status_changes": [
{
"to_status": "in_progress",
"changed_at": "2025-11-04T09:25:00+08:00",
"changed_by_type": "user",
"changed_by_id": "u_12345"
},
{
"to_status": "resolved",
"changed_at": "2025-11-04T10:30:00+08:00",
"changed_by_type": "system"
}
],
"tags": ["printer", "hardware"],
"sla": {
"first_response_due": "2025-11-04T10:00:00+08:00",
"resolution_due": "2025-11-05T18:00:00+08:00",
"first_response_at": "2025-11-04T09:20:00+08:00",
"breached": false
},
"followers": [
{ "id": "u_12345" },
{ "id": "u_67890" }
],
"satisfactions": {
"rating": 5,
"feedback": "Very fast handling",
"submitted_at": "2025-11-05T09:20:00+08:00"
},
"created_at": "2025-11-04T09:15:22+08:00",
"updated_at": "2025-11-04T09:18:45+08:00",
"resolved_at": null,
"closed_at": null
}
}
This code block in the floating window
Response Parameters
| Field | Type | Required | Description |
|---|---|---|---|
| ticket_id | String | Yes | Unique ticket ID. |
| title | String | Yes | Ticket title. |
| description | String | Yes | Detailed ticket description (supports Markdown). |
| attachments | Array | No | List of ticket-level attachments. |
| attachments.file_name | String | Yes | File name. |
| attachments.file_type | String | Yes | MIME type. |
| attachments.file_url | String | Yes | File URL. |
| attachments.file_size | String | Yes | File size. |
| status | String | Yes | Ticket status, such as open, in_progress, resolved, or closed. |
| priority | String | No | Priority: low, medium, high, or urgent. |
| ticket_type | String | No | Ticket type: incident, question, problem, or task. |
| requester | Object | Yes | Requester information. |
| requester.euid | String | No | Unique contact ID. |
| requester.name | String | No | Contact name. |
| requester.email | String | No | Contact email address. |
| requester.phone | String | No | Contact phone number. |
| requester.channel_contacts | Object | No | Channel contact mapping information (at least one euid must exist). |
| requester.channel_contacts.channel_id | String | Yes | Channel ID. |
| requester.channel_contacts.contact_id | String | Yes | Channel contact ID, such as a Telegram chat_id. |
| requester.channel_contacts.sub_contact_id | String | No | Channel sub-contact ID, such as a Telegram topic_id or email thread_id. |
| requester.channel_contacts.followers | Array | No | Follower ID information used for in-channel pushes or notifications, including the id and name fields. |
| submitter | Object | No | Internal member who submitted the ticket. |
| submitter.id | String | Yes | Submitter user ID. |
| assignment_team | Object | No | Assignment team information. |
| assignment_team.id | Integer | Yes | Team ID. |
| assignment_team.name | String | Yes | Team name. |
| custom_fields | Object | No | Custom fields, such as device serial numbers and order numbers. |
| custom_fields.device_sn | String | Yes | Device serial number. |
| conversation_list | Array | Yes | Complete message history for the ticket. |
| conversation_list.message_id | String | Yes | Unique message ID. |
| conversation_list.sender | Object | Yes | Sender information. |
| conversation_list.sender.id | String | Yes | Sender ID. |
| conversation_list.sender.type | String | Yes | Sender type: internal_member, system, or bot. |
| conversation_list.sender.name | String | No | Sender name. |
| conversation_list.content | String | No | Message text content. |
| conversation_list.content_type | String | Yes | Content type: text, image, file, audio, or video. |
| conversation_list.attachments | Array | No | List of message attachments. |
| conversation_list.attachments.file_type | String | Yes | MIME type. |
| conversation_list.attachments.file_url | String | Yes | File URL. |
| conversation_list.sent_at | String | Yes | Time sent (ISO 8601). |
| conversation_list.is_internal | Boolean | Yes | Whether this is an internal message not visible to customers. |
| status_changes | Array | No | Ticket status change records. |
| status_changes.to_status | String | No | Status after the change, such as open, resolved, or a custom code. |
| status_changes.changed_at | String | No | Time of the change (ISO 8601). |
| status_changes.changed_by_type | String | No | Change source: user, system, or bot. |
| status_changes.changed_by_id | String | No | Returned when changed_by_type is user. |
| tags | Array | No | Ticket tags. |
| sla | Object | No | SLA information. |
| sla.first_response_due | String | No | First response deadline. |
| sla.resolution_due | String | No | Resolution deadline. |
| sla.first_response_at | String | No | Actual first response time. |
| sla.breached | Boolean | No | Whether the SLA was breached. |
| followers | Array | No | Follower list. |
| satisfactions | Object | No | Customer satisfaction survey results. |
| satisfactions.rating | Integer | No | Rating from 1 to 5. |
| satisfactions.feedback | String | No | Written feedback. |
| satisfactions.submitted_at | String | No | Submission time. |
| created_at | String | Yes | Ticket creation time (ISO 8601). |
| updated_at | String | Yes | Time the ticket was last updated. |
| resolved_at | String | No | Resolution time (null if unresolved). |
| closed_at | String | No | Closure time (null if not closed). |










