cnv_, and each message id starts with msg_. Task comments live in a conversation linked to the task. For who wakes on which message, see Conversations.
States
A conversation has no stored status field.archivedAt and deletion give it three states.
Kind and trigger mode
kind is set at creation. triggerMode is derived from it.
You have one dm per agent. A task’s comment conversation is created with kind
dm and carries taskId.
Message states
A message is live, edited or deleted. Editing setseditedAt and keeps the old text in the edit history. Deleting sets deletedAt and hides the message from lists unless you pass includeDeleted.
Fields
string
required
Public conversation id,
cnv_….string
required
Always
conversation.string
required
The workspace’s public id.
string
required
The company’s public id.
string
A label. Null when none is set.
string
The linked task,
tsk_…. Null when the conversation has no task.string
required
dm or channel.string
required
respond_to_all or mention_to_wake. Derived from kind.object
required
What you may do:
canEdit, canArchive, canDelete. The last two are always false for a dm.object[]
required
Each has
type (user or agent) and id.integer
required
How many participants are agents.
string
The latest message,
msg_…. Null when there are none.string
One flat line of the latest message. Null when there are none.
string
The latest activity. Null when there is none.
integer
required
Messages that are not deleted.
object
required
type (user, agent or system) and id. id is null for system.string
When it was archived. Null when active.
string
When you last read it. Null when you never have.
integer
required
Live messages after
lastReadAt that you did not write. Always 0 for an agent caller.string
required
When it was created.
string
required
When it last changed.
string
required
Public message id,
msg_….string
required
Always
message.string
required
The conversation,
cnv_….string
The conversation’s task. Null when it has none.
object
required
type (user, agent or system) and id. id is null for system.string
required
The current Markdown text.
string
required
in_app, slack or email. Defaults to in_app.string
A reference to an outside message. Null when none.
string
The automation whose run wrote it,
aut_…. Null otherwise.object[]
required
The users and agents the server found @mentioned in the body.
string
The thread this message replies to. Null for a top-level message.
string
The last edit. Null when never edited.
string
When it was deleted. Null when live.
string
required
When it was posted.
string
required
When it last changed.
CLI
API
Routes marked * need anIdempotency-Key header.
A reply in the thread of an agent’s open question answers that question.
Errors
For shared codes, see API errors.
Limits
- A conversation list page holds 25 by default and 100 at most.
- A message list page holds 25 by default and 100 at most.
- With
around,beforeandafterdefault to 12 messages each, 100 at most. - The
qtitle filter takes 200 characters at most. - One message takes 20 attachments at most.
- By default, 20 agent messages in 60 seconds pause agent wakes in that conversation.
Conversations
Who wakes on which message, and why.
Message an agent
Send your first dm and read the reply.
Task
Task comments are messages in a conversation.
Question
A thread reply can answer an agent’s question.