Automations

Automations Dashboard UI Guide

Complete walkthrough of the /dashboard/automations interface. Learn how to create, configure, test, and monitor your automations.

Dashboard Overview

The Automations Dashboard is your central hub for managing all server automations. It displays your automation list, status indicators, and provides quick access to creation and testing tools.

Location

Navigate to Dashboard → Automations

Main Sections

Automation list, create button, filter tabs, search, and quick actions

The Automation List

The main area displays all your automations in a table format. Each row represents one automation with key information and quick actions.

List Columns

  • Status Badge: Shows ACTIVE (green) or PAUSED (gray) status
  • Name: Display name of the automation
  • Trigger Type: member_join, message_create, reaction, scheduled, webhook, etc.
  • Actions: Number of actions in the automation (e.g., "3 actions")
  • Last Triggered: When this automation last executed (e.g., "2 hours ago")
  • Executions: Total number of times this automation has run
  • Quick Actions: Edit, test, enable/disable, delete buttons

Status Toggle

Click the status badge to toggle between ACTIVE and PAUSED states:

  • ACTIVE (Green): Automation is enabled and will execute on triggers
  • PAUSED (Gray): Automation is disabled and will not trigger

Filtering & Sorting

  • • Filter by status: ACTIVE, PAUSED, ALL
  • • Filter by trigger type: Member Join, Message, Reaction, etc.
  • • Sort by: Name, Last Triggered, Executions, Created Date
  • • Search by automation name or description

Creating a New Automation

Click the green "Create Automation" button to start building a new automation. This opens a multi-step creation flow.

Step 1: Basic Information

  • Name: Display name (e.g., "Welcome New Members")
  • Description: What does this automation do? (optional but recommended)
  • Priority: Low, Normal, or High (affects execution order when multiple automations trigger)

Step 2: Choose Trigger

