Skip to main content
A conversation is the channel-neutral thread. Every interaction - a call, a WhatsApp message, an email - belongs to a conversation, and the conversation belongs to an entity. That one link is why an agent picking up a thread knows where things stand without being briefed: the history is attached to the person, not scattered across channel APIs. Conversations are the thin waist of communication state. A WhatsApp message, a 12-minute phone call, and an inbound email are technically nothing alike - different providers, payloads, and storage. But they share the four facts that matter: who participated, which conversation they belong to, what outcome resulted, and which event fired. Conversations normalize every channel down to that shape, so everything above them - agents, flows, analytics - works on threads instead of channel-specific records.

The primitives

On the spine

Conversations sit at the center of the spine: channels deliver to an entity, and every touch lands as an interaction on that entity’s conversation. The component reads entity identity to attach each interaction to the right thread, and writes the interaction record and its resulting outcome. Every change - interaction created, conversation updated, outcome recorded - emits an event.

What stays hidden

Channel-specific storage details. How a WhatsApp payload, a call recording reference, and a raw email are persisted differs per channel, and none of it surfaces in the conversation model. You query threads, interactions, and outcomes; the per-channel record formats stay internal.

Status

In build. The channel-neutral thread model is shipping in the open. Today, each call produces a transcript (Recordings & Transcripts) and the platform shows a per-person conversation view (Conversation view). There is no callable conversations API yet.

Go deeper

Conversation view

The per-person conversation view in the platform today.

Recordings & Transcripts

What each call produces today - the first interaction type.

Entities

The system-of-record identity every conversation belongs to.

Events

The events conversations and interactions emit.