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

# Event variables

> Every event, and the {event_...} values it gives you.

When an **event** runs, DogeBot tells your blocks **what happened** with values that start with `event_`. For example, in **When a new user joins the server**, `{event_user_mention}` pings the person who joined.

```text theme={null}
Welcome {event_user_mention}! You are member number {server_members}.
```

Open a group below to see every event in it and the values it gives you. In the builder, the variable list only shows the values that work in the event you picked.

> [!NOTE]
>
> The normal values like `{server}` and `{server_members}` work in events too. In events **about a person**, `{user_name}` and friends are about that person as well.

## Values many events share

These come up again and again, so here they are once.

**About the person**

| Value | What it is |
| - | - |
| `{event_user_id}` | Their ID |
| `{event_user_name}` | Their username |
| `{event_user_username}` | Their username |
| `{event_user_mention}` | Pings them |
| `{event_user_avatar}` | A link to their profile picture |
| `{event_user_tag}` | Their full tag |

**About the server**

| Value | What it is |
| - | - |
| `{event_guild_id}` | The server ID |
| `{event_guild_name}` | The server name |

**About the channel**

| Value | What it is |
| - | - |
| `{event_channel_id}` | The channel ID |
| `{event_channel_name}` | The channel name |
| `{event_channel_parent_id}` | The category ID (or the forum, for a forum post) |
| `{event_channel_parent_name}` | The category name |
| `{event_channel_is_thread}` | true if it is a thread |
| `{event_parent_channel_id}` | The category ID |

**About the message**

| Value | What it is |
| - | - |
| `{event_message_id}` | The message ID |
| `{event_message_content}` | What the message says |
| `{event_message_createdAt}` | When it was sent |
| `{event_message_channel}` | Mentions the channel |
| `{event_message_channel_id}` | The channel ID |
| `{event_message_channel_name}` | The channel name |
| `{event_message_channel_type}` | What kind of channel |
| `{event_message_has_attachments}` | true if it has files |
| `{event_message_attachments_count}` | How many files |
| `{event_message_attachment_1}` | A link to the first file |
| `{event_message_attachments}` | Links to all files |
| `{event_message_has_poll}` | true if it has a poll |
| `{event_message_poll_question}` | The poll question |

## Every event

### Member events

> **When a new user joins the server**
>
> Has the values about the person and the server.

> **When a user leaves or is kicked from the server**
>
> Has the values about the person and the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_member_roles}` | The IDs of the roles they had, split with commas. Handy for giving roles back if they rejoin. |

> **When a user is banned from the server**
>
> Has the values about the person and the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_ban_reason}` | Why they were banned |

> **When a user is unbanned from the server**
>
> Has the values about the person and the server.

> **When a role is added to a user**
>
> Has the values about the person and the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_role_id}` | The role ID |
> | `{event_role_name}` | The role name |

> **When a role is removed from a user**
>
> Has the values about the person and the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_role_id}` | The role ID |
> | `{event_role_name}` | The role name |

> **When a guild member is updated**
>
> Has the values about the person and the server.

> **When a user changes their nickname**
>
> Has the values about the person and the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_new_nickname}` | The new nickname |
> | `{event_old_nickname}` | The old nickname |

> **When a user's status changes**
>
> Has the values about the person and the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_new_status}` | The new status |
> | `{event_old_status}` | The old status |

> **When member passes membership screening**
>
> Has the values about the person and the server.

### Message events

> **When a new message is sent**
>
> Has the values about the person, the channel and the message.

> **When a message is updated or edited**
>
> Has the values about the person, the channel and the message.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_new_content}` | The message after the change |
> | `{event_old_content}` | The message before the change |

> **When a message is deleted**
>
> Has the values about the person, the channel and the message.

> **When a message is pinned**
>
> Has the values about the channel.

> **User Started Typing**
>
> Has the values about the person, the server and the channel.

### Reaction events

In reaction events, **the person** is whoever reacted. The `event_message_author_` values are about whoever **wrote** the message.

> **When a reaction is added to a message**
>
> Has the values about the person, the channel and the message.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_reaction_emoji}` | The emoji used |
> | `{event_reaction_count}` | How many of this reaction the message has now |
> | `{event_message_author_id}` | The ID of who wrote the message |
> | `{event_message_author_name}` | Their username |
> | `{event_message_author_mention}` | Pings them |
> | `{event_message_author_avatar}` | A link to their profile picture |
> | `{event_message_url}` | A link that jumps to the message |
> | `{event_message_image}` | A link to the message's first picture, if it has one |

> **When a reaction is removed from a message**
>
> The same values as **When a reaction is added**. `{event_reaction_count}` is the count after it was removed.

> **All Reactions Removed**
>
> Has the values about the person, the channel and the message.