Select the event that triggers this automation:

  • • Member Join
  • • Member Leave
  • • Message Sent
  • • Reaction Added
  • • Role Changed
  • • Voice State Change
  • • Scheduled (Cron)
  • • Webhook
  • Step 3: Configure Trigger

    Set up the trigger-specific configuration:

    • • For Message: Select channels to monitor, keywords to match, regex patterns
    • • For Reaction: Choose emoji to watch, specific message or any message
    • • For Scheduled: Enter cron expression and timezone
    • • For Role Changed: Select role to watch, action type (granted/removed/both)

    Step 4: Add Actions

    Add what should happen when the trigger fires:

    • • Click "Add Action" to add the first action
    • • Choose action type from SearchableSelect dropdown
    • • Configure the action (channel, message content, role, etc.)
    • • Click "Add Another" to chain additional actions
    • • Drag to reorder actions as needed
    • • Click X to remove an action

    Step 5: Set Conditions (Optional)

    Add conditions to control when actions execute:

    • • Click "Add Condition" button
    • • Choose condition type (User Role, Channel, Content, Time, etc.)
    • • Configure the condition
    • • Multiple conditions use AND logic (all must be true)

    Step 6: Review & Save

    Review your automation summary:

    • • Verify trigger configuration
    • • Check action sequence
    • • Confirm conditions
    • • Click "Create Automation" to save

    Configuring Actions

    Each action type has specific configuration options. The form changes based on the selected action.

    Send Message Action

    • Channel: SearchableSelect dropdown to choose target channel
    • Content: Text message (markdown supported)
    • Embed: Optional embed styling (title, description, color, fields)
    • Mention: Optional role/user mentions

    Add/Remove Role Actions

    • User: Target user (triggering user or specific user)
    • Role: SearchableSelect to choose role
    • Notify User: Toggle to send DM to user

    Send DM Action

    • User: Target user for DM
    • Message: DM content
    • Embed: Optional embed styling

    Create Channel Action

    • Name: Channel name (supports dynamic variables)
    • Type: Text or Voice
    • Category: Optional parent category (SearchableSelect)
    • Topic: Channel description
    • Private: Toggle to make channel private

    Call Webhook Action

    • URL: External webhook endpoint
    • Method: GET, POST, PUT, DELETE
    • Headers: Optional custom headers
    • Body: JSON payload (supports variables)

    Setting Up Conditions

    Conditions control whether your automation executes. They use SearchableSelect dropdowns for easy selection.

    User Role Condition

    Check if user has (or doesn't have) a specific role. Uses SearchableSelect to choose role.

    Channel Condition

    Restrict to specific channels. Uses SearchableSelect for multi-channel selection.

    Content Condition

    Match message keywords or regex patterns. Text input field for pattern entry.

    Time Condition

    Only trigger during specific hours or days. Time picker and day selector.

    Multiple Conditions

    Add multiple conditions with AND logic. All conditions must be true for automation to execute.

    Testing & Dry-Run Mode

    Always test automations before enabling on live server. Use dry-run to simulate execution without side effects.

    Starting a Test

    • • Click the "Test" button in the automation row, or
    • • Click "Test Automation" inside the edit panel
    • • A modal opens asking for test parameters

    Test Parameters

    Depending on trigger type, you'll provide:

    • Member Join: Select a member to test with
    • Message: Select channel and choose/create test message
    • Reaction: Select message and emoji
    • Scheduled: No parameters (executes immediately)

    Dry-Run Results

    See step-by-step execution preview:

    • • Green checkmarks for successful actions
    • • Red X for errors or failed conditions
    • • Message content preview (not actually sent)
    • • Role changes preview (not actually applied)
    • • Condition evaluation results

    Dry-run mode is completely safe. No messages are sent, no roles are added, no channels are created.

    Editing Automations

    Click the "Edit" button on any automation to open the editing interface. Most settings can be changed without recreating the automation.

    Editable Fields

    Name, description, priority, trigger configuration, actions, conditions, rate limits

    Non-editable Fields

    Trigger type (delete and recreate if you need to change this)

    Save & Revert

    Click "Save Changes" to persist. Changes apply immediately if automation is active. Click "Revert" to discard unsaved changes.

    Execution History & Logs

    Monitor how often your automations execute and review detailed logs for debugging.

    Execution Log

    View detailed execution history for each automation:

    • • Timestamp of execution
    • • What triggered the automation (user, message, etc.)
    • • Actions executed and their status
    • • Duration of execution
    • • Any errors or warnings

    Execution Stats

    Summary statistics for the automation:

    • • Total executions (lifetime)
    • • Last execution time
    • • Success rate (% of executions without errors)
    • • Average execution time

    Error Handling & Retry Config

    Configure how automations handle failures and what happens when an error occurs.

    On Error Options

    Choose what happens if an action fails:

    • Stop: Stop execution and log the error
    • Continue: Skip failed action and continue with next
    • Retry: Retry the action (configurable retry count)

    Retry Configuration

    • • Max retries: 0-10 times
    • • Retry delay: 1-60 seconds between attempts
    • • Only applicable for webhook calls and external integrations

    Error Notifications

    Get alerted when automations fail:

    • • Notify in log channel: Send error message to designated logging channel
    • • Notify via DM: Send DM to automation creator
    • • Disable automation on repeated failures: Auto-pause if too many errors

    Rate Limiting Configuration

    Control how often automations can execute to prevent spam or system overload.

    Per-Minute Limit

    Maximum executions per minute (default 10). Prevents runaway automations from executing too frequently.

    Per-User Cooldown

    Minimum time between executions for the same user. Example: "Once per user per hour" prevents spamming the same user.

    Max Concurrent

    Maximum automations executing simultaneously (default 5). Prevents resource exhaustion.

    Quick Actions

    Each automation row includes quick action buttons for common tasks:

    Enable/Disable Toggle

    Green toggle = ACTIVE, Gray toggle = PAUSED. Click to toggle status.

    Edit Button

    Open the automation editor to modify settings.

    Test Button

    Run automation in dry-run mode with test parameters.

    View Logs Button

    Open detailed execution history and debug logs.

    Delete Button

    Delete the automation permanently. Requires confirmation.

    UI Components & Styling

    The Automations dashboard uses consistent UI components across all forms and inputs:

    SearchableSelect Dropdowns

    All dropdowns (channels, roles, users) feature searchable select fields. Type to filter options, click to select.

    Green Buttons

    All primary action buttons (Create, Save, Test) are green with black text for high visibility.

    Status Badges

    ACTIVE (green), PAUSED (gray), ERROR (red) status indicators throughout the interface.

    Toggle Switches

    Used for true/false options like "Private Channel", "Notify User", etc.

    Dashboard Tips

    • • Always test automations with dry-run before enabling on live server
    • • Use clear, descriptive names so you remember what each automation does
    • • Review execution logs regularly to catch errors early
    • • Start with PAUSED status during setup, enable only after testing
    • • Use priorities strategically: high for critical, low for optional automations
    • • Set reasonable rate limits to prevent accidental spam
    • • Document complex automations in the description field
    • • Monitor Last Triggered times to ensure automations are working