Bug 247128 - Web push notifications sent to web.push.apple.com return 400 BadUrgency
Summary: Web push notifications sent to web.push.apple.com return 400 BadUrgency
Status: RESOLVED INVALID
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: Safari 16
Hardware: Unspecified macOS 13
: P2 Critical
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-10-27 08:11 PDT by collimarco91
Modified: 2022-10-28 02:11 PDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description collimarco91 2022-10-27 08:11:46 PDT
Safari 16 on MacOS Ventura added support for the Push API.

However the Apple push service has a serious bug that prevents all the push messages from being delivered.

We get this error:

400 Bad Request 
{"reason":"BadUrgency"}

This is clearly a bug in the Apple push service since we use the exact same code (https://github.com/zaru/webpush) to deliver billions of notifications to all the other browsers (Google FCM, Mozilla Autopush, etc.).

The only values that we use for the Urgency header are 'high' or 'normal' and they are both allowed by the standard.

If you need more detailed information we can provide that here or through email (support@pushpad.xyz) if it's more sensitive.

Please investigate this issue or forward this to the right team that manages the Apple push service (web.push.apple.com).
Comment 1 Alexey Proskuryakov 2022-10-27 09:00:53 PDT
Apple Push Service is not part of WebKit. Please file a report via https://feedbackassistant.apple.com.

It is much better if you file it than if I do it for you, because this way, there will be a communication channel between Apple and you.
Comment 2 collimarco91 2022-10-27 14:03:31 PDT
(In reply to Alexey Proskuryakov from comment #1)
> Apple Push Service is not part of WebKit. Please file a report via
> https://feedbackassistant.apple.com.

Is there any way to contact the dev team responsible for the Apple push service (web.push.apple.com)? The issues for the Push API were open in this bug tracker.

The assistant seems focused on software running on the Mac and not for reporting issue related to a specific web service. Also if they look at reports in aggregated form, this issue will never be seen, since it's not something reported by end-users...

Is there anything more specific to contact the developers behind web.push.apple.com?

Can you tag them here? It would greatly help.

Thanks
Comment 3 Alexey Proskuryakov 2022-10-27 15:25:02 PDT
Filing a feedback assistant report is the way. If you post its number here, I'll watch it and help direct it to the right people.
Comment 4 collimarco91 2022-10-27 16:17:57 PDT
(In reply to Alexey Proskuryakov from comment #3)
> Filing a feedback assistant report is the way. If you post its number here,
> I'll watch it and help direct it to the right people.

Thank you, that would be greatly appreciated. 

This is the feedback assistant report:

FB11723995 (Web push notifications sent to web.push.apple.com return 400 BadUrgency)
Comment 5 collimarco91 2022-10-28 02:11:22 PDT
After further investigation, the bug in your push service is related to the header "Urgency: normal". If you set the header to other values, like "Urgency: high", the notifications work properly. For now, as a workaround, we send the notifications with high priority, but you must definitely fix this bug... Please let us know when this is fixed.