> **Specific Reaction Removed**
>
> Has the values about the person, the channel and the message.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_reaction_emoji}` | The emoji used |

### Voice events

Every voice event has the values about the person and the server, plus:

| Value | What it is |
| - | - |
| `{event_voice_channel_id}` | The voice channel ID |
| `{event_voice_channel_name}` | The voice channel name |

The voice events are: **joins**, **leaves**, **starts streaming**, **stops streaming**, **is server muted**, **self mutes**, **is server unmuted**, **self unmutes**, **is server deafened**, **self deafens**, **is server undeafened** and **self undeafens**.

> **When a member switches voice channels**
>
> Has the values about the person and the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_new_channel_id}` | The voice channel they moved to |
> | `{event_old_channel_id}` | The voice channel they left |
> | `{event_voice_channel_name}` | The voice channel name |

### Channel events

> **When a channel is created**
>
> Has the values about the server and the channel.

> **When a channel is updated**
>
> Has the values about the channel.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_old_name}` | The old name |

> **When a channel is deleted**
>
> Has the values about the server and the channel.

> **When a channel's permissions are updated**
>
> Has the values about the channel.

> **When a channel's topic is updated**
>
> Has the values about the channel.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_new_topic}` | The new topic |
> | `{event_old_topic}` | The old topic |

> **Channel Pins Updated**
>
> Has the values about the channel.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_pins_updated_at}` | When the pins changed |

### Thread events

> **When a thread is created**
>
> Has the values about the server and the channel.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_thread_id}` | The thread ID |
> | `{event_thread_name}` | The thread name |

> **When a thread is updated or deleted**
>
> Has the values about the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_thread_id}` | The thread ID |
> | `{event_thread_name}` | The thread name |

> **Thread List Synchronized**
>
> Has the values about the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_thread_count}` | How many threads |
> | `{event_thread_ids}` | All the thread IDs |

> **Thread Members Updated**
>
> Has the values about the channel.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_added_count}` | How many people were added |
> | `{event_added_member_ids}` | IDs of the people added |
> | `{event_removed_count}` | How many people were removed |
> | `{event_removed_member_ids}` | IDs of the people removed |
> | `{event_thread_id}` | The thread ID |
> | `{event_thread_name}` | The thread name |

> **Thread Member Updated**
>
> Has the values about the person.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_thread_id}` | The thread ID |
> | `{event_thread_name}` | The thread name |

### Role events

> **When a role is created or deleted**
>
> Has the values about the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_role_id}` | The role ID |
> | `{event_role_name}` | The role name |

> **When a role is updated**
>
> Has the values about the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_old_role_name}` | The old role name |
> | `{event_role_id}` | The role ID |
> | `{event_role_name}` | The role name |

### Boost events

> **When a member boosts the server for the first time**
>
> Has the values about the person and the server.

> **When a member unboosts the server**
>
> Has the values about the person and the server.

> **When the server boost level increases or decreases**
>
> Has the values about the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_boost_level}` | The boost level (0 to 3) |

### Server events

> **When guild name changes**
>
> Has the values about the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_old_guild_name}` | The old server name |

> **When guild features are updated**
>
> Has the values about the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_new_features}` | The new features list |
> | `{event_old_features}` | The old features list |

> **When guild ownership changes**
>
> Has the values about the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_new_owner_id}` | The new owner ID |
> | `{event_old_owner_id}` | The old owner ID |

> **When AFK channel is set**
>
> Has the values about the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_afk_channel_id}` | The AFK channel ID |
> | `{event_afk_timeout}` | How long before someone counts as AFK |

> **When AFK channel is removed**
>
> Has the values about the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_afk_channel_id}` | The AFK channel ID |

> **When guild banner is added**
>
> Has the values about the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_banner_url}` | A link to the banner picture |

> **Other server events**
>
> **When guild banner is removed**, **When guild becomes partnered**, **When guild partnership is removed** and **Guild Integrations Updated** have the values about the server.

### Invite events

> **When an invite is created**
>
> Has the values about the channel.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_invite_code}` | The invite code |
> | `{event_invite_url}` | The invite link |

> **When an invite is deleted**
>
> Has the values about the channel.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_invite_code}` | The invite code |

### Poll events

> **When a user votes on a poll, or removes their vote**
>
> Has the values about the person, the channel and the message.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_poll_answer}` | The answer they voted for |

### Scheduled event events

> **Created, updated or deleted**
>
> Has the values about the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_scheduled_event_id}` | The event ID |
> | `{event_scheduled_event_name}` | The event name |
> | `{event_scheduled_event_description}` | The event description |

> **When a user joins or leaves a scheduled event**
>
> Has the values about the person and the server, plus the same three `event_scheduled_event_` values.

### Stage and sticker events

> **Stage Instance Created, Updated or Deleted**
>
> Has the values about the server and the channel.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_stage_id}` | The stage ID |
> | `{event_stage_topic}` | The stage topic |

