Skip to main content
Automate.ax connects to a Discord application that you own. Your bot token stays isolated in the integration account used by your automation.

Connect a bot

  1. Create or select an application in the Discord Developer Portal.
  2. Open Bot, create the bot if needed, reset its token, and copy the token.
  3. Open OAuth2 → URL Generator. Select bot and applications.commands, then select only the server permissions your automations need.
  4. Open the generated URL and install the bot in each server you want to automate.
  5. In Automate.ax, connect Discord with Bot token and paste the token.
Discord permissions are server- and channel-specific. Automate.ax validates the bot identity when you connect it; Discord enforces each action’s permissions and role hierarchy when the action runs. Use the optional reason input on moderation and management actions to populate the server audit log. Some actions also depend on privileged Gateway intents configured on the application’s Bot page. Enable Server Members Intent (GUILD_MEMBERS) before using discord.listMembers. Enable Message Content Intent (MESSAGE_CONTENT) when your bot must read message content; without it, Discord can return empty content and related message fields. Verified applications may need Discord’s approval before enabling these intents.

Receive HTTP webhook events

Deploy an automation that uses a Discord trigger, then configure this URL under your application’s Webhooks settings:
Replace YOUR_APPLICATION_ID with the application ID from General Information. Discord verifies the endpoint with a signed PING. Enable the application authorization and entitlement events your automation uses. Discord’s Event Webhooks do not deliver ordinary server messages, reactions, channel changes, or member changes. This integration does not poll for them. Those events require Discord Gateway support, which is not part of the current integration.

Use an account

automations/discord-message.automation.ts
Omit the second argument to use the project’s default Discord account. Discord IDs are snowflake strings; keep them as strings even when they contain only digits.

Provider behavior

Automate.ax uses Discord API v10, validates successful responses, and follows Discord’s Retry-After value after a rate limit. Invalid credentials, missing permissions, bad inputs, and role-hierarchy failures stop immediately. Create actions are not replayed automatically when Discord may have accepted the first request.

Exports

  • discord contains the packaged Discord actions and triggers.
  • discordAccount("name") selects a named Discord bot connection.

Triggers

Actions