Acknowledgements

Acknowledgements ensure critical notifications aren’t missed. Users must confirm receipt, and Pushover can retry delivery until they do. Optional callbacks let you track responses. 🚨

Sometimes, a simple notification isn’t enough—you need proof that someone saw it. With acknowledgements, messages stay active until the user confirms receipt.

  • Requires Acknowledgement: Forces the user to confirm before the message clears.

  • Retries: If unanswered, JustPush.io will keep trying at set intervals.

  • Max Retries: Limits the number of attempts (up to 255).

  • Interval: Sets how often retries happen (10–65,535 seconds).

  • Callbacks: Send a request to a URL when acknowledged, with optional JSON parameters.

Use Case

Some notifications must be seen. Acknowledgements make sure important alerts aren’t ignored by requiring users to confirm receipt. Here’s when they come in handy:

Good Use Cases

Incident Alerts: Ensure IT staff sees a server outage alert. ✅ Security Warnings: Require confirmation before marking a door alarm as read. ✅ Time-Sensitive Tasks: Keep reminders active until action is taken. ✅ Emergency Contacts: Notify multiple people until one acknowledges.

Bad Use Cases

Using retries for non-urgent messages. (Annoying!) ❌ Setting intervals too short. (Users don’t like spam.) ❌ Forgetting to handle callback responses. (If you’re tracking acknowledgements, do it right.)

Requirements

Attribute
Data Type
Validation Criteria

requires_acknowledgement

boolean

activates the acknowledgement

acknowledgement.requires_retry

boolean

defines if it requires a retry

acknowledgement.max_retries

integer

max 255 retries

acknowledgement.interval

integer

min 10 and max 65535

acknowledgement.callback_required

boolean

activates the callback

acknowledgement.callbacl.url

url

a valid url

acknowledgement.callback.params

json

a set of parameters you want us to post

Callback

A callback should be a valid URL that accepts a POST. With a timeout of 5 seconds we wait for an HTTP status code of 20X. (So, in example, 200 and 201).

Default params:

By default we send the following params:

Param
Description

device.uuid

The UUID of device thatacknowledged.

device.name

The name of the device that acknowledged.

acknowledged_at

The UTCtimestamp the message got acknowledged

Want to add more parameters. Check the acknowledgement.callback.params in the request.

Example Request

curl -X "POST" "https://api.justpush.io/messages" \
     -H 'Content-Type: application/json' \
     -d $'{
       "user": "<< USER KEY >>",
       "title": "A simple title",
       "message": "A simple test message",       
       "requires_acknowledgement": true,
       "acknowledgement": {
        "requires_retry": true,
        "max_retries": "10",
        "interval": "60"
      },
}'

Mobile App

Below you see an example of how this displayed as a push message and within the app.

Push Message

Push Message with Title and Message

JustPush.io App

Message with pending acknowledgement

Frequently Asked Questions

What if no one acknowledges the message?

It keeps retrying until the max retries are reached. You better acknowledge them 🤣

Can I set different retry intervals?

No, the same interval applies to all retries. Different messages can have different intervals.

What happens when someone acknowledges?

The message clears, and any retries stop immediately. In the app we will show at what time the message got acknowledged.

Can I acknowledge from multiple devices?

Yes, but only the first response stops retries.

Last updated