Skip to main content

Send phone notifications from your code via DevNotify

Project description

DevNotify (Python SDK)

QA (CI)

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

devnotify-0.1.0.tar.gz (8.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

devnotify-0.1.0-py3-none-any.whl (5.6 kB view details)

Uploaded Python 3

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

Hashes for devnotify-0.1.0.tar.gz
Algorithm Hash digest
SHA256 9f3b28cb49d16b8314f38f8b2a78bf6eab9d8b87a5064b240fbba9bee7d979b9
MD5 179975d099af74ff6394b2792cff6e1b
BLAKE2b-256 80492ac58ed9472aeb2f407697391bbc5d7194e5e3b4e95bd383d3354d7f41f3

See more details on using hashes here.

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

Hashes for devnotify-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 521dfae3993ba69aa1d1e9c42ee6655edc5480c353a7aed265560715b1a8a693
MD5 104cb25db0a8f2c4161e2822ef29e439
BLAKE2b-256 6fa745c8ad45a05dc1f9abab1705a7c9c139490733919d4e1d4538e0f96904c2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page