Chats
Manage chats
Retrieve chat details
Create a chat
Start a direct chat
List chats
Search chats
Archive or unarchive a chat
Update chat
Mark a chat as read
Mark a chat as unread
Notify anyway
ModelsExpand Collapse
Chat object { id, accountID, network, 21 more }
participants: object { hasMore, items, total } Chat participants information.
Chat participants information.
capabilities: optional object { allowedReactions, archive, attachments, 24 more } Chat capabilities reported by the platform.
Chat capabilities reported by the platform.
Allowed Unicode reactions. Omitted means all emoji reactions are allowed.
attachments: optional map[object { mimeTypes, caption, maxCaptionLength, 5 more } ]Supported attachment message types and their per-type constraints, keyed by Matrix msgtype or pseudo-msgtype (for example m.image, m.video, org.matrix.msc3245.voice). Missing message types should be treated as rejected.
Supported attachment message types and their per-type constraints, keyed by Matrix msgtype or pseudo-msgtype (for example m.image, m.video, org.matrix.msc3245.voice). Missing message types should be treated as rejected.
delete: optional -2 or -1 or 0 or 2 more-2: rejected, -1: dropped, 0: unsupported, 1: partially supported, 2: fully supported.
-2: rejected, -1: dropped, 0: unsupported, 1: partially supported, 2: fully supported.
True if deleting messages only for the authenticated user is supported.
disappearingTimer: optional object { omitEmptyTimer, timers, types } Disappearing-message timer capabilities.
Disappearing-message timer capabilities.
edit: optional -2 or -1 or 0 or 2 more-2: rejected, -1: dropped, 0: unsupported, 1: partially supported, 2: fully supported.
-2: rejected, -1: dropped, 0: unsupported, 1: partially supported, 2: fully supported.
formatting: optional map[-2 or -1 or 0 or 2 more]Supported rich-text formatting features keyed by feature name (for example bold, inline_code, code_block.syntax_highlighting). Omitted means no formatting support is advertised.
Supported rich-text formatting features keyed by feature name (for example bold, inline_code, code_block.syntax_highlighting). Omitted means no formatting support is advertised.
locationMessage: optional -2 or -1 or 0 or 2 more-2: rejected, -1: dropped, 0: unsupported, 1: partially supported, 2: fully supported.
-2: rejected, -1: dropped, 0: unsupported, 1: partially supported, 2: fully supported.
messageRequest: optional object { acceptWithButton, acceptWithMessage } Message request capabilities.
Message request capabilities.
participantActions: optional object { ban, invite, kick, 2 more } Participant management capabilities.
Participant management capabilities.
ban: optional -2 or -1 or 0 or 2 more-2: rejected, -1: dropped, 0: unsupported, 1: partially supported, 2: fully supported.
-2: rejected, -1: dropped, 0: unsupported, 1: partially supported, 2: fully supported.
invite: optional -2 or -1 or 0 or 2 more-2: rejected, -1: dropped, 0: unsupported, 1: partially supported, 2: fully supported.
-2: rejected, -1: dropped, 0: unsupported, 1: partially supported, 2: fully supported.
kick: optional -2 or -1 or 0 or 2 more-2: rejected, -1: dropped, 0: unsupported, 1: partially supported, 2: fully supported.
-2: rejected, -1: dropped, 0: unsupported, 1: partially supported, 2: fully supported.
poll: optional -2 or -1 or 0 or 2 more-2: rejected, -1: dropped, 0: unsupported, 1: partially supported, 2: fully supported.
-2: rejected, -1: dropped, 0: unsupported, 1: partially supported, 2: fully supported.
reaction: optional -2 or -1 or 0 or 2 more-2: rejected, -1: dropped, 0: unsupported, 1: partially supported, 2: fully supported.
-2: rejected, -1: dropped, 0: unsupported, 1: partially supported, 2: fully supported.
reply: optional -2 or -1 or 0 or 2 more-2: rejected, -1: dropped, 0: unsupported, 1: partially supported, 2: fully supported.
-2: rejected, -1: dropped, 0: unsupported, 1: partially supported, 2: fully supported.
state: optional object { avatar, description, disappearingTimer, title } Chat state update capabilities.
Chat state update capabilities.
draft: optional object { text, attachments } Current draft object for this chat, or null when no draft is set.
Current draft object for this chat, or null when no draft is set.
attachments: optional map[object { id, type, audioDurationSeconds, 6 more } ]Draft attachments keyed by attachment ID.
Draft attachments keyed by attachment ID.
True if the chat was explicitly marked unread by the authenticated user.
reminder: optional object { dismissOnIncomingMessage, remindAt } Current reminder for this chat, or null when no reminder is set.
Current reminder for this chat, or null when no reminder is set.
Chat with optional last message preview.
Chat with optional last message preview.
Last message preview for this chat, if available.
Last message preview for this chat, if available.
Chat ID. Input routes also accept the local chat ID from this installation when available.
Fully qualified sender user ID. Network-backed IDs usually include the network prefix and homeserver.
Attachments included with this message, if any.
Attachments included with this message, if any.
Attachment identifier, typically an mxc:// URL. Use the download file endpoint to get a local file path.
Preview image URL for video attachments (poster frame). May be temporary or available only on this device; download promptly if durable access is needed.
links: optional array of object { title, url, favicon, 4 more } Link previews included with this message, if any.
Link previews included with this message, if any.
Favicon URL if available. May be temporary or available only on this device; download promptly if durable access is needed.
Preview image URL if available. May be temporary or available only on this device; download promptly if durable access is needed.
Mentioned user IDs, @room, or null for legacy messages that require text scanning.
Reactions to the message, if any.
Reactions to the message, if any.
seen: optional boolean or string or map[boolean or string]Read receipt state for this message, when available.
Read receipt state for this message, when available.
sendStatus: optional object { status, timestamp, deliveredToUsers, 3 more } Message send status for this message, when reported by the bridge.
Message send status for this message, when reported by the bridge.
status: "SUCCESS" or "PENDING" or "FAIL_RETRIABLE" or "FAIL_PERMANENT"Current status of the message send attempt.
Current status of the message send attempt.
User IDs the message was delivered to, when reported by the network.
ChatsReminders
Manage reminders for chats
Create a chat reminder
Delete a chat reminder
ChatsMessages
Manage chat messages
ChatsMessagesReactions
Manage message reactions