Skip to main content
Conversations

Reply to a conversation

Adds a reply to an existing conversation. Supports both contact (customer/lead) and admin replies.

POST
/v2/conversations/{id}/reply

Path Parameters

  • id - The conversation ID (short ID)

Request Body

The request body varies based on who is sending the reply:

Contact Reply (customer/lead)

FieldTypeRequiredDescription
typestringYesMust be "contact"
userIdstringNo*External user ID from your system
idstringNo*Featurebase contact ID (24-character ObjectId)
bodyMarkdownstringYesThe message content in markdown format. Images referenced by URL or as base64 data URIs will be automatically uploaded and stored.
messageTypestringYesMust be "reply"
skipNotificationsbooleanNoSkip sending notifications (default: false). Useful for bulk imports.

*At least one of userId or id is required.

Admin Reply

FieldTypeRequiredDescription
typestringYesMust be "admin"
idstringYesFeaturebase admin ID (24-character ObjectId)
bodyMarkdownstringYesThe message content in markdown format. Images referenced by URL or as base64 data URIs will be automatically uploaded and stored.
messageTypestringYes"reply" for customer-visible reply, "note" for internal note
skipNotificationsbooleanNoSkip sending notifications (default: false). Useful for bulk imports.

Response

Returns the created conversation part object with a 201 Created status. The response includes both bodyHtml (with signed image URLs) and bodyMarkdown fields.

Example Contact Reply

{
  "type": "contact",
  "userId": "user_123",
  "bodyMarkdown": "Thank you for your help!",
  "messageType": "reply"
}

Example Admin Reply

{
  "type": "admin",
  "id": "507f1f77bcf86cd799439011",
  "bodyMarkdown": "I'm happy to help! Here's what you need to do...",
  "messageType": "reply"
}

Example Admin Note (Internal)

{
  "type": "admin",
  "id": "507f1f77bcf86cd799439011",
  "bodyMarkdown": "Customer seems frustrated, escalating to tier 2.",
  "messageType": "note"
}

Example Response

{
  "object": "conversation_part",
  "id": "3",
  "partType": "user_msg",
  "bodyHtml": "<p>Thank you for your help!</p>",
  "bodyMarkdown": "Thank you for your help!",
  "author": {
    "type": "customer",
    "id": "676f0f6765bdaa7d7d760f88",
    "name": "John Doe",
    "email": "john@example.com"
  },
  "channel": "desktop",
  "createdAt": "2025-01-15T10:40:00.000Z",
  "updatedAt": "2025-01-15T10:40:00.000Z"
}

Version Availability

This endpoint is only available in API version 2026-01-01.nova and newer.

Authorizationstringheaderrequired

API key as Bearer token. Use: Authorization: Bearer sk_...

idstringrequired

Conversation ID (short ID)

Required string length: 1 - 16
Pattern: ^[a-zA-Z0-9]+$
Example: 12345
Featurebase-Versionenum<string>header

API version for this request. Defaults to your organization's configured API version if not specified.

Available options: 2026-08-19.orbit, 2026-01-01.nova, 2025-12-12.clover
Example: 2026-08-19.orbit

Body

application/json

Reply from a customer or lead

Response

application/json

Created

Message from a customer or lead