Intent to Experiment: Progressive Web Apps as URL Handlers

Skip to first unread message

Mandy Chen (SHE/HER)

Jul 9, 2021, 7:31:38 PM7/9/21

Contact emails




API spec


Design docs


Enables web applications to register as https URL handlers using their web app manifest.

Blink component


TAG review

TAG review status



Interoperability and Compatibility

This feature is new to the web and web apps that do not opt in will not be affected because any additions to the web app manifest will be optional. Browser behavior will also not be affected if there are no installed apps that opt in. Browser that do not support this feature will not be adversely affected by new members in the web app manifest.

Gecko: No signal (

WebKit: No signal (

Web developers: Positive (


Goals for experimentation

Allow third party developers to use the API and provide feedback.

Reason this experiment is being extended

N/A, not extending.

Ongoing technical constraints



Debug functionality will be added to the the DevTools(F12) Application pane.

Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?


Supported in the browser on Windows, Mac, and Linux. Integration with OS features will vary.

Is this feature fully tested by web-platform-tests?


DevTrial instructions

Flag name


Tracking bug

Launch bug

Link to entry on the Chrome Platform Status

Links to previous Intent discussions

Intent to prototype:
Ready for Trial:

This intent message was generated by Chrome Platform Status.


Mike West

Jul 15, 2021, 4:17:02 AM7/15/21
to Mandy Chen (SHE/HER),
In Chrome's internal security review, folks had some questions about the revalidation schedule (which seems pretty critical). It's not clear to me from the docs linked here what that looks like in Chromium's implementation. Can you clarify the mechanism and the guarantees it provides?

I'd also note that I appreciate the work y'all have done with Chrome's permissions/UX folks to deal with concerns in I'll confirm with them that you're on the same page. :)


You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
To view this discussion on the web visit

Mandy Chen (SHE/HER)

Jul 15, 2021, 1:55:26 PM7/15/21

Web app origin association revalidation schedule is the same as that of manifest update. It’s triggered by app launch or app page load, and it’s throttled to once a day. When the browser restarts, we also clear any last updated timestamp information, so on the next app launch/page load, we also update the manifest and revalidate web app origin associations. See the “On Manifest Update” section of the Web App Origin Association design doc: Web App Origin Association Design - Google Docs.


Let me know if there’re more questions. Thank you!

Lu Huang

Jul 16, 2021, 1:38:55 PM7/16/21
to blink-dev, Mandy Chen (SHE/HER),,
Adding to Mandy's reply re. Chromium's implementation: 

- Web app manifest content does not have to change for WAOA file changes to get validated during the manifest update check.
- WAOA files needed by a particular web app can be revalidated at most once a day (because of the web app manifest update throttle period).
- There is no upper limit to the time before WAOA files are revalidated if the browser never navigates to the app's scope. 
    - It's possible for the user to always dismiss the app picker dialog when URL handling happens. The app never updates and WAOA files are never revalidated.

Broadly speaking, the guarantee we have in the Chromium implementation is that any app that is actively visited (*) by the user will have its required WAOA files revalidated. 

(*) There is an unlikely edge case: if an app is visited actively but never navigates any URL within its scope, manifest update and WAOA revalidation will not take place.

Mike West

Jul 22, 2021, 1:07:19 PM7/22/21
to Lu Huang, Mandy Chen (SHE/HER),
I've confirmed with folks internally that y'all are on the same page with regard to the UX, thanks!

I should have asked previously: in what timeframe do you plan to run the origin trial?


Lu Huang

Jul 22, 2021, 2:06:48 PM7/22/21
to, Mandy Chen (SHE/HER),

Thanks for confirming with others. We would like to get permission to start OT in Chromium M93, running through M95. Planning to add user preferences WebUI in M94.

Mike West

Jul 22, 2021, 3:21:43 PM7/22/21
to Lu Huang, Mandy Chen (SHE/HER),
LGTM, thank you.


Lu Huang

Aug 26, 2021, 7:00:40 PM8/26/21
to blink-dev,, Mandy Chen (SHE/HER),, Lu Huang
Update: there was an A11Y bug which blocked the start in M93. This bug has been fixed in M95 and we are working on merging it back to M94. We would now like to start OT in M94, to run through M97. 

Chris Harrelson

Aug 26, 2021, 7:01:08 PM8/26/21
to Lu Huang,, Mandy Chen (SHE/HER),, Lu Huang

Lu Huang

Sep 16, 2021, 6:03:54 PM9/16/21
to blink-dev, Chris Harrelson,, Mandy Chen (SHE/HER),, Lu Huang, Lu Huang

Thomas Steiner

Sep 17, 2021, 3:29:05 AM9/17/21
to Lu Huang, blink-dev, Chris Harrelson,, Mandy Chen (SHE/HER), Lu Huang

Thomas Steiner, PhD—Developer Advocate (,

Google Germany GmbH, ABC-Str. 19, 20354 Hamburg, Germany
Geschäftsführer: Paul Manicle, Halimah DeLaine Prado
Registergericht und -nummer: Hamburg, HRB 86891

Version: GnuPG v2.1.23 (GNU/Linux)

Reply all
Reply to author
0 new messages