Mastering Rich Notifications with Pushover and Home Assistant
- #home_assistant
- #notifications
- #pushover
- #automation
- #smart_home

Mastering Rich Notifications with Pushover and Home Assistant
Reliable and timely notifications are a cornerstone of a well-functioning smart home. While Home Assistant offers various notification methods out-of-the-box, such as the companion app, email, or Telegram, services like Pushover provide enhanced features that can make your alerts more effective and actionable.
Pushover is a paid service that acts as a centralized notification gateway, delivering messages to your iOS, Android, and desktop devices. Its key advantages lie in its reliability, guaranteed delivery (within reason), customizable sounds, priority levels (including high-priority alerts that bypass silent mode and emergency alerts requiring acknowledgement), and the ability to include URLs and attachments.
If you find standard notifications sometimes get lost, or if you need critical alerts to demand immediate attention, integrating Pushover with Home Assistant is a powerful solution. This guide will walk you through setting up Pushover and integrating it into your Home Assistant automations.
Why Pushover for Home Assistant Notifications?
Compared to basic notification methods, Pushover offers:
- Reliability: Pushover is designed specifically for delivering application and system notifications.
- Priority Levels: Differentiate between informational, important, and critical alerts. High priority notifications can bypass silent/Do Not Disturb modes. Emergency priority requires user acknowledgement.
- Custom Sounds: Assign specific sounds to notifications based on priority or content.
- URLs and Attachments: Include clickable links in your notifications (e.g., to camera feeds, dashboards) or even attach images.
- Delivery to Multiple Devices: Send notifications to all your registered devices simultaneously.
- API Limits: While a paid service, the API limits (typically 7,500 messages per month per app key) are generous for personal use.
Prerequisites
- A working Home Assistant installation (any supported installation method).
- A Pushover account (sign up here). Pushover requires a one-time license purchase per platform (iOS/Android) after a 30-day free trial.
- The Pushover app installed on your mobile devices.
Setting Up Your Pushover Application Key and User Key
Before configuring Home Assistant, you need to get your unique User Key and create an Application Key in Pushover.
- Find Your User Key: Log in to the Pushover website. Your User Key is prominently displayed on the dashboard page. It's a 30-character alphanumeric string. Keep this private.
- Create an Application: Scroll down on the dashboard and click on "Register an Application".
- Fill in the application details:
- Name: Give it a descriptive name, like "Home Assistant".
- Type: Select "Application".
- Description: (Optional) Briefly describe its purpose.
- Icon: (Optional) Upload an icon for your application.
- URL: (Optional) You can put your Home Assistant external URL here if desired, or leave blank.
- Accept the terms of service and click "Create Application".
- Once created, you will be taken to the application's page. Your Application Token/API Key is displayed here. This is also a 30-character alphanumeric string.
You now have your User Key (identifies you) and your Application Token (identifies the Home Assistant source of the notification). These are what you'll use in Home Assistant.
Integrating Pushover with Home Assistant
The Pushover integration in Home Assistant is configured via the UI.
- In Home Assistant, go to Settings -> Devices & Services.
- Click the "+ Add Integration" button.
- Search for "Pushover" and select it.
- Enter your Application Token (the one you created for Home Assistant).
- Enter your User Key(s). You can enter multiple User Keys separated by a comma if you want to send notifications to other Pushover users (like family members). You can also enter a Group Key if you've set up a group in Pushover.
- You can optionally set a Default Title that will be used for notifications if no title is specified in the service call.
- Submit the form.
- Home Assistant should now show the Pushover integration configured.
Home Assistant creates a notification service entity, typically named notify.pushover
(or similar if you have multiple Pushover configurations or other notify platforms). You will use this service in your automations or scripts.
Sending Basic Notifications
You can test the integration by calling the notify.pushover
service. Go to Developer Tools -> Services.
- Service:
notify.pushover
- Service Data (YAML mode):
message: "Your basic notification message goes here."
Click "Call Service". You should receive a notification on your Pushover-enabled devices.
Advanced Notification Features
Pushover shines with its advanced options, all accessible via the notify.pushover
service data:
- Title: Override the default title for a specific notification.
- Target: Send the notification to specific users or groups within your configured keys (e.g.,
target: "user_key_abc"
). - Priority: Control how the notification is handled. Values include:
-2
: Lowest Priority (no sound, least disruptive)-1
: Low Priority (no sound)0
: Normal Priority (default sound)1
: High Priority (bypasses silent mode, specific sound)2
: Emergency Priority (bypasses silent mode, repeats until acknowledged on device, requiresretry
andexpire
parameters)- Sound: Specify a custom sound from the list available in Pushover (e.g.,
sound: "pushover"
,sound: "intermission"
). A full list is available in the Pushover API documentation. - URL and URL Title: Add a clickable link.
url: "https://your_ha_url.com/dashboard"
url_title: "View Dashboard"
- HTML: Enable HTML parsing in the message (
html: true
). Be cautious with HTML in notifications. - Attachment: Include an image file (requires sending file data via the service call, often easier via AppDaemon or Node-RED, but possible directly).
- Timestamp: Set a specific timestamp for the notification.
Example with multiple options:
service: notify.pushover
data:
message: "The garage door has been open for 15 minutes!"
title: "Garage Alert"
priority: 1
sound: "siren"
url: "https://your_ha_url.com/lovelace/garage-view"
url_title: "Check Camera"
target: "user_key_abc,group_key_xyz"
Example Emergency Notification:
service: notify.pushover
data:
message: "SMOKE DETECTOR TRIGGERED IN KITCHEN!"
title: "EMERGENCY ALERT"
priority: 2
sound: "cosmic"
retry: 60 # Retry every 60 seconds
expire: 3600 # Expire after 1 hour if not acknowledged
Best Practices for Managing Pushover Notifications
- Use Priority Levels Wisely: Reserve high and emergency priorities for truly critical events (security alerts, water leaks, smoke detection). Overusing them can lead to alert fatigue.
- Organize with Groups: If notifying multiple users, create a Pushover group and use the Group Key in Home Assistant. This is easier than listing individual user keys.
- Define Clear Titles and Messages: Make the purpose of the notification immediately obvious.
- Utilize URLs: If a notification requires action or context, include a direct link to the relevant Home Assistant view, camera feed, or external service.
- Template Dynamic Content: Use Jinja2 templates within your automation actions to include dynamic information like sensor values, entity names, or timestamps in your messages.
- Rate Limit Awareness: For typical home use, the 7500 message limit per month is ample. If you build very chatty automations, monitor your usage on the Pushover dashboard. You can register multiple applications in Pushover if needed, each with its own limit.
- Test Thoroughly: Before relying on a notification for a critical event, test it to ensure it arrives with the correct priority, sound, and content.
Integrating into Automations
Using Pushover in an automation is straightforward. In the automation action block, select the `Call service` action type and choose the `notify.pushover` service. Then, add your message and desired parameters under `Service data`.
Example Automation Trigger (Door Open):
automation:
- alias: Notify when front door opens
trigger:
platform: state
entity_id: binary_sensor.front_door
to: 'on'
action:
service: notify.pushover
data:
message: "The front door was opened."
title: "Security Alert"
priority: 1
sound: "alien"
Conclusion
Integrating Pushover with Home Assistant provides a robust and flexible notification system that goes beyond basic alerts. By leveraging its features like priority levels, custom sounds, and actionable URLs, you can ensure that important events in your smart home grab your attention, while less critical updates are handled appropriately. Investing a little time in setting up Pushover can significantly enhance the reliability and effectiveness of your Home Assistant automations.

NGC 224
Author bio: