ntfy: Send Push Notifications to Your Phone with a Simple HTTP Request

By Prahlad Menon 2 min read

Ever needed to know when a long-running script finishes? Or when your AI agent completes a task? Or when a deployment succeeds (or fails)?

ntfy (pronounced “notify”) is a dead-simple solution: send push notifications to your phone or desktop using plain HTTP requests. No signup required, no API keys, completely free.

How Simple Is It?

This simple:

curl -d "Backup complete!" ntfy.sh/your-topic

That’s it. Your phone buzzes. Done.

You can also use POST with JSON for richer notifications:

curl -H "Title: Deployment Status" \
     -H "Priority: high" \
     -H "Tags: rocket,success" \
     -d "Production deploy completed successfully" \
     ntfy.sh/your-topic

Perfect For Automation

The beauty of ntfy is that it slots into any workflow:

Long-running scripts:

python train_model.py && curl -d "Training complete!" ntfy.sh/ml-jobs

AI agent completions:

# In your agent's completion handler
curl -d "Research task finished: $TASK_NAME" ntfy.sh/agent-alerts

CI/CD pipelines:

# GitHub Actions example
- run: curl -d "Build ${{ github.run_number }} passed" ntfy.sh/ci-builds

Cron jobs:

0 3 * * * /backup.sh && curl -d "Nightly backup done" ntfy.sh/backups

Server monitoring:

# Alert when disk is nearly full
df -h | grep -E '9[0-9]%' && curl -d "Disk space critical!" ntfy.sh/server-alerts

Key Features

  • No signup required — just pick a topic name and subscribe
  • Free hosted service at ntfy.sh, or self-host your own
  • Mobile apps for Android (also on F-Droid) and iOS
  • Rich notifications — titles, priorities, tags/emojis, action buttons, attachments
  • End-to-end encryption available for sensitive notifications
  • Rate limiting is generous (free tier handles most use cases)

Why Not Just Use Email?

Email works, but:

  • Delivery is slow and unreliable
  • Important alerts get lost in inbox noise
  • Push notifications demand immediate attention when needed

ntfy gives you the immediacy of push notifications with the simplicity of curl.

Self-Hosting

If you want full control or need to keep notifications internal:

# Docker
docker run -p 80:80 binwiederhier/ntfy serve

# Or install directly
curl -sSL https://archive.heckel.io/ntfy/ntfy_.deb > ntfy.deb && dpkg -i ntfy.deb
ntfy serve

Then point your notifications at ntfy.your-domain.com/topic.

My Use Cases

I use ntfy for:

  • AI agent task completion — when Claude/GPT finishes a long research task
  • Deployment notifications — Railway/Cloudflare deployments
  • Backup confirmations — nightly backups to S3
  • Script completions — anything that takes more than a few minutes

The mental load reduction is real. Fire off a script, context switch to something else, and trust that your phone will tell you when it’s done.

Getting Started

  1. Install the app on your phone (Android / iOS)
  2. Subscribe to a topic (pick something unique like yourname-alerts)
  3. Send a test: curl -d "Hello from ntfy!" ntfy.sh/yourname-alerts
  4. Your phone buzzes. You’re done.

The entire setup takes under 2 minutes.

GitHub: github.com/binwiederhier/ntfy
Docs: ntfy.sh/docs
Free hosted service: ntfy.sh


If you automate anything — scripts, agents, deployments, monitoring — ntfy is one of those tools that quietly makes everything better.