Set up OneSignal
OneSignal is an analytics partner integrated with Adjust. Our integration lets OneSignal receive data measured in Adjust through automated callbacks. Use this data with the partners' tools for analytics and insights.
In this article, learn how to set up measurement with OneSignal for your app. This includes activating the integration and choosing what data Adjust can share with OneSignal.
Before you begin
Requirements
- Admin, Editor, or Custom Editor permissions in Adjust.
- Adjust SDK v4.0.0 and later to map SDK parameters to OneSignal parameters. Follow the guides linked below to use this feature.
iOS | Android | Windows | Unity | React Native | Flutter | Adobe Air | Cordova | Marmalade | Xamarin | Cocos2d-x | Titanium | Corona
Credentials
OneSignal App ID
- For help finding your credentials, contact your OneSignal representative.
Select OneSignal and your app in Campaign Lab
- Under Campaign Lab, select Partners.
- Select New partner > OneSignal. Select Next to move to the next screen.
- In the App selection screen, choose the app for which you want to create the link, and enable the integration to share data with OneSignal.
- Select Next.
Enable data sharing
Enable data sharing to activate the integration with OneSignal. To enable data sharing:
- Enter your OneSignal App ID.
Once you enable data sharing with OneSignal, Adjust automatically sends OneSignal the following data, by default:
- install
- session
Set your data sharing options
If you’re working with a multi-platform app with data sharing enabled for multiple platforms, you can:
- Separate data sharing options at the platform-level by selecting Use platform-specific settings.
- Set the same data sharing settings for multiple platforms by selecting Use global settings.
Now, under What will be shared by default?, review the activities that Adjust shares with OneSignal by default:
- install
- session
Send additional data
Choose the amount and type of data that you want to share with OneSignal through callbacks. OneSignal may use this information to optimize performance.
To send additional data, you can review and customize the following:
Sessions
Adjust does not automatically send session callbacks due to the high volume of sessions. Sharing sessions means OneSignal will receive your app’s session activity.
In-app revenue (from in-app purchases)
Sharing in-app revenue lets OneSignal receive revenue amounts along with your revenue event data. You need to map events that generate revenue to share this data.
Map events
Map events that you want to share to the values that OneSignal can receive. Data for unmapped events is not shared with OneSignal.
Map individual events
If you have a multi-platform app, you can choose to share different events per platform with OneSignal. This lets you:
- Set individual events to manage campaign strategies for each platform.
- Customize data sharing per platform.
Under Map events, follow these steps to choose the in-app events you want to directly send to OneSignal.
- Select Map event.
- In the Adjust event list, choose the Adjust event that you want to share with OneSignal.
- Under Partner event, you need to select the OneSignal event that corresponds to the Adjust event.
- For single platform apps and multi-platform apps with data sharing enabled for a single platform only, you map events for that platform only. For multi-platform apps with data sharing enabled for multiple platforms, you can:
- Select Use platform-specific mapping to map separate events at the platform-level or to not map events for certain platforms.
- Select Use global mapping to map the same events for all platforms.
- In the Partner event list, choose or enter a custom event name, that you want to map the Adjust event to.
- For single platform apps and multi-platform apps with data sharing enabled for a single platform only, you map events for that platform only. For multi-platform apps with data sharing enabled for multiple platforms, you can:
- Select Apply.
Now OneSignal will receive in-app event data for each of your linked events.
Map all events
If OneSignal supports mapping all events automatically, under Map events, select Map all events. This saves time in mapping individual events.
Now OneSignal will receive in-app event data for all your linked events.
Enable OneSignal for your app
In the Setup review screen, you can review your choices. You can also go back and make changes to:
- Your selected app
- Data sharing options
Select Enable partner to enable OneSignal for your app. Analytics partners don't work with links for campaigns. Once enabled, our integration sends attribution and in-app event data via automated callbacks.
Partner specific setup instructions
You need to implement Push Tokens within your Adjust SDK so the requests are successfully tracked on the OneSignal dashboard.
For additional information, please check the Adjust SDK guides: Android, iOS
List of all parameters forwarded to OneSignal
OneSignal requires Adjust to send the following parameters (data points) with your callbacks:
Placeholder | Information |
{adid} | Adjust device ID (all platforms) |
{country} | Device two-character country code |
{currency} | Original ISO 4217 currency code sent from Adjust SDK |
{event_name} | Event name, as set in the Dashboard |
{idfa||gps_adid} | IDFA, or GPS ADID if IDFA is empty |
{ip_address} | Device IP address |
{language} | Device two-character language code |
{last_time_spent} | Length of user's last session, in seconds |
{os_version} | Operating system version number |
{push_token} | Push notification token, i.e., registration token (Android), device token (iOS) |
{revenue_float} | Revenue, as sent from Adjust SDK, in whole currency units |
{session_count} | Number of sessions recorded by current Adjust SDK |
{app_version} | App version number (Android), build-version-number for the bundle (iOS) |
{campaign_name} | Campaign name, as taken from the tracker |
{created_at} | Activity timestamp |
{installed_at} | Install (i.e., first app open) timestamp |
{last_session_time} | Last session timestamp |
{network_name} | Network name, as taken from the tracker |