Urgency
Waking a sleeping phone radio costs battery, and not every notification is worth the wake-up. The Urgency request header labels a Web Push message with a delivery priority, letting the push service and the device defer background traffic while pushing time-critical messages through immediately.
Usage
An application server sets Urgency on the
POST submitting a message. Devices in
power-saving states apply the label by fetching
high-urgency messages at once and batching lower
levels until the radio wakes for other reasons. A
subscriber also states a floor: a device asking for
normal and above lets the push service hold
low and very-low traffic entirely until the
device raises the floor again.
Submissions without the header default to normal.
Values
very-low
Deferred freely, fitting advertisements and non-essential updates. The level a device drops first.
low
Background information worth delivering on the next convenient wake-up, such as topic updates.
normal
The default for ordinary notifications: chat messages, calendar reminders, and similar user-visible events.
high
Time-critical signals worth waking the device for,
such as incoming calls or presence alarms. Pairs
naturally with TTL: 0 submissions where a
late delivery is worthless.
Example
An incoming-call signal pushed at the highest urgency with no retention, so the message either rings the device now or evaporates.
POST /push/JzLQ3raZJfFBR0aqvOMsLrt54w4rJUsV HTTP/1.1
Host: push.example.re
TTL: 0
Urgency: high
Content-Length: 96