discord-webhook
Easily send Discord webhooks with Python
What it is and what it does
discord-webhook is a Python wrapper around Discord's webhook API that lets you send messages to Discord channels without creating a bot. It handles the HTTP requests to Discord via the requests library and provides a simple object-oriented interface for constructing and sending webhook payloads.
The package supports basic text messages, rich embeds with custom fields and formatting, file attachments, thread targeting, and automatic rate-limit retry logic. It also includes async variants of its main methods for non-blocking use in async applications. You provide a webhook URL (obtained from Discord server settings), instantiate a DiscordWebhook object with your message content, and call execute() to send it; the package manages serialization, HTTP transport, and response handling.
Use it for:
- Send automated alerts or notifications from a monitoring system to a Discord channel without running a persistent bot.
- Post build or deployment status updates from CI/CD pipelines directly to Discord.
- Create rich formatted messages with embeds, images, and structured fields for logging or reporting.
- Distribute files (images, logs, reports) to Discord channels programmatically.
- Send messages to specific Discord threads or create new threads in forum channels via webhook.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Send messages to Discord channels via webhooks, with support for embeds, files, threads, rate-limit handling, and async operations.
Yes. The package is stable, has no known vulnerabilities, low install friction, and a permissive license. Maintenance is aging (no release since March 2025, last commit August 2025), but the repository is active and the core functionality is mature. Install if you need a straightforward way to send Discord webhooks; be aware that updates may be infrequent.
Install
discord-webhook on PyPI
pip
pip install discord-webhookuv
uv add discord-webhookpoetry
poetry add discord-webhookInstalling discord-webhook
Before you install
Low install friction; single runtime dependency (requests). Maintenance status is aging—last commit was 2025-08-06 and the package has not had a release since 2025-03-05, though the repository remains active and not archived.
License in practice
MIT license (permissive); you may use, modify, and distribute this package freely in commercial and private projects with minimal restrictions.
Quickstart
from discord_webhook import DiscordWebhook
webhook = DiscordWebhook(url="your webhook url", content="Webhook Message")
response = webhook.execute()
You must obtain a Discord webhook URL from your server settings before use.
Verify before relying
- Whether async support is fully documented and production-ready in the current version.
- Current rate-limit retry behavior and whether it handles all Discord rate-limit scenarios.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (<4.0,>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — requests |
| Maintenance | aging — 527 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 899,166/month — #4,779 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: discord_webhook-1.4.1-py3-none-any.whl
Keywords: discord, webhook
Tags
More Internet packages
Botocore provides low-level, data-driven access…
permissive · top 100 on PyPI
aiobotocoreProvides an async client for AWS services using…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
filelockProvides a platform-independent file locking…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
googleapis-common-protosProvides common Protocol Buffer message…
permissive · top 100 on PyPI
dhooks-liteSends messages and embeds to Discord channels…
unclear · top 15,000 on PyPI
django-signal-webhooksAdds webhook support to Django models by…
permissive · top 15,000 on PyPI
slackwebSends messages to Slack channels via incoming…
permissive · top 15,000 on PyPI
pymsteamsSends formatted messages to Microsoft Teams…
permissive · top 5,000 on PyPI
apache-airflow-providers-discordIntegrates Discord messaging into Apache…
permissive · top 15,000 on PyPI
fbmessengerA Python library for sending and receiving…
permissive · top 15,000 on PyPI
aa-fleetpingsaa-fleetpings is a Django plugin for Alliance…
copyleft · top 15,000 on PyPI
discordA Python API wrapper for Discord that provides…
unclear · top 15,000 on PyPI
discord.pydiscord.py is an async-ready Python wrapper for…
permissive · top 5,000 on PyPI
line-bot-sdkSDK for building LINE bots that handles webhook…
permissive · top 5,000 on PyPI