Step-by-step guide for creating a iOS / macOS .p8 Authentication Key
To send push notifications to iOS apps, an authenticated connection to Apple Push Notification Services (APNs) is required. You can authenticate using a token-based (.p8 key) or a certificate-based (.p12 file) method — but only one is necessary.
This guide will walk you through setting up a token-based .p8 key, the recommended approach.
Make sure you have the following before starting:
If you need to create a new .p8 and already have two, you must first revoke one of the existing keys — and it will no longer be usable.
OneSignal dashboard push configuration page.
If updating from a p12 or another p8, you'll have the option to 'update authentication'
Provide the following:
.p8 File
– The private key file you downloaded from your Apple Developer account.Key ID
– Located in the Keys section of your Apple Developer account. Make sure it matches the downloaded .p8 file.Team ID
– Found in the top-right corner of your Apple Developer account.App Bundle ID
– You can find this:
Finding your .p8 key details
Finding your Bundle ID on Xcode
Click Save & Continue when done.
You’ve successfully set up APNs authentication using a .p8 key in OneSignal.
Your iOS app is now ready to send and receive push notifications! 🎉
Step-by-step checklist:
Check .p8 file format
Open the .p8
file in a text editor.
It should look like this:
Ensure you didn’t upload a .p12 by mistake
.p8
keys come from the Keys section of your Apple Developer account..p12
certificates are from the Certificates section. These are not compatible with .p8 authentication.Confirm you have the correct key id
.p8
key.Verify the team id
Ensure the key has apns capability
Wait a few minutes
.p8
key and create a new one from scratch.support@onesignal.com
with the Key ID, Team ID, Bundle ID, and a redacted screenshot of your Apple Developer Key configuration.Yes, Apple requires different types of profiles for development, testing (Ad Hoc), and distribution to the App Store.
In Xcode, you should be able to select Automatically manage signing to create one automatically.
Otherwise, see Apple’s docs on provisioning profiles for details.
Step-by-step guide for creating a iOS / macOS .p8 Authentication Key
To send push notifications to iOS apps, an authenticated connection to Apple Push Notification Services (APNs) is required. You can authenticate using a token-based (.p8 key) or a certificate-based (.p12 file) method — but only one is necessary.
This guide will walk you through setting up a token-based .p8 key, the recommended approach.
Make sure you have the following before starting:
If you need to create a new .p8 and already have two, you must first revoke one of the existing keys — and it will no longer be usable.
OneSignal dashboard push configuration page.
If updating from a p12 or another p8, you'll have the option to 'update authentication'
Provide the following:
.p8 File
– The private key file you downloaded from your Apple Developer account.Key ID
– Located in the Keys section of your Apple Developer account. Make sure it matches the downloaded .p8 file.Team ID
– Found in the top-right corner of your Apple Developer account.App Bundle ID
– You can find this:
Finding your .p8 key details
Finding your Bundle ID on Xcode
Click Save & Continue when done.
You’ve successfully set up APNs authentication using a .p8 key in OneSignal.
Your iOS app is now ready to send and receive push notifications! 🎉
Step-by-step checklist:
Check .p8 file format
Open the .p8
file in a text editor.
It should look like this:
Ensure you didn’t upload a .p12 by mistake
.p8
keys come from the Keys section of your Apple Developer account..p12
certificates are from the Certificates section. These are not compatible with .p8 authentication.Confirm you have the correct key id
.p8
key.Verify the team id
Ensure the key has apns capability
Wait a few minutes
.p8
key and create a new one from scratch.support@onesignal.com
with the Key ID, Team ID, Bundle ID, and a redacted screenshot of your Apple Developer Key configuration.Yes, Apple requires different types of profiles for development, testing (Ad Hoc), and distribution to the App Store.
In Xcode, you should be able to select Automatically manage signing to create one automatically.
Otherwise, see Apple’s docs on provisioning profiles for details.