Conversations
Conversations are messenger/inbox conversations in your Featurebase organization. Use this endpoint to list and retrieve conversation information.
List conversations
Create a conversation
Get conversation by ID
Delete a conversation
Update a conversation
Reply to a conversation
Redact a conversation part
ModelsExpand Collapse
Conversation object { id, adminAssigneeId, botConversationStateLastUpdatedAt, 26 more }
Whether an admin has manually overridden the language for this conversation. When true, automatic language detection is disabled.
botConversationState: optional "active" or "handed_off_to_human" or "resolved"State of AI agent handling for this conversation
State of AI agent handling for this conversation
Array of conversation parts (messages). Only included when fetching a single conversation by ID.
Array of conversation parts (messages). Only included when fetching a single conversation by ID.
UserMsg object { id, bodyHtml, bodyMarkdown, 8 more } Message from a customer or lead
Message from a customer or lead
tagApplications: optional array of ConversationTagApplication { appliedAt, tagId, appliedBy, 3 more } Reply-level tag applications and provenance for this conversation part
Reply-level tag applications and provenance for this conversation part
AdminMsg object { id, bodyHtml, bodyMarkdown, 8 more } Message from an admin or support agent
Message from an admin or support agent
tagApplications: optional array of ConversationTagApplication { appliedAt, tagId, appliedBy, 3 more } Reply-level tag applications and provenance for this conversation part
Reply-level tag applications and provenance for this conversation part
AdminNote object { id, bodyHtml, bodyMarkdown, 7 more } Internal note visible only to admins
Internal note visible only to admins
tagApplications: optional array of ConversationTagApplication { appliedAt, tagId, appliedBy, 3 more } Reply-level tag applications and provenance for this conversation part
Reply-level tag applications and provenance for this conversation part
EmailMsg object { id, bodyHtml, bodyMarkdown, 8 more } Message sent via email
Message sent via email
tagApplications: optional array of ConversationTagApplication { appliedAt, tagId, appliedBy, 3 more } Reply-level tag applications and provenance for this conversation part
Reply-level tag applications and provenance for this conversation part
BotMsg object { id, bodyHtml, bodyMarkdown, 8 more } Automated message from AI or bot
Automated message from AI or bot
channel: optional "unknown" or "desktop" or "android" or 2 moreChannel through which the message was sent
Channel through which the message was sent
tagApplications: optional array of ConversationTagApplication { appliedAt, tagId, appliedBy, 3 more } Reply-level tag applications and provenance for this conversation part
Reply-level tag applications and provenance for this conversation part
QuickReplyOpts object { id, createdAt, object, 6 more } Presents options for user to choose from
Presents options for user to choose from
tagApplications: optional array of ConversationTagApplication { appliedAt, tagId, appliedBy, 3 more } Reply-level tag applications and provenance for this conversation part
Reply-level tag applications and provenance for this conversation part
QuickReplyResp object { id, bodyHtml, bodyMarkdown, 8 more } User’s selection from quick reply options
User’s selection from quick reply options
tagApplications: optional array of ConversationTagApplication { appliedAt, tagId, appliedBy, 3 more } Reply-level tag applications and provenance for this conversation part
Reply-level tag applications and provenance for this conversation part
RatingRequested object { id, createdAt, csat, 3 more } Represents a persisted CSAT request in the conversation thread
Represents a persisted CSAT request in the conversation thread
csat: object { channel, requestedAt, requestId, 7 more } Canonical CSAT request payload for this thread event
Canonical CSAT request payload for this thread event
status: "pending" or "rated" or "canceled" or "expired"Status of the CSAT request represented by this part
Status of the CSAT request represented by this part
ISO timestamp after which changing the rating is no longer allowed
ISO timestamp after which late submission is no longer allowed
RatingSubmitted object { id, createdAt, csat, 3 more } Represents a persisted CSAT submission in the conversation thread
Represents a persisted CSAT submission in the conversation thread
AttrPrompt object { id, createdAt, form, 6 more } Requests information from user via form
Requests information from user via form
tagApplications: optional array of ConversationTagApplication { appliedAt, tagId, appliedBy, 3 more } Reply-level tag applications and provenance for this conversation part
Reply-level tag applications and provenance for this conversation part
Status object { id, createdAt, object, 4 more } Conversation state changed (open/closed/snoozed)
Conversation state changed (open/closed/snoozed)
Tags object { id, action, createdAt, 8 more } A tag was added to or removed from a specific reply
A tag was added to or removed from a specific reply
WorkflowWait object { id, createdAt, object, 3 more } Represents a workflow wait start, finish, or interruption in the conversation thread
Represents a workflow wait start, finish, or interruption in the conversation thread
workflowWait: object { eventType, occurredAt, interruptedByUserType, 3 more } Workflow wait event payload for this thread event
Workflow wait event payload for this thread event
csatDebug: optional object { requestId, status, changeLockWindowEndsAt, 2 more } Minimal CSAT diagnostics for the current effective request.
Minimal CSAT diagnostics for the current effective request.
csatHistory: optional array of object { channel, isLatestEffective, lastUpdatedAt, 14 more } Historical CSAT requests for this conversation, ordered newest first.
Historical CSAT requests for this conversation, ordered newest first.
Whether this row represents the currently effective CSAT request for the conversation
status: "pending" or "rated" or "canceled" or "expired"Lifecycle status for this historical CSAT request
Lifecycle status for this historical CSAT request
ISO timestamp when edits to an existing rating stop being accepted
ISO timestamp when first-time submissions stop being accepted
csatSummary: optional object { lastUpdatedAt, status, canceledAt, 10 more } Derived CSAT summary for this conversation when a rating request or rating exists.
Derived CSAT summary for this conversation when a rating request or rating exists.
readReceipts: optional array of object { id, lastReadPartId, userType } Read receipts indicating how far each participant has read in the conversation. Each receipt maps a user to their last-read conversation part. The tracked position reflects the system read state and may reference parts the user cannot directly view (e.g., a contact’s read position may point to an internal admin note). Use these receipts to render read indicators and typing awareness, not to infer content access.
Read receipts indicating how far each participant has read in the conversation. Each receipt maps a user to their last-read conversation part. The tracked position reflects the system read state and may reference parts the user cannot directly view (e.g., a contact’s read position may point to an internal admin note). Use these receipts to render read indicators and typing awareness, not to infer content access.
The ID of the last conversation part this user has read. Note: This reflects the system-tracked read position and may reference a part the user cannot directly access (e.g., internal notes for contacts). The read state is advanced to the latest part in the conversation regardless of part visibility.
ConversationPart = object { id, bodyHtml, bodyMarkdown, 8 more } or object { id, bodyHtml, bodyMarkdown, 8 more } or object { id, bodyHtml, bodyMarkdown, 7 more } or 14 moreMessage from a customer or lead
Message from a customer or lead
UserMsg object { id, bodyHtml, bodyMarkdown, 8 more } Message from a customer or lead
Message from a customer or lead
tagApplications: optional array of ConversationTagApplication { appliedAt, tagId, appliedBy, 3 more } Reply-level tag applications and provenance for this conversation part
Reply-level tag applications and provenance for this conversation part
AdminMsg object { id, bodyHtml, bodyMarkdown, 8 more } Message from an admin or support agent
Message from an admin or support agent
tagApplications: optional array of ConversationTagApplication { appliedAt, tagId, appliedBy, 3 more } Reply-level tag applications and provenance for this conversation part
Reply-level tag applications and provenance for this conversation part
AdminNote object { id, bodyHtml, bodyMarkdown, 7 more } Internal note visible only to admins
Internal note visible only to admins
tagApplications: optional array of ConversationTagApplication { appliedAt, tagId, appliedBy, 3 more } Reply-level tag applications and provenance for this conversation part
Reply-level tag applications and provenance for this conversation part
EmailMsg object { id, bodyHtml, bodyMarkdown, 8 more } Message sent via email
Message sent via email
tagApplications: optional array of ConversationTagApplication { appliedAt, tagId, appliedBy, 3 more } Reply-level tag applications and provenance for this conversation part
Reply-level tag applications and provenance for this conversation part
BotMsg object { id, bodyHtml, bodyMarkdown, 8 more } Automated message from AI or bot
Automated message from AI or bot
channel: optional "unknown" or "desktop" or "android" or 2 moreChannel through which the message was sent
Channel through which the message was sent
tagApplications: optional array of ConversationTagApplication { appliedAt, tagId, appliedBy, 3 more } Reply-level tag applications and provenance for this conversation part
Reply-level tag applications and provenance for this conversation part
QuickReplyOpts object { id, createdAt, object, 6 more } Presents options for user to choose from
Presents options for user to choose from
tagApplications: optional array of ConversationTagApplication { appliedAt, tagId, appliedBy, 3 more } Reply-level tag applications and provenance for this conversation part
Reply-level tag applications and provenance for this conversation part
QuickReplyResp object { id, bodyHtml, bodyMarkdown, 8 more } User’s selection from quick reply options
User’s selection from quick reply options
tagApplications: optional array of ConversationTagApplication { appliedAt, tagId, appliedBy, 3 more } Reply-level tag applications and provenance for this conversation part
Reply-level tag applications and provenance for this conversation part
RatingRequested object { id, createdAt, csat, 3 more } Represents a persisted CSAT request in the conversation thread
Represents a persisted CSAT request in the conversation thread
csat: object { channel, requestedAt, requestId, 7 more } Canonical CSAT request payload for this thread event
Canonical CSAT request payload for this thread event
status: "pending" or "rated" or "canceled" or "expired"Status of the CSAT request represented by this part
Status of the CSAT request represented by this part
ISO timestamp after which changing the rating is no longer allowed
ISO timestamp after which late submission is no longer allowed
RatingSubmitted object { id, createdAt, csat, 3 more } Represents a persisted CSAT submission in the conversation thread
Represents a persisted CSAT submission in the conversation thread
AttrPrompt object { id, createdAt, form, 6 more } Requests information from user via form
Requests information from user via form
tagApplications: optional array of ConversationTagApplication { appliedAt, tagId, appliedBy, 3 more } Reply-level tag applications and provenance for this conversation part
Reply-level tag applications and provenance for this conversation part
Status object { id, createdAt, object, 4 more } Conversation state changed (open/closed/snoozed)
Conversation state changed (open/closed/snoozed)
Tags object { id, action, createdAt, 8 more } A tag was added to or removed from a specific reply
A tag was added to or removed from a specific reply
WorkflowWait object { id, createdAt, object, 3 more } Represents a workflow wait start, finish, or interruption in the conversation thread
Represents a workflow wait start, finish, or interruption in the conversation thread
workflowWait: object { eventType, occurredAt, interruptedByUserType, 3 more } Workflow wait event payload for this thread event
Workflow wait event payload for this thread event
ConversationsTags
Conversations are messenger/inbox conversations in your Featurebase organization. Use this endpoint to list and retrieve conversation information.
Attach a tag to a conversation
Detach a tag from a conversation
ConversationsParticipants
Conversations are messenger/inbox conversations in your Featurebase organization. Use this endpoint to list and retrieve conversation information.