# Set up Pushbullet alerts

Pushbullet delivers alerts as a push notification to every device linked to your Pushbullet account. Under the
hood a Pushbullet contact is an `http` contact with its `gateway` set to `Pushbullet` and its `address` holding
your access token (a token, not a URL).

## Settings reference

| Setting (UI label) | API field (v2) | Type / allowed values | Default | Plan limits | What it does for you |
|---|---|---|---|---|---|
| Contact Type | `type` | `"http"` | - | - | Pushbullet is stored as a plain `http` contact |
| Gateway | `gateway` | `"Pushbullet"` | - (must be set explicitly) | - | Routes through the Pushbullet push API |
| Access token | `address` | Your Pushbullet **access token** (not a URL) | - (required) | - | Identifies your Pushbullet account/device group |
| Group events | `groupedAlerts` | boolean | `false` | - | Combine simultaneous alerts into one notification - see [grouped alerts](/alerts/grouped-alerts/) |

## Set it up in the app

1. In your Pushbullet account settings, create (or copy) your **access token**.
2. In HostTracker, open **Contacts** and click **Add contact**.
3. Choose **Pushbullet**.
4. Paste the access token and give the contact a name.
5. Save.

## What the message looks like

A push notification with the monitor's name and what happened, delivered to every device linked to the token.

## Do it with the API or MCP

```
POST /contact
{ "type": "http", "gateway": "Pushbullet", "address": "<access token>", "name": "My Pushbullet" }
```

MCP: use `api_request` with the body above - `create_contact` doesn't cover `http`/gateway contacts.

## What happens next

An `http` contact is born confirmed - there's no code to verify. Because Pushbullet's address is a token
rather than a URL, [a test](/alerts/test-a-contact/) routes through the same push sender a real alert uses, not
the raw webhook diagnostic - this matters because the raw diagnostic fails outright on a non-URL address.

## Limits and gotchas

- The contact is addressed by your **access token** - keep it as private as a password, since anyone with it
  can push notifications to your devices.
- Unlike PagerDuty/Opsgenie, Pushbullet is an ordinary groupable channel - turn on **Group events** if you
  watch many monitors and want simultaneous alerts combined.
- [Test the contact](/alerts/test-a-contact/) to confirm it reaches your devices before relying on it.
- Being a **recognized gateway** also means Pushbullet can receive certificate-expiry, domain-expiry, DNSBL
  blacklist and Web Risk notices - a plain unrecognized webhook contact cannot (see
  [Webhook](/alerts/channels/webhook/#limits-and-gotchas)).

## Related

- [Pushover](/alerts/channels/pushover/)
- [All channels](/alerts/channels/)
