Why a Discord Webhook?
Your server reports for itself — in the Discord your community already uses: start failed, server crashed, backup failed or resources running low arrive as a message in the channel of your choice, instead of you having to keep an eye on the dashboard.
A webhook is the simplest way to do this: no bot, no invite, no permission juggling. You create an address in Discord that points at exactly one channel, store it with us — done. The whole thing takes about two minutes.
The screenshots below show the German Discord interface, because that is where these steps were captured. Discord renders in your own language, so the labels in your client will match your language setting — the position of every button is identical.
What You Need
- A Discord server where you hold the “Manage Webhooks” permission. On your own server you have it automatically; on someone else's you will need an admin.
- A channel for the alerts to land in. A dedicated channel (say
#server-status) keeps things tidier than dumping alerts into your main chat. - Your game server at mcfreehost — the setup happens in the server panel under “Notifications”.
Part 1: Create the Webhook in Discord
Step 1: Open the channel settings
Hover over the channel in the sidebar. A gear icon (“Edit Channel”) appears next to the name — click it.

Step 2: Open Integrations and create the webhook
In the channel settings, switch to “Integrations” on the left. There you will find the “Webhooks” card with a “Create Webhook” button. If the channel already has webhooks, the button at the top reads “New Webhook”.

Step 3: Name it and copy the URL
Discord creates the webhook immediately, with a random name by default. Rename it freely — Server Status, for example; this name appears as the sender of the messages. Check the “Channel” field to make sure the target channel is the one you want.
Then click “Copy Webhook URL”. The URL is now on your clipboard.

This URL is a password. Anyone holding it can post into your channel without signing in. Never share it publicly — not in chat, not in a screenshot, not in a ticket. If it does leak, delete the webhook in Discord (“Delete Webhook”) and create a new one; the old URL becomes worthless instantly.
Part 2: Connect the Webhook to Your Server
Step 4: Paste the URL in the notifications tab
Open your server in the dashboard and go to the “Notifications” tab. At the top you will find “Connect channels” with the Discord card.
Paste the copied address into the “Discord webhook URL” field and click “Connect Discord”.
The card then shows the address truncated: the secret tail is replaced by dots so nobody can read it off your screen. For the same reason there is no “edit URL” — to switch, use “Remove Discord” and connect again.

Step 5: Test the delivery
Click “Test Discord”. The test message is queued and shows up in your channel moments later — the sender is the name you gave the webhook in step 3.
That message already shows the format of every later alert:
| Field | Meaning |
|---|---|
| Heading | Your server's name and the type of alert |
| Severity | How the alert is rated, for example info |
| Evidence | Where the alert came from — channel_test for the test |
| Occurred | Timestamp in UTC |
| Dashboard | Direct link back to your server's notifications tab |
If nothing arrives, “Recent deliveries” further down tells you why — more on that below.
If the test cannot be triggered again straight away, that is not a fault: a note tells you how long to wait. It keeps a stuck click from flooding your channel.
Part 3 (optional): Web Push as a Second Channel
Besides Discord, the same server can reach you directly in your browser — no Discord, no detour. Handy when you want to see an alert personally while the Discord channel belongs to the whole team.
One thing to understand: Web Push belongs to the device, not to your account. You enable it for this browser on this device. Phone and desktop are two separate activations — and the test always sends the alert to whichever device you are sitting at.
Here is how:
- In the “Web Push” card, click “Activate Web Push”.
- The browser asks whether the site may send you notifications — allow it. Without that permission the channel stays off.
- The card then reads “Ready”. “Test Web Push” sends a sample alert to this device right away.
- “Remove Web Push” disconnects this device again.
If it does not work, the card tells you why — the three most common cases:
- “This browser does not support Web Push.” Then Discord stays your route; nothing is wrong with your server.
- “Web Push is blocked in the browser.” You (or someone before you) declined notifications for the site. Allow them in your browser's site settings and enable the channel again.
- “Web Push was rejected by the browser or operating system.” This one sits a level higher: notifications are switched off for the whole browser in your system settings. Enable them there.
A special case is “Web Push is currently unavailable on this server.” That one is not about your device — use Discord in the meantime.
Choosing Events
A connected channel on its own sends nothing. Under “Choose events” you decide which alerts go out — and through which channel. Every event has its own selection for Discord and Web Push; an unconnected channel is locked and tells you so with “Connect this channel above first.”
While no channel at all is connected, nothing here can be selected — deliberately: “Connect Discord or Web Push first. Without a channel there is nothing to select, because no alert could arrive.”
Available events:
| Event | When it fires |
|---|---|
| Start failed | The server would not start |
| Server crashed | The server exited unexpectedly |
| Backup failed | A backup could not be created |
| Resources running low | Memory, CPU or disk are filling up |
| TPS persistently low | The tick rate stays below target for a longer stretch |
| Update available | A newer version of your server software exists |
| Test server expiring soon | A test server's runtime is about to end |
| New player record | More people were online simultaneously than ever before |
| Unusual connections | A conspicuous connection pattern on your server |
Confirm your selection with “Apply event rules”.
A sensible split: what the team should see (crashes, backups) goes to Discord; what concerns only you (update available, test server expiring) lands on Web Push.
Quiet Hours: Not Being Woken Up
Under “Quiet hours and defaults” you define a window during which nothing should reach you — 22:00 to 07:00 in your timezone, say. Alerts are not lost: “Alerts are held back and summarised. Afterwards you only receive the current state.”
So a server that crashes at three in the morning and recovers by four will not wake you — in the morning you learn where things stand now, instead of working through six separate alerts.
Confirm with “Apply quiet hours”.
When Nothing Arrives
“Recent deliveries” lists every send with its status. The four possible states:
- Delivered — Discord accepted the message. If it still is not visible, check you are looking at the right channel.
- Pending — the send is still in flight. Give it a moment.
- Temporarily failed — Discord was unreachable or rejected the call. We retry; the “Attempt” column counts along.
- Disabled — the channel accepts nothing any more. Most common cause: the webhook was deleted in Discord, or the channel no longer exists. Create a new webhook and connect it again.
Two more common trip-ups:
- The URL got truncated while copying. It must start with
https://discord.com/api/webhooks/and carry two long segments after that. If the tail is missing, the panel reports “Invalid Discord webhook URL.” - No event is selected. Channel connected but no rule — then it stays quiet. The test still works in that case, because it addresses the channel directly.
Web Push adds a third case: “No Web Push is registered for this device any more.” That happens when the browser dropped the permission — after clearing site data, for instance. Just enable the channel on that device again.
Removing the Webhook Again
“Remove Discord” disconnects the channel from this server. Your settings survive: “No new server alerts will be delivered through this channel. Your event rules and thresholds stay saved.” Connect a new webhook later and your old rules apply again immediately.
If you also want the webhook gone on Discord's side — because the URL went public, for instance — delete it there as well via “Delete Webhook”.
Frequently Asked Questions
Do I need a Discord bot?
No. A webhook is precisely the bot-free route: no invite, no permission grants, no persistent connection.
Can several servers post into the same channel?
Yes. Connect the same webhook on each server. Every alert names the server in its heading, so you can tell them apart. A dedicated channel per server is usually clearer, though.
Can one server post into several channels?
One Discord channel per server is what the panel provides. For a second recipient, enable Web Push — both run side by side in the same tab.
Do I have to enable Web Push on every device separately?
Yes. The permission belongs to the browser on that device, not to your account. Phone and desktop are two separate activations.
Will my community see the alerts?
Anyone who can read the channel will. If crash and resource alerts should stay internal, create the webhook in a channel only your team can see — or route those events to Web Push instead.
Does the URL change when I rename the webhook?
No. You can change the name and avatar at any time without invalidating the address. You only need to reconnect if you delete the webhook and create a new one.