Triggers & Actions
Complete reference for all trigger types and action types. Learn how to configure each type and understand their options.
Trigger Types Reference
Triggers are the events that start an automation. Choose the event you want to respond to, configure its options, and your automation will execute when that event occurs.
Member Join Trigger
Fires when a new member joins your Discord server. Perfect for welcome workflows, role assignment, and introduction requirements.
Available Conditions
- • Account age (minimum days old to trigger)
- • User role at join time (if they have invite links)
- • Invite source (which invite link used)
- • Is bot account (true/false)
Typical Actions
- • Send welcome message to #general
- • Send DM with server rules
- • Assign starter roles
- • Create private intro channel
Message Create Trigger
Fires when a message is sent matching your criteria. Useful for auto-responses, content filtering, keyword detection, and message-based workflows.
Configuration Options
- • Channel(s) to monitor (specific channels or all)
- • Keywords to match (exact or partial)
- • Regex pattern matching for complex detection
- • Minimum message length
- • Match author role requirements
- • Exclude bot messages (true/false)
- • Must contain attachments (true/false)
- • Must contain mentions (true/false)
Examples
Monitor #support channel for messages containing "help" → send assistance message
Detect profanity matching regex pattern → delete message and warn user
Watch for job postings in #jobs → repost to #jobs-archive
Reaction Add Trigger
Fires when a specific emoji is reacted to a message. Ideal for verification, polls, ticket creation, or reaction-based commands.
Configuration Options
- • Emoji to watch for (any emoji or specific)
- • Channel(s) to monitor
- • Specific message ID (or any message in channel)
- • Author of reacting user (any user or specific)
- • User role requirements
Use Cases
React with ✅ to verify → grant member role
React with 🎫 to rules message → create support ticket
React with custom emoji → assign corresponding role
Scheduled (Cron) Trigger
Fires at specific times using cron expressions. Run daily reports, send timed reminders, execute maintenance tasks, or post announcements.
Configuration
Enter a cron expression. Format: minute hour day month day-of-week
Timezone: Automations use server timezone for scheduling
Cron Examples
0 9 * * * — Every day at 9:00 AM0 0 * * 1 — Every Monday at midnight*/30 * * * * — Every 30 minutes0 18 * * 1-5 — 6 PM weekdays only0 0 1 * * — First day of every monthRole Changed Trigger
Fires when a user is granted or loses a specific role. Perfect for cascading permission updates, perk assignment, or status notifications.
Configuration
- • Role to watch for
- • Action type: granted, removed, or both
- • User role requirements (only trigger for users with X role)
Examples
User granted "Premium" role → unlock premium channels, send welcome message
User loses "Moderator" role → remove mod-only channel access
Webhook Trigger
Fires when external systems send data to your automation webhook URL. Integrate with third-party services, GitHub, payment processors, or custom apps.
Configuration
- • Optional: Validate webhook signatures (for security)
- • Optional: Match payload fields (e.g., event type = "payment")
- • Webhook URL is generated and provided to you
Webhook Payload Access
Actions can access webhook data using dynamic variables: {payload.field_name}
Action Types Reference
Actions are what execute when a trigger fires. An automation can have multiple actions that run in sequence. Configure each action's target and content.
Send Message Action
Send a message to a channel. Supports embeds, mentions, and dynamic content populated from trigger data.
Configuration Options
- • Target channel
- • Message content (supports markdown)
- • Embed (optional title, description, color, fields, image, footer)
- • Mention roles/users (optional)
- • Dynamic variables: {user.name}, {user.id}, {message.content}, etc.
Add/Remove Role Actions
Automatically grant or revoke roles from users. Configure role assignment workflows and permission cascades.
Add Role Configuration
- • Target user (triggering user or specific user)
- • Role to add
- • Optional: Notify user via DM
Remove Role Configuration
- • Target user
- • Role to remove
- • Optional: Reason/explanation
Send Direct Message Action
Send a private message to a user. Perfect for confirmations, personalized instructions, or welcome messages.
Configuration
- • Target user (triggering user or specific user)
- • Message content
- • Optional: Embed styling
- • Supports dynamic variables like Send Message
Create Channel Action
Dynamically create text or voice channels. Useful for ticket systems, team channels, or event channels.
Configuration Options
- • Channel name (supports dynamic variables)
- • Channel type (text or voice)
- • Category (optional parent category)
- • Channel topic/description
- • Permission overrides (public, private, specific roles only)
Call Webhook Action
Send HTTP requests to external services. Integrate with logging systems, notification services, or custom applications.
Configuration
- • Webhook URL (external HTTP endpoint)
- • HTTP method (GET, POST, PUT, DELETE)
- • Headers (optional authorization, content-type)
- • Payload data (supports dynamic variables)
- • Timeout (default 30 seconds)
Delay Action
Pause execution before running the next action. Create timed sequences or stagger messages.
Configuration
- • Duration (5 seconds to 24 hours)
- • Unit (seconds, minutes, hours)
Chaining Actions
Combine multiple actions into sequences. Actions execute in order from top to bottom. Each action can reference data from previous actions or the trigger event.
Example: New Member Welcome Flow
Conditional Logic
Make automations smart with if/then conditions. Control whether actions execute based on trigger context or user properties.
Condition Types
- • User has role X (for actions affecting that user)
- • User in channel X
- • Message contains keyword X
- • Message matches regex pattern
- • Time is between X and Y (for scheduled automations)
- • Account age is older than X days
Conditional Branching
Skip or execute individual actions based on conditions. Example:
Action 1: Send message (always)
Action 2: Add role (IF user account age > 7 days)
Action 3: Send warning (IF user account age < 7 days)
Tips for Effective Triggers & Actions
- • Use specific conditions to prevent unintended triggers
- • Test actions in dry-run mode before enabling
- • Add delays between related actions for better UX
- • Use dynamic variables to personalize messages
- • Document complex action sequences in automation description
- • Monitor webhook calls to external services for failures
- • Keep action sequences under 20 items for performance