Apprise v2.0 Released: An Open-Source Unified Hub for 160 Notification Services

Apprise v2.0 brings authentication, priority routing, and smart retry to its 160-service open-source notification hub.
Apprise is an open-source notification aggregation hub that delivers alerts to 160 channels — including Discord, Telegram, email, and SMS — through a unified configuration. v2.0 is the project's most significant upgrade in nearly a decade, focusing on enterprise-grade Apprise API features: optional authentication and access control, configuration IDs passed via HTTP headers to avoid log exposure, template variables for secret separation, priority routing with escalation strategies, intelligent retry (only failed targets are retried), timeout controls, real-time delivery logs, multi-format messages (Markdown/HTML/plain text), and localization in 20 languages. Developers embedding the Python library should note that v2 includes breaking changes.
The open-source notification aggregation tool Apprise has landed a major v2.0 update, with Apprise API v2.0 releasing alongside it. Nearly a decade into its life, this release brings a series of production-ready improvements including authentication, priority routing, and intelligent retry logic.
What Problem Does Apprise Actually Solve?
Apprise is positioned as a notification hub — or, in the author's own words, a "glorified switchboard." Your applications, scripts, containers, cron jobs, monitoring tools, Home Assistant instances, and more can all send notifications to Apprise, which then handles delivery to target channels like Discord, Telegram, Slack, Matrix, Gotify, email, SMS providers, and others.
Apprise currently supports 160 notification services, all configured using the same unified logic. This means developers don't need to learn a separate API for each notification channel — master Apprise's unified configuration approach and you can integrate with hundreds of services.

