# Pushover

> Send push notifications to your phone, tablet, or desktop with Pushover: choose a sound and priority, attach a link, raise an emergency alert that repeats until someone acknowledges it, and check your remaining monthly quota.

App · Notifications · 6 actions. Web page: https://docs.lodol.com/docs/integrations/pushover

## Actions

### Cancel Pushover retries

Stop an emergency-priority notification from being retried any further, without waiting for someone to acknowledge it. Use this when the condition that raised the alert has cleared on its own.

**Inputs**

- Receipt (`receipt`, text, required): The receipt returned by Send Pushover notification when it was sent at emergency priority.

**Outputs**: None.

**Example output**

```json
{}
```

### Check Pushover message quota

Check how many messages your Pushover application has left this month and when the counter resets. Useful as a guard before a workflow that sends in bulk.

**Inputs**: None.

**Outputs**

- `limit` (number): Messages the application may send per month.
- `remaining` (number): Messages left before the limit is reached.
- `reset_at` (number): When the counter resets, as a Unix timestamp.

**Example output**

```json
{
  "limit": 10000,
  "remaining": 9873,
  "reset_at": 1772323200
}
```

### Check Pushover receipt

Check whether an emergency-priority notification has been acknowledged yet, and by whom. Poll this to hold a workflow until someone confirms they have seen an alert.

**Inputs**

- Receipt (`receipt`, text, required): The receipt returned by Send Pushover notification when it was sent at emergency priority.

**Outputs**

- `acknowledged` (true/false): True once someone has acknowledged the notification, which also stops the retries.
- `acknowledged_at` (number): When it was acknowledged, as a Unix timestamp. Null if it has not been.
- `acknowledged_by` (text): User key of whoever acknowledged it, which is how you tell who responded in a delivery group.
- `acknowledged_by_device` (text): Name of the device they acknowledged it on.
- `called_back` (true/false): True once Pushover has POSTed to the callback URL, if one was given.
- `called_back_at` (number): When the callback fired, as a Unix timestamp.
- `expired` (true/false): True once Pushover has stopped retrying because the expire window passed without an acknowledgement.
- `expires_at` (number): When retrying stops, as a Unix timestamp.
- `last_delivered_at` (number): When the most recent retry went out, as a Unix timestamp.

**Example output**

```json
{
  "acknowledged": true,
  "acknowledged_at": 1769610600,
  "acknowledged_by": "uQiRzpo4DXghDmr9QzzfQu27cmVRsG",
  "acknowledged_by_device": "iphone",
  "called_back": false,
  "called_back_at": null,
  "expired": false,
  "expires_at": 1769614140,
  "last_delivered_at": 1769610540
}
```

### List Pushover sounds

List the notification sounds your Pushover application can ask for, with the name to pass as the sound of a notification and the label the Pushover apps show for it.

**Inputs**: None.

**Outputs**

- `count` (number): Number of sounds returned.
- `sounds` (list): Available sounds, in alphabetical order.

**Example output**

```json
{
  "count": 3,
  "sounds": [
    {
      "label": "Magic",
      "name": "magic"
    },
    {
      "label": "Pushover (default)",
      "name": "pushover"
    },
    {
      "label": "Siren",
      "name": "siren"
    }
  ]
}
```

### Send Pushover notification

Send a push notification to your phone, tablet, or desktop. Set the priority to emergency to have Pushover keep retrying until someone acknowledges it, which returns a receipt you can poll.

**Inputs**

- Message (`message`, text, required): The notification body, up to 1024 characters. Supports basic HTML tags when html is turned on.
- Title (`title`, text): Heading shown above the message, up to 250 characters. Defaults to your application's name.
- User key (`user_key`, text): Who to notify, as a Pushover user key or delivery group key. Leave blank to use the key saved with the connection.
- Priority (`priority`, number): How intrusive the notification is. Emergency repeats until acknowledged; high bypasses the user's quiet hours; lowest delivers with no alert at all. One of: `-2` (Lowest (no notification)), `-1` (Low (no sound or vibration)), `0` (Normal), `1` (High (bypasses quiet hours)), `2` (Emergency (repeats until acknowledged)).
- Sound (`sound`, text): Which sound to play, e.g. pushover, siren, magic, or none for silence. Use List Pushover sounds to see them all. Defaults to the user's own setting.
- URL (`url`, text): A link to show under the message, up to 512 characters.
- URL title (`url_title`, text): Text to show for the link instead of the raw URL, up to 100 characters.
- Device (`device`, text): Send only to one of the user's devices, by its Pushover device name. Leave blank to reach all of them.
- HTML (`html`, true/false): Render basic HTML in the message, such as <b> and <a>. Cannot be combined with monospace.
- Monospace (`monospace`, true/false): Render the message in a fixed-width font, useful for logs or tables. Cannot be combined with html.
- Ttl (`ttl`, number): Seconds after which the notification is removed from the user's devices automatically.
- Retry (`retry`, number): Emergency priority only: how many seconds between retries, at least 30. Defaults to 60.
- Expire (`expire`, number): Emergency priority only: how many seconds to keep retrying before giving up, up to 10800 (3 hours). Defaults to 3600.
- Callback (`callback`, text): Emergency priority only: a URL Pushover will POST to once someone acknowledges the notification.
- Tags (`tags`, text): Emergency priority only: comma-separated labels you can later use to cancel a batch of notifications at once.

**Outputs**

- `receipt` (text): Tracking id for an emergency-priority notification, used by Check Pushover receipt and Cancel Pushover retries. Null at every other priority.
- `request_id` (text): Pushover's id for this request, which their support asks for when tracing a delivery.

**Example output**

```json
{
  "receipt": "rIcHaRdS0nR3c31pT0000000000000",
  "request_id": "e460545e-3f4a-4b8f-9c0d-5f8e2b1a7c33"
}
```

### Validate Pushover user

Check that a Pushover user or group key is valid and has at least one active device. Use this before sending to a key that came from somewhere else in the workflow, so a bad key fails visibly rather than silently going nowhere.

**Inputs**

- User key (`user_key`, text): Who to notify, as a Pushover user key or delivery group key. Leave blank to use the key saved with the connection.
- Device (`device`, text): Also check that this specific device name exists on the account.

**Outputs**

- `devices` (list): Names of the devices registered to the key, which can be passed as the device of a notification.
- `is_group` (true/false): True when the key names a delivery group rather than a single user.
- `licenses` (list): Platforms the user is licensed for, e.g. Android, iOS, Desktop.

**Example output**

```json
{
  "devices": [
    "iphone",
    "desktop"
  ],
  "is_group": false,
  "licenses": [
    "iOS",
    "Desktop"
  ]
}
```
