Skip to main content
POST
Key Features:
  • Add agent messages to existing or new conversations
  • Support for external channel integrations (WhatsApp, Chatwoot, CRM)
  • Automatic contact creation and association
This endpoint is different from the Query endpoint, which sends user messages and receives AI responses. This endpoint is for adding agent messages to the conversation history.

Path

string
required
The ID of the agent (CUID format).

Body

Required

string
required
The agent message text to add to the conversation history.

Optional - Basic Configuration

boolean
default:"false"
If true, responds with Server-Sent Events in real-time.
string
ID of the conversation to add the message to. Auto-generated if not provided.
For Chatwoot/CRM integrations: The conversationId format is essential to ensure messages are placed in the correct conversation. Use the format crmchatsappai_{accountId}_{customerId} to match existing conversations. Without the correct format, messages may be added to the wrong conversation thread.
string
Unique ID of the visitor/user. Auto-generated if not provided.
string
default:"api"
Source channel for the message. Valid values: api, dashboard, website, form, whatsapp, telegram, slack, meta, crisp, zapier, mail, mercadolibre, agent_builder, chatwoot, crmchatsappai.
string
External channel identifier for integration with third-party systems. Format varies by integration:
  • WhatsApp: {organizationId}_{agentId}_{telephoneNumber}
Used to link messages from external platforms to conversations in Laburen.
For WhatsApp Embedding: The channelExternalId is essential to ensure messages are placed in the correct conversation. Without it, messages may be added to the wrong conversation thread.
boolean
default:"false"
If true, creates a draft message. Requires authentication.
string
ID of an existing contact to associate with the conversation.

Optional - Contact

object
Contact data to create or associate with the conversation. If a contact with matching email, phone number, or userId exists, it will be used. Otherwise, a new contact will be created.

Optional - Metadata

object
Additional metadata for the message.

Response (without streaming)

string
ID of the created message.
string
ID of the conversation (save this to continue adding messages to the same conversation).
string
ID of the visitor/user.
string
Conversation status (e.g., UNRESOLVED, RESOLVED).

Error Responses

Integration Examples

WhatsApp Embedding Integration

When integrating with WhatsApp via our app
The channelExternalId format: {organizationId}_{agentId}_{telephoneNumber}
Critical: The channelExternalId is essential for WhatsApp Embedding integration. Without it, messages will not be placed in the correct conversation thread. Always include this field with the exact format {organizationId}_{agentId}_{telephoneNumber} when using WhatsApp channel.

Chatwoot

For our chatwoot or external ones:
Critical: The conversationId format is essential for Chatwoot/CRM integrations. Use the exact format crmchatsappai_{accountId}_{customerId} to match existing conversations. Without the correct format, messages will not be placed in the correct conversation thread.