In terms of usage, Apprise offers three paths: invoke it directly via the CLI, embed the Python library into your application, or run the Apprise API on a self-hosted server to centrally manage all notification configurations. The API approach is especially useful for environments where many applications need to send notifications simultaneously.
API Mode: Centralized Credential Management
The biggest value of the API approach lies in credential management. Without a centralized solution, sensitive credentials like Discord webhooks, SMTP passwords, and Telegram tokens tend to scatter across applications, scripts, and containers — hard to maintain and easy to leak.
Apprise API lets you consolidate all of these configurations in one place, centrally stored and centrally protected. When you need to rotate a key for a particular channel, you change it in one place and every application depending on it picks up the change automatically — this significantly reduces operational overhead in mid-to-large self-hosted environments.
Webhooks are a core integration mechanism for many modern notification services — essentially an HTTP callback URL where a service provider generates a unique endpoint, and any program that sends a request to that address can trigger the corresponding message push. Discord, Slack, Lark, and similar platforms rely heavily on this mechanism. The problem is that these webhook URLs are themselves credentials: if leaked, anyone can send messages to your channel. Without centralized management, a moderately sized self-hosted environment can easily end up with dozens of webhook URLs scattered across environment variables, config files, and CI/CD scripts — with no way to audit who holds which credentials or quickly rotate all keys if a breach is suspected. Apprise API acts like a "secret proxy": callers only need to know the address of the Apprise server, while the actual downstream credentials are fully encapsulated server-side, inaccessible to callers.
Core New Features in v2.0
The focus of this major release is almost entirely on enterprise-grade capabilities in the Apprise API:
Authentication and Access Control
Apprise API introduces authentication for the first time. It's optional, but you can now protect the entire server with an admin account and assign individual credentials and access controls to separate configurations.
Configuration IDs No Longer Exposed in URLs
Previously, configuration IDs had to appear in URLs, making them easy to record in web server access logs. Supported clients can now pass configuration IDs via HTTP headers, preventing sensitive information from leaving a trail.
Template Variables and Secret Separation
Through template variables, secrets can be provided separately rather than stored directly in configuration files, further reducing the risk of credential exposure.
Priority, Escalation, and Intelligent Retry
v2.0 supports priority and escalation strategies: you can try one notification route first and only fall back to the next if delivery fails. The retry mechanism is smarter too — if sending notifications to five targets fails for only one, only that one failed target is retried, not all of them.
Escalation is a common concept in enterprise alerting systems, referring to the automatic promotion to a more urgent notification channel when the first-tier channel fails to deliver (or fails to receive a response). A typical escalation path might look like: push a silent Telegram message first, switch to a push notification with sound if that fails, and finally fall back to SMS. This pattern is well-established in commercial operations tools like PagerDuty and OpsGenie — Apprise v2.0 brings similar capabilities to a fully self-hosted solution. Meanwhile, the "retry only failed targets" logic avoids the "one target dragging everything down" problem: when broadcasting alerts to multiple channels, this effectively reduces overall delivery latency and avoids repeatedly disturbing channels that already succeeded.
Timeout Control and Real-Time Logs
New timeout controls mean a slow or broken service can no longer stall the entire notification pipeline. Result feedback is also clearer — you can see what succeeded, what failed, and why. Apprise API can even stream delivery logs in real time through the web interface or API.
Multi-Format Message Support
Previously, Apprise would convert everything to a single format. Now, supported channels can each receive Markdown, HTML, or plain text independently.
The Apprise API web interface has also been updated with significantly improved mobile experience and localization support for 20 languages.
Quick Start with Docker
The official documentation provides a Docker startup example with authentication enabled:
docker run --name apprise \
-p 8000:8000 \
-v ./config:/config \
-v ./attach:/attach \
-e APPRISE_STATEFUL_MODE=simple \
-e APPRISE_AUTH_REQUIRED=yes \
-e APPRISE_USER=user \
-e APPRISE_PASSWORD=changeme \
-e APPRISE_WEB_AUTH_SECRET="$(openssl rand -hex 32)" \
-e APPRISE_WORKER_COUNT=1 \
-d caronc/apprise:2
Once started, visit http://localhost:8000 and log in with user / changeme. The author specifically notes: be sure to change the default password before using this in production; if you plan to expose the Apprise API outside a trusted network, it's recommended to add a HTTPS layer on top.
For users already running the Apprise API, there is also an official Android companion app. It's worth noting that it functions as a mobile companion for connecting to and managing your own API server — it is not a standalone notification service.
Migration Risks to Be Aware Of
For developers embedding the Python library in their own applications, v2 contains breaking changes. The author recommends carefully reading the release notes before upgrading. The good news is that the v1 branch remains available, giving users who need more time a buffer for migration.
A Long-Maintained Open-Source Project
Apprise has existed since 2017. Written in Python and licensed under BSD 2-Clause, it maintains 100% test coverage, has surpassed 17,000 GitHub stars, and sees approximately 9 million PyPI downloads per month. It has always been a project that is fully self-hostable, user-controlled, and free.
The author noted that quite a few of the features in v2 actually came from issues and suggestions submitted by the community over the years — a classic example of how open-source projects continue to evolve. For self-hosters and operations teams who need unified management of multi-channel notifications, v2.0's authentication, priority routing, and centralized credential management mark its evolution from a handy tool into production-ready notification infrastructure.
Related articles

Bilibili's Hit Dify Tutorial: A Practical Guide to Building 20+ AI Apps from Scratch
A distilled guide to Bilibili's top-rated Dify tutorial: Windows + Docker deployment, MySQL connection, five app types, model integration strategy, and publishing.

Agent Skills Beginner's Guide: From Concepts to Multi-Agent Collaboration in Practice
A comprehensive guide to Agent Skills: core concepts, components, the importance of Description, standardization, beginner learning paths, and multi-agent collaboration.

One Neuron Detects Both Cats and Cars? We Reproduced It and Found a New Explanation
The cat-car neuron reinterpreted: researcher Cammarata argues it distinguishes pointy from round, not cats from cars. We reproduced the experiment and found the new explanation holds on most inputs—but cars are the exception. The interpretability debate continues on language models.