Skip to main content

Overview

The webhook system allows you to send messages, embeds, or both through Discord webhooks with custom branding. Perfect for automated notifications, announcements, and professional-looking messages with customizable usernames and avatars.
Webhooks allow you to send messages that appear to come from a custom bot or user, complete with custom names and profile pictures.

Key Features

Custom Branding

Set custom username and avatar for each webhook message

Flexible Content

Send text messages, embeds, or both together

Variable Support

Use dynamic variables in messages and embeds

Saved Embeds

Send your pre-built embeds through webhooks

Commands

Send a message through a webhook with optional custom branding.
/webhook send webhook_url:<url> [content:<text>] [embed:<name>] [username:<name>] [avatar_url:<url>]
Parameters:
  • webhook_url (required) — Discord webhook URL from channel settings
  • content (optional) — Text message to send (supports variables)
  • embed (optional) — Name of your saved embed (from /embed builder)
  • username (optional) — Custom webhook username override
  • avatar_url (optional) — Custom webhook avatar URL
Requirements:
  • Must provide either content or embed (or both)
  • Embed must be saved to your account first
  • Webhook URL must be valid and active
Permissions: Manage Server

How to Get a Webhook URL

1

Open Channel Settings

Right-click the channel where you want to create a webhook and select Edit Channel
2

Navigate to Integrations

Go to the Integrations tab in channel settings
3

Create Webhook

Click Create Webhook or View Webhooks
  • Give your webhook a name
  • Optionally set a custom avatar
  • Click Copy Webhook URL
4

Use the URL

Paste the webhook URL into the /webhook send command
Keep Webhook URLs SecretAnyone with your webhook URL can send messages through it. Don’t share webhook URLs publicly or in untrusted locations.

Usage Examples

# Send a quick announcement
/webhook send webhook_url:https://discord.com/api/webhooks/123/abc content:Server maintenance in 10 minutes!

Variable Support

Webhook messages and embeds support all standard variables:
  • {user} — Username
  • {user.mention} — Mention the user
  • {user.id} — User ID
  • {user.avatar} — User avatar URL
  • {user.created_at} — Account creation date
See all user variables →
  • {guild.name} — Server name
  • {guild.count} — Member count
  • {guild.member_count_ordinal} — Member count with suffix (1st, 2nd, etc.)
  • {guild.boost_count} — Server boost count
  • {guild.icon} — Server icon URL
See all server variables →
  • {channel} — Channel mention
  • {channel.name} — Channel name
  • {channel.id} — Channel ID
  • {channel.topic} — Channel topic
See all channel variables →
  • {timestamp} — Current timestamp (full date & time)
  • {date} — Current date only
  • {time} — Relative time (e.g., “2 minutes ago”)
  • {unix} — Unix timestamp
See all time variables →

Common Use Cases

# Create a professional announcement
/webhook send webhook_url:https://... embed:announcement username:Server News avatar_url:https://...
Perfect for:
  • Server updates
  • Event notifications
  • Rule changes
  • Feature announcements
# Send status messages
/webhook send webhook_url:https://... content:🟢 All systems operational username:Status Bot
Great for:
  • Uptime notifications
  • Service status
  • System alerts
  • Maintenance notices
# Send personalized welcomes
/webhook send webhook_url:https://... content:Welcome {user.mention}! embed:welcome username:Welcome Committee
Use for:
  • New member greetings
  • Server introduction
  • Rules reminder
  • Community guidelines
# Announce events
/webhook send webhook_url:https://... content:Event starting in 1 hour! embed:event-details username:Event Manager
Ideal for:
  • Event reminders
  • Schedule updates
  • Activity announcements
  • Tournament info
# Use different "bots" for different purposes
/webhook send webhook_url:https://... content:Moderation update embed:mod-log username:Mod Team avatar_url:https://...
Perfect for:
  • Department-specific messages
  • Role-playing scenarios
  • Multi-bot appearance
  • Professional presentation

Tips & Best Practices

Design Tips
  • Create embeds first with /embed builder before using webhooks
  • Use custom usernames to organize different types of announcements
  • Set avatar URLs that match the webhook’s purpose
  • Test webhooks in a private channel first
  • Use variables to make messages dynamic and personalized
Message Formatting
  • Combine text content with embeds for maximum impact
  • Keep webhook usernames short and descriptive
  • Use high-quality images for avatar URLs (square images work best)
  • Variables work in both content and embeds
  • You can send up to 10 embeds in a single webhook message
Security Reminders
  • Never share webhook URLs publicly
  • Delete webhooks you’re no longer using
  • Regenerate webhook URLs if compromised
  • Only give webhook URLs to trusted team members
  • Monitor webhook usage for unauthorized access

Webhook vs Bot Messages

Regular Bot Messages

Pros:
  • Bot’s actual name and avatar
  • Shows as the bot in message
  • Direct bot identity
Cons:
  • Less flexible branding
  • Single identity

Webhook Messages

Pros:
  • Custom names per message
  • Custom avatars per message
  • Professional appearance
  • Multiple “identities”
Cons:
  • Requires webhook setup
  • URL management needed

Troubleshooting

Invalid Webhook URL

Symptoms: Error message about invalid webhook URL format Solutions:
  1. Verify URL starts with https://discord.com/api/webhooks/
  2. Copy the URL directly from Discord (don’t type it manually)
  3. Check that webhook hasn’t been deleted
  4. Ensure no extra spaces or characters in URL

Webhook Not Found

Symptoms: Error that webhook may have been deleted Solutions:
  1. Go to channel settings → Integrations
  2. Verify webhook still exists
  3. If deleted, create a new webhook
  4. Update commands with new URL

Invalid Avatar URL

Symptoms: Error about invalid avatar URL Solutions:
  1. Use direct image URLs (ending in .png, .jpg, .gif, .webp)
  2. Try Discord CDN or Imgur for hosting
  3. Verify URL is accessible (test in browser)
  4. Remove avatar_url parameter if URL is problematic

Embed Not Found

Symptoms: Error that embed name not found Solutions:
  1. Run /embed list to see your saved embeds
  2. Check spelling of embed name (case-sensitive)
  3. Create embed first with /embed builder
  4. Verify you’re the owner of the embed

Must Provide Content or Embed

Symptoms: Error requiring content or embed Solutions:
  1. Add content: parameter with a message
  2. Add embed: parameter with saved embed name
  3. You can include both for richer messages

Permission Requirements

Bot Permissions

Not applicable - webhooks don’t require bot permissions in the channel

User Permissions

Manage Server — Required to use /webhook send command

Channel Permissions

Users need Manage Webhooks permission to create webhooks in Discord’s channel settings

Webhook Owner

Anyone with the webhook URL can send through it (keep URLs secure)

Embed Builder

Create embeds to send through webhooks

Variables

Use dynamic variables in webhook messages

Auto Responders

Automated message responses

Vanity Tracking

Send webhooks when vanity is detected