> ## Documentation Index
> Fetch the complete documentation index at: https://docs.modulex.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Revolt Integration for AI Agents & Workflows

> Revolt open-source chat platform — group management and friend requests

{/* Self-hosted logo — build-time vendored from modulex.json / Iconify (see scripts/lib/logo.js). */}

<img className="block dark:hidden" src="https://mintcdn.com/modulexaillc/df8MOr-hXotYLTh5/logos/revolt-light.svg?fit=max&auto=format&n=df8MOr-hXotYLTh5&q=85&s=8a0172764eb6653814cf2b7f9c2e8cd1" alt="Revolt logo" width="72" height="72" data-path="logos/revolt-light.svg" />

<img className="hidden dark:block" src="https://mintcdn.com/modulexaillc/df8MOr-hXotYLTh5/logos/revolt-dark.svg?fit=max&auto=format&n=df8MOr-hXotYLTh5&q=85&s=69611875cee31cd9e2dc7edd536335cb" alt="Revolt logo" width="72" height="72" data-path="logos/revolt-dark.svg" />

## Overview

Add **Revolt** to any ModuleX agent or workflow. Open-source chat platform for group management and social features via the Revolt REST API (`revolt.chat/api`).

<Info>
  **Categories**: Communication · **Auth**: Session Token · **Actions**: 3
</Info>

## Authentication

### Session Token

Authenticate using your Revolt session token (sent as x-session-token header)

#### Required Credentials

| Field         | Description                                      | Required | Format |
| ------------- | ------------------------------------------------ | -------- | ------ |
| Session Token | Your Revolt session token from the Revolt client | Yes      | `-`    |

## Available Actions

<AccordionGroup>
  <Accordion title="create_group — Create a new group channel">
    ### Parameters

    <ResponseField name="name" type="string" required>
      The name of the group
    </ResponseField>

    <ResponseField name="description" type="string">
      Group description
    </ResponseField>

    <ResponseField name="users" type="array">
      IDs of the users to add to the group
    </ResponseField>

    <ResponseField name="nsfw" type="boolean">
      Whether this group is age-restricted
    </ResponseField>

    ### Response

    ```json theme={null}
    {
      "additionalProperties": false,
      "properties": {
        "success": {
          "title": "Success",
          "type": "boolean"
        },
        "error": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Error"
        },
        "channel_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Channel Id"
        },
        "channel_type": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Channel Type"
        },
        "name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Name"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Description"
        },
        "owner": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Owner"
        },
        "nsfw": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Nsfw"
        }
      },
      "required": [
        "success"
      ],
      "title": "CreateGroupOutput",
      "type": "object"
    }
    ```
  </Accordion>

  <Accordion title="add_group_member — Add another user to a group channel">
    ### Parameters

    <ResponseField name="target" type="string" required>
      ID of the group channel
    </ResponseField>

    <ResponseField name="member" type="string" required>
      ID of the user to add
    </ResponseField>

    ### Response

    ```json theme={null}
    {
      "additionalProperties": false,
      "properties": {
        "success": {
          "title": "Success",
          "type": "boolean"
        },
        "error": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Error"
        }
      },
      "required": [
        "success"
      ],
      "title": "AddGroupMemberOutput",
      "type": "object"
    }
    ```
  </Accordion>

  <Accordion title="send_friend_request — Send a friend request to another user">
    ### Parameters

    <ResponseField name="username" type="string" required>
      Username and discriminator combo separated by #
    </ResponseField>

    ### Response

    ```json theme={null}
    {
      "additionalProperties": false,
      "properties": {
        "success": {
          "title": "Success",
          "type": "boolean"
        },
        "error": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Error"
        },
        "user_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "User Id"
        },
        "status": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Status"
        }
      },
      "required": [
        "success"
      ],
      "title": "SendFriendRequestOutput",
      "type": "object"
    }
    ```
  </Accordion>
</AccordionGroup>

## Limits & Quotas

* No officially documented rate limits for the Revolt API.
* Error model: non-2xx responses and timeouts are caught and returned as `success=False` + `error` rather than raising.

## Related integrations

<CardGroup cols={3}>
  <Card title="AgentMail" href="/integrations/tools/agentmail" />

  <Card title="Gmail" href="/integrations/tools/gmail" />

  <Card title="Google Meet" href="/integrations/tools/google-meet" />
</CardGroup>

## Links

* [Revolt](https://revolt.chat)
