About ntfy

Version Downloads Docs Build Coverage

ntfy is a command line utility (and to a degree, python library) for sending push notifications. It also can send a notification when a program finishes.

Unlike many existing utilities for Pushover or Pushbullet, it supports multiple backends.




sudo pip install ntfy

Note: It is suggested to globally (as indicated above, without a virtualenv) install ntfy. It can be installed in a virtualenv, with caveats. Linux notifications requires --system-site-packages to be used and OS X notifications don’t work at all.

Emoji Support :tada:

ntfy features emoji support, it is installable as an extra, just install like this:

sudo pip install ntfy[emoji]

XMPP Support

The xmpp module requires sleekxmpp. To install this extra install ntfy like this:

sudo pip install ntfy[xmpp]


# send a notification
ntfy send "Here's a notification!"

# send a notification with custom title (default is $USER@$HOST:$PWD)
ntfy -t 'ntfy' send "Here's a notification with a custom title!"

# send a notification when the command `sleep 10` finishes
# this send the message '"sleep 10" succeeded in 0:10 minutes'
ntfy done sleep 10



  • Pushover
  • Pushbullet
  • XMPP
  • Linux Desktop Notifications
  • Windows Desktop Notifications
  • Mac OS X Notification Center

Configuring ntfy

ntfy is configured with a YAML file stored at ~/.ntfy.yml


The backends key specifies what backends to use by default. Each backend has it’s own configuration, stored in a key of it’s own name. For example:

    - pushover
    - linux
    user_key: hunter2
    access_token: hunter2

Note: versions prior to v1.0.0 used JSON instead of YAML.

The available backends are in ntfy.backends, include only the module name in your config (eg: pushbullet not ntfy.backends.pushbullet).


python setup.py test


  • dschep - Maintainer & Lead Developer
  • danryder - XMPP Backend & emoji support

Indices and tables