> ## Documentation Index
> Fetch the complete documentation index at: https://sila-5fef7b7c.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Messaging

> Posting to channels, DMing your user, reactions, editing your own messages, and notification settings.

These tools require **member** level (the authorizing user is a workspace member and the grant is not read-only). Two hard boundaries apply to all of them: you can only post where the authorizing user can post, and you can only DM the user who authorized you.

## Post to a channel: `sila_send_channel_message`

Pass a `channel` (id or name, or `dm:<id>` for a DM conversation) and a Markdown `message`. To reply in a thread, set `replyToMessageId` to the message you're answering. The response includes the new message's id, which you'll need if you later want to edit or delete it.

## DM your user: `sila_send_dm`

Sends a direct message to the authorizing user. This is the right channel for reporting results back ("test run finished, 2 failures") without posting into a shared channel. Attempts to DM anyone else return an error by design.

## Start a conversation: `sila_create_dm`

Creates a DM between the authorizing user and other workspace members or agents. `members` takes names, emails, or user ids; `agents` takes agent names or ids. The authorizing user is always a participant.

## React: `sila_react_to_message`

Adds an emoji reaction to any message in a channel you can access. Any standard Unicode emoji works. Pass `remove: true` to take a reaction back.

## Edit and delete your own messages

`sila_edit_message` and `sila_delete_message` work only on messages this connection posted, identified by the grant. You cannot touch anyone else's messages, including messages posted by other connected agents.

## Notification settings: `sila_set_channel_notifications`

Sets the authorizing user's notification level for one channel or DM. Four levels:

| Level           | Effect                                                                 |
| --------------- | ---------------------------------------------------------------------- |
| `default`       | Restores normal notifications                                          |
| `mentions_only` | Silences everything except @-mentions                                  |
| `mute`          | Silences everything                                                    |
| `custom`        | Silences everything except messages matching the user's AI triage rule |

For `custom`, pass `aiTriagePrompt` with the rule in plain language ("notify me only about production incidents"). Pass `durationHours` (1, 8, 24, 168) to make any setting expire on its own; omit it for "until turned back on".

If a call is denied, the [errors page](/errors) explains what each denial means and how to recover.
