devlander-software/Discord Webhook Notifier Action
Advanced Discord notifications for GitHub Actions with smart formatting, enterprise features & drop-in compatibility. Includes comprehensive input validation and security features.
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Maintainedlast commit Sep 5, 2025
- License
- MIT
Pinned Snippet
uses: devlander-software/discord-webhook-notifier-action@4227d0b86d890302c5959dfb981146ae51bdf82f # v1.1.0tags can be moved; commit SHAs can't. why a SHA?
Inputs
| name | description | required | default |
|---|---|---|---|
| webhook | Discord Webhook URL (create one in your Discord server settings). Must be a valid Discord webhook URL. | yes | — |
| auto_detect | Auto-detect workflow context and create smart notifications (true/false) | no | true |
| smart_formatting | Use smart formatting with emojis, colors, and rich content (true/false) | no | true |
| content | Plain text message (outside embed). Max 2000 characters. | no | "" |
| username | Bot username (overrides default). Max 80 characters. | no | GitHub Actions |
| avatar_url | Bot avatar URL (overrides default). Must be from trusted domains (github.com, github.githubassets.com, raw.githubusercontent.com, cdn.discordapp.com, discord.com). | no | https://github.githubassets.com/images/modules/logos_page/GitHub-Mark.png |
| embeds | Raw JSON array of Discord embeds (overrides all other embed options). Must be valid JSON. Max 10KB. | no | "" |
| tts | Text-to-speech (true/false) | no | false |
| thread_id | Discord thread ID to send message to (optional). Max 50 characters. | no | "" |
| flags | Message flags (SUPPRESS_EMBEDS, SUPPRESS_NOTIFICATIONS). Max 50 characters. | no | "" |
| mention_users | Comma-separated list of user IDs to mention. Max 500 characters. | no | "" |
| mention_roles | Comma-separated list of role IDs to mention. Max 500 characters. | no | "" |
| retry_on_failure | Retry sending notification on failure (true/false) | no | true |
| max_retries | Maximum number of retry attempts | no | 3 |
| retry_delay | Delay between retries in seconds | no | 5 |
| status | Job status (success, failure, cancelled) | yes | — |
| workflow | Workflow name | yes | — |
| job | Job name | yes | — |
| repo | Repository name (e.g., owner/repo) | yes | — |
| branch | Branch name | yes | — |
| commit | Commit SHA | yes | — |
| actor | GitHub actor (user who triggered the workflow) | yes | — |
| run_url | GitHub Actions run URL | yes | — |
| title | Custom title for the Discord message (default: status with icon) | no | "" |
| description | Custom description for the Discord message (default: auto-generated) | no | "" |
| include_commit_message | Include commit message in the notification (true/false) | no | true |
| include_duration | Include job duration in the notification (true/false) | no | true |
| include_changed_files | Include list of changed files (true/false) | no | false |
| include_environment | Include environment info (OS, Node version, etc.) (true/false) | no | false |
| color_success | Custom color for success status (hex color without #) | no | 3066993 |
| color_failure | Custom color for failure status (hex color without #) | no | 15158332 |
| color_cancelled | Custom color for cancelled status (hex color without #) | no | 9807270 |
| use_rich_embeds | Use rich embeds with thumbnails, fields, and better formatting (true/false) | no | true |
| show_workflow_duration | Show total workflow duration (true/false) | no | true |
| show_job_breakdown | Show breakdown of individual jobs (true/false) | no | false |
| compact_mode | Use compact mode for shorter notifications (true/false) | no | false |
Outputs
no outputs