Web Application Manifest
A web application manifest file is required to send iOS/iPadOS web push notifications.
Starting with iOS/iPadOS 16.4, Apple supports web push notifications. To enable this, your website must include a properly configured Web Application Manifest file.
This guide explains how to create and implement a compliant manifest.json
to support iOS/iPadOS web push functionality.
What is a Web Application Manifest?
A Web Application Manifest is a JSON file that defines how your web app appears and behaves when installed on a user's device. It includes metadata like:
- App name and short name
- Icons in multiple sizes
- Display mode (fullscreen, standalone, etc.)
- Start URL
- Optional ID to distinguish app instances
A valid manifest is required for web push on iOS/iPadOS.
Use tools to quickly generate the manifest.json
Quickly generate a manifest using tools like SimiCart Manifest Generator.
Required manifest fields for iOS web push
Your manifest.json
must include the following:
$schema
(required) - The JSON schema URL to validate structure.display
(required) - Must bestandalone
orfullscreen
.name
(required) - The full name of your app.icons
(required) - Multiple sizes are recommended. Includesrc
,sizes
, andtype
.start_url
(required) - The entry point of your app.id
(optional) - Assigns a unique identity to the app and allows your customers to install multiple instances of your web application with different preferences.
For a complete list of manifest keys, see MDN Web Docs.
Example manifest file
{
"$schema": "https://json.schemastore.org/web-manifest-combined.json",
"name": "OneSignal Manifest Example",
"short_name": "OS Manifest",
"display": "standalone",
"start_url": "/",
"icons": [
{ "src": "/icon-192x192.png", "sizes": "192x192", "type": "image/png" },
{ "src": "/icon-256x256.png", "sizes": "256x256", "type": "image/png" },
{ "src": "/icon-384x384.png", "sizes": "384x384", "type": "image/png" },
{ "src": "/icon-512x512.png", "sizes": "512x512", "type": "image/png" }
],
"id": "?homescreen=1"
}
How to add a manifest file to your website
It's highly likely you already have a manifest.json
file on your site. Make sure it includes the required fields listed above and is in the correct location.
- Place the
manifest.json
in the root directory of your website. - Add the following
<link>
tag to every HTML page:
<link rel="manifest" href="/manifest.json"/>
Using WordPress?
Try the Insert Headers and Footers by WPBeginner Plugin to inject the tag easily.
Test the manifest file
Open your browser to https://yoursite.com/manifest.json
but replace "yoursite.com
" with your actual website URL. You should see the manifest.json
file publicly accessible with the required fields.
Done! Your manifest.json file is set.
Next, review the Mobile Web Push for iOS/iPadOS docs and/or Getting Your Audience to "Add to Home Screen" to start collecting iOS web push Subscriptions.
Updated about 15 hours ago