Get ticket
One ticket with its messages and internal notes, customer, tags and the order panel with tracking.
GET https://cotlet.dev/api/v1/edesk/tickets/{ticket_id}
Returns one ticket as the ticket view shows it: status, type, channel, owner, tags, the customer and every message and internal note in order, oldest first. kind is message for what the customer wrote, reply for what your team sent and note for an internal note. order is the order eDesk linked to the ticket, with shipping status, tracking code and carrier when eDesk has them, and the estimated delivery. order is null when eDesk found no match; use list_orders to look it up.
Parameters
| Name | Type | Description |
|---|---|---|
| ticket_id integer required | integer | Ticket ID from list_tickets, the number eDesk shows as Ticket ID. |
Request
curl https://cotlet.dev/api/v1/edesk/tickets/1 \
-H "Authorization: Bearer $COTLET_API_KEY" result = client.call("edesk", "get_ticket", {"ticket_id":1}) const result = await cotlet.call('edesk', 'get_ticket', {"ticket_id":1}); cotlet call edesk get_ticket --data '{"ticket_id":1}' Example response
{
"ticket_id": 48210,
"subject": "Where is my parcel?",
"status": "to_do",
"type": "Shipping query",
"channel": "Amazon UK - Brightside Home",
"owner": null,
"tags": [],
"customer": {
"name": "Emma Wright",
"email": "emma.wright@example.com"
},
"order": {
"order_id": 90412,
"order_number": "203-7718305-2294466",
"status": "In transit",
"shipped_at": "2026-10-09",
"expected_delivery_to": "2026-10-14",
"tracking": {
"code": "HB204418830GB",
"carrier": "Royal Mail"
}
},
"messages": [
{
"message_id": 771204,
"kind": "message",
"created_at": "2026-10-12 08:15:00",
"body": "It was due on Saturday and nothing has arrived. Where is my parcel?"
}
]
}