# Discord

This block category includes all block types that pertain to Discord, a messaging service and community platform.

\`[Discord Connector](/dev-tooling/blocks-messaging/discord/discord-connector.md)\` blocks are used to establish a connection to the Discord API, which is a necessary step before using any other block type in this category.

We can detect Discord commands as well as general messages in a Discord channel using `On Discord Command` and [`On Discord Channel Message`](/dev-tooling/blocks-messaging/discord/on-discord-channel-message.md) blocks. Using `On Discord Private Message` blocks, we can also detect private messages received by the user whose token we initialized our Discord connection with.

We can reply to private messages using `Reply Private Discord Message` blocks, and send messages and files to Discord channels using [`Send Discord Channel Message`](/dev-tooling/blocks-messaging/discord/send-discord-channel-message.md)and [`Send Discord Channel File`](/dev-tooling/blocks-messaging/discord/send-discord-channel-file.md) blocks.

It is also possible to add and remove Discord server roles from users using [`Add Role User`](/dev-tooling/blocks-messaging/discord/add-role-user.md) and [`Remove Role User`](/dev-tooling/blocks-messaging/discord/remove-role-user.md) blocks.

Finally, we can add emoji reactions to messages using [`Add Emoji On Message`](/dev-tooling/blocks-messaging/discord/add-emoji-on-message.md) blocks, and detect when and by whom specific emoji reactions are added or removed from specific comments using [`On Reaction Added Message`](/dev-tooling/blocks-messaging/discord/on-reaction-added-message.md) and [`On Reaction Removed Message`](/dev-tooling/blocks-messaging/discord/on-reaction-removed-message.md) blocks.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.graphlinq.io/dev-tooling/blocks-messaging/discord.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
