POST
/conversations/{conversationId}/assignAssign a conversation
Assign to a teammate, or pass null to unassign.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
conversationIdrequired | path | string | Conversation ID |
Request body
| Field | Type | Description |
|---|---|---|
assigneePrincipalId | stringnull | Agent principal id; null or omitted unassigns |
Response
Updated conversation
| Field | Type | Description |
|---|---|---|
idrequired | string | TypeID - a type-prefixed UUID |
statusrequired | "open" | "snoozed" | "closed" | Current conversation status |
channelrequired | "messenger" | "email" | "github" | Channel the conversation arrived on |
priorityrequired | "none" | "low" | "medium" | "high" | "urgent" | Agent-set triage priority |
subjectrequired | stringnull | Conversation subject line, null for messenger threads |
visitorPrincipalIdrequired | string | Principal ID of the visiting user |
visitorEmailrequired | stringnull | Captured contact email for the visitor, null if not provided |
assignedAgentPrincipalIdrequired | string | null | Principal ID of the assigned agent, null if unassigned |
lastMessageAtrequired | string | ISO 8601 timestamp |
resolvedAtrequired | string | null | When the conversation was resolved, null while still active |
createdAtrequired | string | ISO 8601 timestamp |
Errors
400Validation error401Unauthorized404Conversation not foundExample request
curl \
-X POST \
"https://feedback.quackback.io/api/v1/conversations/:conversationId/assign" \
-H "Authorization: Bearer qb_your_api_key_here" \
-H "Content-Type: application/json"