iOS provisional push notifications

Provisional Notifications can be sent to users without needing to first request notification permissions.

iOS 12 introduced Provisional (Also known as Direct-To-History) push notification authorization. This means that instead of having to prompt the user for permission to send them push notifications, your app can request provisional authorization.

As these are provisional there is some reduced functionality including

  • No banner shown
  • No corresponding sound
  • No user alert
  • Sent directly to the Notification Center
2460

Images shows provisional notification prompting user to keep notifications available from provider

If the user selects Keep... in response, then they have the options:

  • Deliver Quietly: Subscribes the user to quiet push notifications. It keeps push notifications silent and only shows on Notification Center. Additionally, it removes the options to "Keep..." or "Turn off..."
  • Turn Off: Unsubscribes the user from notifications.
2460

Image showing user ability to deliver notifications quietly, turn them off or go to settings

You can still prompt the user to subscribe normally to push even with these turned on or turned off.

If you prompt for regular push notifications and the user denies it, they will not get any further push notifications.


How do I disable or enable provisional authorization?

To enable or disable provisional authorization for your app, go to your OneSignal dashboard Settings > Apple iOS > Advanced Configuration > Enable iOS 12 direct to history option for your app (which currently requires using the OneSignal SDK 2.9.0 or newer).

To disable uncheck the box (this is unchecked by default).


What is the difference between Provisional vs. Normal Authorization?

Once you enable provisional notifications for your app, iOS 12+ subscribers will automatically be allowed to receive push notifications the next time they launch the app.

Keep in mind, your application can still request push notification permissions, which will still cause the permission prompt to be shown to the user. If the user denies push through the regular push prompt, then these provisional notifications will also be turned off.

For details on setting up your permission prompting flow, see Prompt for Push Permissions.