caption: Web App management settings
desc: |-
  This policy allows an admin to specify settings for installed web apps. This policy maps a Web App ID to its specific setting. A default configuration can be set using the special ID <ph name="DEFAULT_SCOPE">*</ph>, which applies to all web apps without a custom configuration in this policy.

  The <ph name="MANIFEST_ID_FIELD">manifest_id</ph> field is the Manifest ID for the Web App. See <ph name="WEB_APP_ID_REFERENCE_URL">https://developer.chrome.com/blog/pwa-manifest-id/<ex>https://developer.chrome.com/blog/pwa-manifest-id/</ex></ph> for instructions on how to determine the Manifest ID for an installed web app.
  The <ph name="RUN_ON_OS_LOGIN_FIELD">run_on_os_login</ph> field specifies if a web app can be run during OS login. If this field is set to <ph name="BLOCKED">blocked</ph>, the web app will not run during OS login and the user will not be able to enable this later. If this field is set to <ph name="RUN_WINDOWED">run_windowed</ph>, the web app will run during OS login and the user will not be able to disable this later. If this field is set to <ph name="ALLOWED">allowed</ph>, the user will be able to configure the web app to run at OS login. The default configuration only allows the <ph name="ALLOWED">allowed</ph> and <ph name="BLOCKED">blocked</ph> values.
  (Since version 117) The <ph name="PREVENT_CLOSE_FIELD">prevent_close_after_run_on_os_login</ph> field specifies if a web app shall be prevented from closing in any way (e.g. by the user, task manager, web APIs). This behavior can only be enabled if <ph name="RUN_ON_OS_LOGIN_FIELD">run_on_os_login</ph> is set to <ph name="RUN_WINDOWED">run_windowed</ph>. If the app were already running, this property will only come into effect after the app is restarted. If this field is not defined, apps will be closable by users.
  (Since version 118) The <ph name="FORCE_UNREGISTER_OS_INTEGRATION">force_unregister_os_integration</ph> field specifies if all OS integration for a web app, i.e. shortcuts, file handlers, protocol handlers etc will be removed or not. If an app is already running, this property will come into effect after the app has restarted. This should be used with caution, since this can override any OS integration that is set automatically during the startup of the web applications system. Currently only works on Windows, Mac and Linux platforms.
example_value:
- manifest_id: https://foo.example/index.html
  run_on_os_login: allowed
- manifest_id: https://bar.example/index.html
  run_on_os_login: allowed
- manifest_id: https://foobar.example/index.html
  run_on_os_login: run_windowed
  prevent_close_after_run_on_os_login: true
- manifest_id: '*'
  run_on_os_login: blocked
- manifest_id: https://foo.example/index.html
  force_unregister_os_integration: true
features:
  dynamic_refresh: true
  per_profile: true
owners:
- mjackson@microsoft.com
- cmp@chromium.org
- file://chrome/browser/web_applications/OWNERS
- dmurph@chromium.org
schema:
  items:
    properties:
      manifest_id:
        type: string
      run_on_os_login:
        enum:
        - allowed
        - blocked
        - run_windowed
        type: string
      prevent_close_after_run_on_os_login:
        type: boolean
      force_unregister_os_integration:
        type: boolean
    required:
    - manifest_id
    type: object
  type: array
supported_on:
- chrome.*:102-
future_on:
- fuchsia
- chrome_os
tags: []
type: dict
