Send phone notifications from your code via DevNotify
Project description
DevNotify (Python SDK)
Send push notifications from your code via DevNotify.
What is DevNotify?
When you’re building SaaS apps or backend services, important events happen all the time — a new user signs up, a payment fails, an error pops up. But most teams either miss them or rely on clunky email alerts or overkill monitoring setups.
DevNotify gives you a lightweight way to get real-time notifications straight to your phone, with almost no setup. It’s made for developers who want fast feedback without wiring up a full alerting system.
Installation
pip install devnotify
Quickstart
import devnotify
devnotify.api_key = "your_api_key_here"
from devnotify import DevNotify
client = DevNotify()
client.send("New user signed up!", title="Signup", tags=["users"])
Why DevNotify?
- Instant alerts: Get notified on your phone as soon as something important happens.
- Easy integration: Add a few lines of simple code and get started quickly.
- Flexible: Send notifications from any Python script, backend, or automation.
- Organized: Use tags and titles to group and filter your notifications.
- Free tier: Start for free with a generous usage limit which should be enough for most small projects.
Links
Configuration
To configure DevNotify, simply set your API key. You get the API key on the web dashboard here
import devnotify
devnotify.api_key = "your_api_key_here"
Or set the DEVNOTIFY_API_KEY environment variable in your system.
export DEVNOTIFY_API_KEY="your_api_key_here"
on Linux or macOS, or set it in your system environment variables on Windows.
Advanced usage
Custom retries
You can customize the retry behavior of the DevNotify client by specifying the retries and backoff parameters.
The backoff parameter controls the delay between retries.
client = DevNotify(retries=5, backoff=1.0)
Silent notifications
You can send notifications without getting a push notification on your phone by setting silent=True.
The notifications will still be logged and visible in the DevNotify app.
client = DevNotify(silent=True)
Examples
Basic notification sending
import devnotify
from devnotify import DevNotify
# Quickstart: set your API key
devnotify.api_key = "your_api_key_here"
client = DevNotify()
client.send("Hello from DevNotify!", title="Quickstart")
With Tags
import devnotify
from devnotify import DevNotify
devnotify.api_key = "your_api_key_here"
client = DevNotify()
client.send(
"New user signed up",
title="Signup Event",
tags=["users", "signup"]
)
Error Handling
import devnotify
from devnotify import DevNotify
from devnotify.exceptions import AuthError, RateLimitError, DevNotifyError
devnotify.api_key = "your_api_key_here"
client = DevNotify()
try:
client.send("Build failed", title="CI/CD")
except AuthError:
print("Invalid API key — check your dashboard.")
except RateLimitError:
print("Daily notification limit exceeded.")
except DevNotifyError as e:
print(f"Unexpected DevNotify error: {e}")
Retry Configuration
import devnotify
from devnotify import DevNotify
devnotify.api_key = "your_api_key_here"
# Customize retries and backoff (default: retries=3, backoff=0.5s)
client = DevNotify(retries=5, backoff=1.0)
client.send("Background sync complete", silent=True)
Error Handling
import devnotify
from devnotify import DevNotify
from devnotify.exceptions import AuthError, RateLimitError, DevNotifyError
devnotify.api_key = "your_api_key_here"
client = DevNotify()
try:
client.send("Build failed", title="CI/CD")
except AuthError:
print("Invalid API key — check your dashboard.")
except RateLimitError:
print("Daily notification limit exceeded.")
except DevNotifyError as e:
print(f"Unexpected DevNotify error: {e}")
except ServerError as e:
print(f"Server error occurred: {e}")
except NetworkError as e:
print(f"Network error occurred: {e}")
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file devnotify-0.1.0.tar.gz.
File metadata
- Download URL: devnotify-0.1.0.tar.gz
- Upload date:
- Size: 8.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9f3b28cb49d16b8314f38f8b2a78bf6eab9d8b87a5064b240fbba9bee7d979b9
|
|
| MD5 |
179975d099af74ff6394b2792cff6e1b
|
|
| BLAKE2b-256 |
80492ac58ed9472aeb2f407697391bbc5d7194e5e3b4e95bd383d3354d7f41f3
|
File details
Details for the file devnotify-0.1.0-py3-none-any.whl.
File metadata
- Download URL: devnotify-0.1.0-py3-none-any.whl
- Upload date:
- Size: 5.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
521dfae3993ba69aa1d1e9c42ee6655edc5480c353a7aed265560715b1a8a693
|
|
| MD5 |
104cb25db0a8f2c4161e2822ef29e439
|
|
| BLAKE2b-256 |
6fa745c8ad45a05dc1f9abab1705a7c9c139490733919d4e1d4538e0f96904c2
|