Zum Inhalt springen
  • Dunkel
  • Hell
  • System

Discord Webhook Setup

Streamer.bot kann Nachrichten in einen Discord-Channel posten via Webhook. Kein Bot-Account nötig, keine OAuth: einfach ein URL.

Doku: docs.streamer.bot/api/sub-actions/integrations/discord/basic-webhook

  1. Discord-Server öffnen
  2. Channel öffnen wo Nachrichten posten sollen (z.B. #stream-notifications)
  3. Channel-Einstellungen (Zahnrad) → IntegrationenWebhooks
  4. Neuer Webhook klicken
  5. Name: Streamer.bot (oder beliebig)
  6. Avatar: Logo hochladen (optional)
  7. Channel: Bestätigen
  8. Webhook-URL kopieren: Format: https://discord.com/api/webhooks/123456.../abcXYZ...

Diese URL ist dein Auth-Token. Sicher behandeln: wer die hat, kann in deinen Channel posten.

Du kannst mehrere Webhooks anlegen für verschiedene Channels:

ChannelUse-Case
#stream-liveStream-Online-Notifications
#twitch-clipsClip-URLs
#sub-feedSub/Follow-Events
#mod-logBan/Timeout-Audit
#oncallErrors / API-Probleme

Pro Channel ein eigener Webhook → pro SB-Action der passende.

Pfad: Integrations → Discord → Basic Webhook

FeldBedeutung
Webhook NameInterner Name in SB (z.B. “Stream-Live”)
Webhook URLDie kopierte URL
UsernameCustom-Name für die Message (override)
ContentDer Text. Mehrzeilig erlaubt. Variablen-Interpolation aktiv
Avatar URLOverride für Avatar
Text to SpeechDiscord-TTS aktivieren

Setzt %messageId% nach dem Post (Discord Message-ID für späteres Edit/Delete).

  • User: <@DISCORD_USER_ID>: z.B. <@123456789012345678> pingt User
  • Role: <@&DISCORD_ROLE_ID>: z.B. <@&987654321> pingt Rolle
  • @everyone: @everyone (Webhook muss in Discord Permission haben)
  • @here: @here

Discord User-/Role-IDs bekommst du via Rechtsklick auf User/Rolle → ID kopieren (Developer Mode an in Discord-Settings).

Discord-Markdown funktioniert im Content:

  • **bold**, *italic*, __underline__, ~~strikethrough~~
  • ```code``` (Mehrzeilig)
  • > Zitat
  • [Link-Text](https://...): funktioniert nicht in Webhooks (Discord-Limit), nur in Bot-Messages
  • Standard: :thumbsup: wird ✅ zu 👍
  • Custom Server-Emoji: <:emoji_name:emoji_id>: z.B. <:hype:123456789>
Use-CaseMD
Twitch-Clip in Discord postenClip-Notification
Stream-Online AnnounceStream-Online-Announce
Sub/Gift-Sub-Shoutout im DiscordSub-Shoutout
  • Webhook-URL public geleaked: jeder kann posten. Bei Verdacht: Webhook löschen + neu anlegen
  • @everyone-Ping ohne Permission: Discord rendert’s als Text statt Ping. Channel-Berechtigung “Everyone erwähnen” muss aktiv sein
  • Rate-Limit: Discord-Webhook erlaubt ~30 Messages pro Minute. Bei Spam: 429er-Response, Discord verzögert
  • Embeds nicht via Basic Webhook: die Sub-Action posted nur Plain-Text. Für Embeds (Card-Layout) entweder Fetch URL POST (geht nicht in SB) oder C# nutzen
  • Discord-Server Discord-Settings: Channel kann Restrictions haben (z.B. Slowmode). Webhook umgeht die meisten, aber nicht alle

Discord-Webhook akzeptiert auch JSON-Body mit Embeds:

{
"content": "Stream startet!",
"embeds": [{
"title": "AzaCraft live",
"url": "https://twitch.tv/azazelitv",
"color": 9520895,
"image": {"url": "https://..."}
}]
}

Aber: Streamer.bot Fetch URL kann nur GET. Volles Embed-Posting braucht C# mit POST. Pragmatisch: Plain-Text mit Link reicht für 95% der Use-Cases.