Skip to main content
GET
/
v1
/
conversations
/
{conversation_id}
Get Conversation
curl --request GET \
  --url https://api.trellistech.com/v1/conversations/{conversation_id} \
  --header 'Authorization: Bearer <token>'
{
  "id": "<string>",
  "contact": {
    "id": "<string>",
    "name": "<string>",
    "email": "<string>",
    "phone": "<string>",
    "type": "<string>"
  },
  "channel": "<string>",
  "status": "<string>",
  "property_id": "<string>",
  "property_name": "<string>",
  "reservation": {
    "id": "<string>",
    "check_in": "<string>",
    "check_out": "<string>",
    "status": "<string>"
  },
  "assigned_to": {
    "id": "<string>",
    "name": "<string>"
  },
  "messages": [
    {
      "id": "<string>",
      "content": "<string>",
      "direction": "<string>",
      "sender_name": "<string>",
      "status": "<string>",
      "sent_at": "<string>"
    }
  ],
  "unread_count": 123,
  "created_at": "<string>",
  "updated_at": "<string>"
}
Returns the full details of a specific conversation, including the complete message history, contact information, and any related reservation context.

Path Parameters

conversation_id
string
required
The unique identifier of the conversation.

Example Request

curl -H "Authorization: Bearer trls_live_abc123..." \
  "https://api.trellistech.com/v1/conversations/c1a2b3c4-5678-9abc-def0-555555555555"

Response

id
string
Unique identifier for the conversation.
contact
object
The contact associated with this conversation.
channel
string
Communication channel (e.g., “AIRBNB”, “WHATSAPP”, “EMAIL”).
status
string
Current conversation status.
property_id
string
ID of the related property, if applicable.
property_name
string
Name of the related property, if applicable.
reservation
object
Related reservation context, if the conversation is associated with a booking.
assigned_to
object
The team member assigned to this conversation.
messages
array
Complete message history, ordered chronologically.
unread_count
integer
Number of unread messages.
created_at
string
ISO 8601 timestamp of when the conversation was created.
updated_at
string
ISO 8601 timestamp of the last activity.

Example Response

200
{
  "id": "c1a2b3c4-5678-9abc-def0-555555555555",
  "contact": {
    "id": "ct-001",
    "name": "Maria Garcia",
    "email": "maria.garcia@example.com",
    "phone": "+1-555-0123",
    "type": "guest"
  },
  "channel": "AIRBNB",
  "status": "TODO",
  "property_id": "a1b2c3d4-5678-9abc-def0-123456789abc",
  "property_name": "Sunset Villa",
  "reservation": {
    "id": "r1a2b3c4-5678-9abc-def0-111111111111",
    "check_in": "2026-04-10",
    "check_out": "2026-04-15",
    "status": "CONFIRMED"
  },
  "assigned_to": {
    "id": "u1a2b3c4-1111-2222-3333-444444444444",
    "name": "Ana Lopez"
  },
  "messages": [
    {
      "id": "m-001",
      "content": "Hi Maria! Thank you for booking Sunset Villa. We're looking forward to hosting you. Let us know if you have any questions before your stay!",
      "direction": "outbound",
      "sender_name": "Ana Lopez",
      "status": "delivered",
      "sent_at": "2026-03-01T09:00:00Z"
    },
    {
      "id": "m-002",
      "content": "Thank you, Ana! I'm really excited about the trip. Quick question - do you provide beach towels or should we bring our own?",
      "direction": "inbound",
      "sender_name": "Maria Garcia",
      "status": "read",
      "sent_at": "2026-03-02T14:30:00Z"
    },
    {
      "id": "m-003",
      "content": "Great question! We provide fresh beach towels for all guests. You'll find them in the pool house. Anything else you need?",
      "direction": "outbound",
      "sender_name": "Ana Lopez",
      "status": "delivered",
      "sent_at": "2026-03-02T15:00:00Z"
    },
    {
      "id": "m-004",
      "content": "Hi! Is early check-in available on April 10th? We're arriving around noon.",
      "direction": "inbound",
      "sender_name": "Maria Garcia",
      "status": "read",
      "sent_at": "2026-04-04T18:30:00Z"
    }
  ],
  "unread_count": 1,
  "created_at": "2026-03-01T08:00:00Z",
  "updated_at": "2026-04-04T18:30:00Z"
}

Error Responses

404
{
  "error": {
    "code": "not_found",
    "message": "No conversation found with the specified ID."
  }
}
401
{
  "error": {
    "code": "unauthorized",
    "message": "Invalid or missing API key."
  }
}