Skip to main content
Each space contains one or more chat rooms. Messages support text content, file attachments, emoji reactions, and @mentions. When an AI staff member is mentioned, they receive the message and respond asynchronously in the same room.

Chat rooms

List chat rooms

Returns all chat rooms in the space, ordered by creation time. Path parameters
string
required
Organization UUID.
string
required
Space UUID.
Example
Response 200 OK
string
Chat room UUID.
string
Parent space UUID.
string
Room name.
string
ISO 8601 creation timestamp.

Create a chat room

Requires the chat.write permission. Path parameters
string
required
Organization UUID.
string
required
Space UUID.
Request body
string
required
Display name for the chat room. Leading/trailing whitespace is stripped.
Example
Response 201 Created

Delete a chat room

Permanently deletes a chat room and all of its messages. Requires the chat.write permission. Path parameters
string
required
Organization UUID.
string
required
Space UUID.
string
required
Chat room UUID.
Response 204 No Content

Messages

List messages

Returns messages in chronological order. Includes reactions and attachments for each batch of messages. Path parameters
string
required
Organization UUID.
string
required
Space UUID.
string
required
Chat room UUID.
Query parameters
integer
Maximum messages to return. Defaults to 50, maximum 200.
string
RFC3339 timestamp (e.g. 2024-03-20T10:00:00Z). Returns only messages created before this time. Use the created_at of the oldest message in the current page to fetch the next page.
Example
Response 200 OK
string
Message UUID.
string
Chat room UUID.
string
Space UUID.
string
UUID of the user who posted the message. May be null for system messages.
string
Message text. Empty string for deleted messages.
string
Timestamp of last edit, or null.
string
Set when the message has been soft-deleted, otherwise null.
array
Emoji reactions across all messages in this batch.
array
File attachments across all messages in this batch.

Post a message

Posts a new message. Requires the chat.write permission. Mentioning an AI staff member with their @display_name (parsed from the message content) automatically queues a response from that AI staff member. The AI staff member adds a 💭 reaction to the source message as an immediate acknowledgment that the job is queued. Path parameters
string
required
Organization UUID.
string
required
Space UUID.
string
required
Chat room UUID.
Request body
string
required
Message text. Required unless attachments is non-empty.
array
Optional list of file attachment metadata objects. Each attachment must have a url.
string
File name for display.
string
MIME type, e.g. "image/png".
integer
File size in bytes.
string
Publicly accessible URL of the file. Required per attachment.
Example — simple text message
Response 201 Created

Edit a message

Updates the content of an existing message. Only the original author can edit their own message.
string
required
New message text.
Response 200 OK — returns the updated message object.

Delete a message

Soft-deletes a message (sets deleted_at). Authors can delete their own messages. Users with the chat.write permission can delete any message in the room. Response 204 No Content

Reactions

Add a reaction

string
required
A single emoji character, e.g. "👍".
Response 201 Created

Remove a reaction

Query parameters
string
required
The emoji to remove.
Response 204 No Content