> **Sticker Created, Updated or Deleted**
>
> Has the values about the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_sticker_id}` | The sticker ID |
> | `{event_sticker_name}` | The sticker name |
> | `{event_sticker_description}` | The sticker description |
> | `{event_sticker_url}` | A link to the sticker picture |

### Auto Moderation and audit events

> **Auto Moderation Action Executed**
>
> Has the values about the person, the server, the channel and the message.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_action_type}` | What AutoMod did (block, alert or time out) |
> | `{event_matched_content}` | The words that broke the rule |
> | `{event_matched_keyword}` | The rule word it matched |
> | `{event_rule_id}` | The rule ID |
> | `{event_rule_trigger_type}` | What kind of rule it is |

> **Auto Moderation Rule Created, Updated or Deleted**
>
> Has the values about the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_rule_id}` | The rule ID |
> | `{event_rule_name}` | The rule name |
> | `{event_rule_enabled}` | true if the rule is on |
> | `{event_rule_trigger_type}` | What kind of rule it is |

> **Audit Log Entry Created**
>
> Has the values about the person and the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_audit_action}` | What happened, in words |
> | `{event_audit_action_type}` | The type of action |
> | `{event_audit_executor_id}` | ID of who did it |
> | `{event_audit_reason}` | The reason given |
> | `{event_audit_target_id}` | ID of what it was done to |
> | `{event_audit_target_type}` | What kind of thing it was done to |

> **Application Command Permissions Updated**
>
> Has the values about the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_application_id}` | The app ID |
> | `{event_command_id}` | The command ID |

### Bot events

> **When the bot starts or is restarted**
>
> Runs every time your bot turns on. Great for a **Bot status** block.

> **When the bot joins a server**
>
> Has the values about the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_guild_members}` | How many members the server has |

> **When the bot leaves a server**
>
> Has the values about the server.

> **When a custom variable's value changes**
>
> Has the values about the server.
>
> Plus:
>
> | Value | What it is |
> | - | - |
> | `{event_variable_name}` | The variable that changed |
> | `{event_variable_old_value}` | The old value |
> | `{event_variable_new_value}` | The new value |
> | `{event_variable_user_id}` | The member it changed for |
> | `{event_variable_key}` | The key that changed |

> **When the bot is updated through the dashboard**
>
> | Value | What it is |
> | - | - |
> | `{event_update_type}` | What was changed |

### Timed events

The clock events (**every 10 seconds**, **1 minute**, **5**, **10** and **30 minutes**, **1**, **3**, **6** and **12 hours**, and **every 24 hours**) run by themselves. Nobody did anything, so there is **no person and no channel**. To say something, use **Post in a channel** with a channel ID.

> **When a timed event is executed**
>
> Runs when one of **your own** timed events fires. Gives `{timed_event_name}` and `{timed_event_id}`.

### Social alerts and webhooks

> **When a YouTube channel uploads a video**
>
> Choose the YouTube channel in **Integrations**. Gives `{event_youtube_video_title}`, `{event_youtube_video_url}`, `{event_youtube_video_thumbnail}`, `{event_youtube_channel_title}` and more. See [YouTube, Twitch and TikTok alerts](/connections/youtube-twitch-and-tiktok-alerts).

> **When a Twitch channel goes live**
>
> Choose the streamer in **Integrations**. Gives `{event_twitch_display_name}`, `{event_twitch_stream_title}`, `{event_twitch_game_name}`, `{event_twitch_channel_url}`, `{event_twitch_viewer_count}` and more.

> **When a TikTok account posts**
>
> Choose the account in **Integrations**. Gives `{event_tiktok_display_name}`, `{event_tiktok_post_url}`, `{event_tiktok_post_description}`, `{event_tiktok_post_thumbnail}` and more.

> **When a webhook is executed**
>
> Runs when another website sends data to your bot's webhook link. Every field it sends becomes a `{webhook_...}` value: a field called `amount` becomes `{webhook_amount}`. See [Inbound webhooks](/connections/inbound-webhooks).

## WhatsApp flows

WhatsApp flows use their own values, not `event_` ones:

| Value | What it is |
| - | - |
| `{wa_name}` | Their WhatsApp name |
| `{wa_from}` | Their phone number |
| `{wa_text}` | What their message says |
| `{wa_type}` | What they sent: text, image, audio, location and so on |
| `{wa_time}` | When it was sent |
| `{wa_message_id}` | The message ID |
| `{wa_reply_to}` | The message they replied to |
| `{wa_choice_id}` | The hidden ID of the button or choice they tapped |
| `{wa_choice_title}` | The words on the button or choice they tapped |
| `{wa_choice_description}` | The small text under the choice they tapped |
| `{wa_media_id}` | The ID of a picture, voice note or file they sent |
| `{wa_media_mime}` | What kind of file it is |
| `{wa_latitude}` | Latitude, when they share a location |
| `{wa_longitude}` | Longitude, when they share a location |
| `{wa_location_name}` | The place name, when they share a location |
| `{wa_bot_number}` | Your WhatsApp number |

See [WhatsApp variables](/whatsapp/whatsapp-variables).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.