Skip to main content
GET
Retrieve conversations by AI contact

Overview

Retrieve conversations with a contact, automatically grouped into conversation threads. Messages are intelligently organized by time gaps and context, making it easy to understand the flow of communication. This endpoint is ideal when you want to display conversation history in a chat-like interface with messages grouped into distinct conversation sessions.

Use Cases

  • Chat Interface: Display conversation history in a threaded chat UI
  • Conversation Analysis: Analyze conversation patterns and engagement
  • Context Building: Get conversation context for AI or agent responses
  • Support Ticket View: Show conversation threads for support tickets
  • Activity Timeline: Display communication timeline with grouped sessions
  • Export Conversations: Export conversation history for records

Authentication

This endpoint requires authentication using an API key. Include your API key in the request header:

Path Parameters

Query Parameters

Days Back: If not provided, retrieves all conversations. Use this to limit results to recent conversations only.

Response Structure

Returns an array of conversation objects. Each conversation represents a grouped thread of messages:

Conversation Object

Message Object

Each message in the conversation_detail array contains:

Example Request

Get All Conversations

Get Last 7 Days of Conversations

Example Response

Common Use Cases

1. Display Chat Interface

2. Get Recent Conversations Only

3. Analyze Conversation Patterns

4. Export Conversation History

Key Features

Agent vs AI Detection

This endpoint provides visibility into who sent each outbound message:
  • user_id present: Message was sent by a human agent
  • assistant_id present: Message was sent by AI assistant
  • Both null: Message sent by customer (inbound)

Message Types

The endpoint supports various message types:
  • text: Regular text messages
  • image: Image messages
  • video: Video messages
  • audio: Audio/voice messages
  • reaction: Emoji reactions to messages
  • document: File/document attachments

How Conversations Are Grouped

Messages are automatically grouped into conversations based on:
  1. Time Gaps: Messages separated by long periods are in different conversations
  2. Context Changes: Stage changes or significant topic shifts create new conversations
  3. Chronological Order: Conversations are ordered by most recent first
Each conversation has a unique conversation_id (numeric) that you can use for reference.

When to Use This Endpoint

βœ… Use /conversations when:
  • Building a chat interface with conversation threads
  • You want messages automatically grouped
  • Displaying conversation history to users
  • Analyzing conversation patterns
  • Exporting readable conversation transcripts
❌ Don’t use when:
  • You need all messages in a flat list β†’ Use /v2/{aiContactId}/messages
  • You need pagination for large message sets β†’ Use /v2/{aiContactId}/messages
  • You want to process messages sequentially β†’ Use /v2/{aiContactId}/messages

Error Responses

Performance Considerations

  • All Messages: Without daysBack, returns all conversations (can be large)
  • Use daysBack: For better performance, limit to recent conversations
  • No Pagination: All matching conversations returned at once
  • Grouped Data: Response is larger than flat message list due to grouping

Comparison with Messages Endpoint

Headers

x-api-key
string
required

API key required to authorize the request

Path Parameters

aiContactId
string
required

ID of the AI contact

Query Parameters

daysBack
number

Number of days back to retrieve conversations

Response

Conversations retrieved successfully.