Update a conversation
PATCH
/v1/amb/conversations/{conversation_id}
const result = await bird.amb.conversations.update(
"acv_01krdgeqcxet5s7t44vh8rt9mg",
{ assigned_to: null, labels: [], read: false },
);
console.log(result);result = client.amb.conversations.update('acv_01krdgeqcxet5s7t44vh8rt9mg', assigned_to=None, labels=[], read=False)
print(result)result, err := client.Amb.Conversations.Update(ctx, "acv_01krdgeqcxet5s7t44vh8rt9mg", bird.AmbConversationsUpdateParams{AssignedTo: bird.Null[string](), Labels: []string{}, Read: bird.Ptr(false)})
if err != nil {
log.Fatal(err)
}
fmt.Println(result)$bird->amb->conversations->update('acv_01krdgeqcxet5s7t44vh8rt9mg', (new Model\AMBConversationUpdate())->setAssignedTo(null)->setLabels([])->setRead(false));bird amb conversations update <conversation-id> \
--assigned-to usr_01krdgeqcxet5s7t44vh8rt9mgcurl -X PATCH "https://us1.platform.bird.com/v1/amb/conversations/{conversation_id}" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"assigned_to": "usr_01krdgeqcxet5s7t44vh8rt9mg"
}'Réponse200
{
"id": "acv_01krdgeqcxet5s7t44vh8rt9mg",
"business_id": "abz_01krdgeqcxet5s7t44vh8rt9mg",
"status": "open",
"origin": "entry_point",
"entry_point": "support",
"device_capabilities": [
"QUICK",
"LIST",
"TIME"
],
"supported_content_kinds": [
"text"
],
"locale": "en-US",
"last_direction": "outbound",
"assigned_to": "usr_01krdgeqcxet5s7t44vh8rt9mg",
"queue": "support",
"closed_reason": "user_close"
}
Updates a conversation's assignment, labels, or read state. There is no close action here: only the customer closes a conversation, from their device.
Paramètres
conversation_id
string
Conversation identifier. Starts with acv_.
Corps de la requête
assigned_to
nullable string
User to assign this conversation to. Pass null to unassign it.
labels
array of string
Replaces the full set of labels on this conversation. Pass an empty array to clear every label.
read
boolean
Set to true to mark this conversation read, resetting unread_count to zero. There is no way to mark a conversation unread through this field; false has no effect.
Contenu de la réponse
id
string
obligatoire
Conversation ID.
business_id
string
obligatoire
Business this conversation belongs to.
status
string
obligatoire
Whether a conversation is open or closed. There is no close operation on this API: only the customer closes a conversation from their device, and any inbound message on a closed conversation reopens it.
Possible values: open, closed
origin
string
obligatoire
How the conversation started. entry_point means the customer opened it from one of your configured Apple Messages for Business entry points. invitation means the customer accepted an invitation and sent a message. This is set once when the conversation is created and never changes.
Possible values: entry_point, invitation
opaque_user_id
nullable string
obligatoire
Apple's opaque identifier for the customer with this business. The customer must send a message before a conversation is created. Null when no identifier is recorded.
phone_number
nullable string
obligatoire
Customer phone number, when recorded. Null when unknown. Read the invitation's to field for the number an invitation was sent to.
group_id
nullable string
obligatoire
The group value carried by the inbound message that opened or most recently reopened the conversation. Your business chooses it when configuring an entry point with Apple, and Apple passes it through; used with intent_id to route the conversation. Null when that message carried none.
intent_id
nullable string
obligatoire
The intent value carried by the inbound message that opened or most recently reopened the conversation. Your business chooses it when configuring an entry point with Apple, and Apple passes it through; used with group_id to route the conversation. Null when that message carried none.
entry_point
nullable string
The entry point in your channel settings whose group and intent matched the inbound message that opened or most recently reopened the conversation. Null when no configured entry point matched.
device_capabilities
array of string
obligatoire
The capability tokens the customer's device advertised on its most recent message, replaced by each inbound rather than accumulated, so this describes the device in use now. An empty list means the device's capabilities are unknown. Implemented message types may still be sent, but device rendering support has not been confirmed. Authentication requires an explicitly advertised AUTH2 capability.
supported_content_kinds
array of string
obligatoire
Implemented baseline types plus interactive types confirmed by device_capabilities. An empty capability list yields text, attachments and rich links; it does not establish support for other types. Unadvertised quick replies, list pickers, time pickers and forms are refused when capabilities are known. Custom apps and opaque interactive references are not included because their device support cannot be inferred from these tokens. Unsupported roadmap types cannot be sent.
locale
string
obligatoire
The customer's locale from the most recent inbound message, or your business's default locale before any inbound arrives. Preserved in Apple's locale format, for example en_US@rg=nlzzzz.
unread_count
integer
obligatoire
Number of inbound messages since this conversation was last marked read. Incremented once per inbound message, reset to zero by marking the conversation read and by any outbound message your workspace sends.
message_count
integer
obligatoire
Number of messages in this conversation, both directions.
last_message_at
string
obligatoire
When the most recent message in this conversation was sent or received.
last_direction
string
obligatoire
Direction of the most recent message.
Possible values: outbound, inbound
assigned_to
nullable string
obligatoire
The user this conversation is assigned to, or null when unassigned. Assignment is not rechecked against workspace membership on read, so it can still name a user whose access was removed.
labels
array of string
obligatoire
Operator-set tags on this conversation. Unlike email, there are no system placement labels: every value here is one an operator chose.
queue
string
The console queue this conversation is routed to. Empty when no routing rule matched, which the console lists as unrouted.
closed_at
nullable string
obligatoire
When this conversation was closed. Null while it is open.
closed_reason
nullable string
obligatoire
Why this conversation was closed. Null while it is open.
open_count
integer
obligatoire
Number of times this conversation has been opened, starting at 1 and incremented on each reopen. A closed conversation reopens on the next inbound message rather than creating a new conversation.
created_at
string
obligatoire
When this conversation was created.
updated_at
string
obligatoire
When this conversation last changed.
Ressources associées
Poursuivez avec la documentation, les guides et les exemples sur ce sujet. Les ressources sont en anglais.
Comprendre le conceptShould I use a Bird SDK or call the API directly?Suivre le parcours d'apprentissageBuild your first integrationGuide d'implémentationSend your first email
Obtenir un guide d'implémentation