Skip to content

Create conversation

POST/omnichannel/conversations

Opens a new omnichannel conversation on the specified channel. Use this when receiving an inbound contact via an external adapter or when manually creating a conversation from the agent inbox. The conversation_key field can be supplied by the external system for idempotent creation; if omitted, a random 16-character key is generated.

Request

Request body

Content type application/json (required).

FieldTypeRequiredDescription
conversation_keystringNo

Optional external reference key. If omitted, a random 16-character key is generated.

Max length: 80

channelstringYes

The channel on which the conversation was initiated.

One of: "email", "web_chat", "sms", "whatsapp", "internal", "voice", "social"

subjectstringNo

Brief subject line for the conversation.

Max length: 255

statusstringNo

Initial lifecycle status. Defaults to "open".

One of: "open", "pending", "resolved", "closed" · Default: "open"

prioritystringNo

Urgency level. Defaults to "normal".

One of: "low", "normal", "high", "urgent" · Default: "normal"

assigned_tointegerNo

ID of the agent to assign (must exist in tenant users table).

channel_profile_idintegerNo

ID of the channel profile to route this conversation through.

supervisor_user_idintegerNo

ID of the supervising user.

fallback_channelstringNo

Channel to fall back to if the primary becomes unavailable.

One of: "email", "web_chat", "sms", "whatsapp", "internal", "voice", "social"

first_response_due_atstring (date-time)No

SLA first-response deadline (ISO 8601).

escalation_atstring (date-time)No

Auto-escalation trigger timestamp (ISO 8601).

Example

{
  "channel": "email",
  "subject": "Billing question - invoice #1042",
  "status": "open",
  "priority": "high",
  "assigned_to": 7,
  "channel_profile_id": 3,
  "supervisor_user_id": 2,
  "fallback_channel": "sms",
  "first_response_due_at": "2026-04-08T10:00:00Z",
  "escalation_at": "2026-04-08T12:00:00Z"
}

Responses

201 Conversation created successfully

Content type application/json, object · OmnichannelConversationV1.

FieldTypeRequiredDescription
idintegerNo

Auto-incremented primary key.

conversation_keystringNo

Unique external reference key (16 uppercase alphanumeric characters).

Max length: 80

channelstringNo

The communication channel this conversation was initiated on.

One of: "email", "web_chat", "sms", "whatsapp", "voice", "social", "internal"

subjectstring, nullableNo

Short description or subject line for the conversation.

statusstringNo

Current lifecycle status of the conversation.

One of: "open", "pending", "resolved", "closed"

prioritystringNo

Agent urgency priority level.

One of: "low", "normal", "high", "urgent"

quality_statusstringNo

AI/supervisor quality assessment of the conversation.

One of: "pending", "healthy", "watch", "at_risk"

assigned_tointeger, nullableNo

ID of the agent user currently assigned to this conversation.

channel_profile_idinteger, nullableNo

ID of the channel profile (queue/routing) this conversation belongs to.

supervisor_user_idinteger, nullableNo

ID of the supervisor user overseeing this conversation.

fallback_channelstring, nullableNo

Alternate channel to use if the primary channel becomes unavailable.

One of: "email", "web_chat", "sms", "whatsapp", "voice", "social", "internal"

first_response_due_atstring (date-time), nullableNo

SLA deadline for the first agent response.

escalation_atstring (date-time), nullableNo

Timestamp at which the conversation should be automatically escalated.

waiting_since_atstring (date-time), nullableNo

Timestamp since the conversation last entered a waiting state.

created_atstring (date-time)No
updated_atstring (date-time)No

422 Validation failed — check channel enum, foreign key IDs, or date formats

Example request

curl -X POST "https://{tenant}.faciotech.net/api/v1/omnichannel/conversations" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{"channel": "email", "subject": "Billing question - invoice #1042", "status": "open", "priority": "high", "assigned_to": 7, "channel_profile_id": 3, "supervisor_user_id": 2, "fallback_channel": "sms", "first_response_due_at": "2026-04-08T10:00:00Z", "escalation_at": "2026-04-08T12:00:00Z"}'
Loading