If you want to synchronize the Accengage device database with your own system, we offer several interconnection possibilities to export our device information:
- Through an API integration using the List Devices Webservice and querying by lastOpen date (last device session date & time) on a regular basis. If you want to optimize the call or you don't need all the data tracked by Accengage, you can specify the fields you want in the response.
- Through a sFTP batch implementing our generic Device data export that will generate a daily file including all the database information of the devices who opened the app the day before.
DATABASE MANAGEMENT RULES IN ACCENGAGE
In Accengage, we use 2 unique data to merge existing device profiles, the deviceId and the token fields. Each of them is unique to a device for the same Accengage environment. If we track an existing deviceId and a new token, we will update the existing token (and all the new data updated) for the device profile.
We have a daily purge process to remove the device profiles from our database if their lastOpen date = 365 days and their bounce value > 2. Basically devices that uninstalled the app since 1 year.
If you want your own device base to reflect ours, please take this rule into consideration.
SYNC THE NEW BOUNCES IN YOUR SYSTEM
The bounce is an information returned by iOS if a push notification cannot be delivered to a device because the application is no longer installed on it. For Android and the web push notification, it means that the device is no longer optin to the push notifications.
The Accengage database field 'bounce' is a counter of the bounce received for a device profile. It gets incremented for each new bounce received. As the devices who receive bounces will not have new sessions unless they re-install the app, the incremented bounces will not be returned within the processes detailed above.
We provide the bounces received at a device and message level by 2 different methods:
- Through an API integration of the Target API. It can be requested at a message or a campaign level. Note that you can optimize the request by specifying the timeframe (start date & end date) you want to call instead of all the history of reactions.
- Through a sFTP batch implementing the Devices reactions export that will generate a daily file including all the devices targeted with a campaign (push, inapp, alert) the day before. For each device / message you will see the value '1' in the 'bounce' field if a bounce was received. Note that some script also return a bounce if the device was known as 'optout' during its last session.
Note that a device is considered as uninstall and is no longer targeted for the push messages if its bounce counter reaches 3.
DIFFERENCES BETWEEN THE DASHBOARD STATISTICS, THE SFTP EXPORTS AND THE API
If you export Accengage data for BI purposes, you may see a delta between the data received through sFTP or API and the message statistics you see on our dashboard.
Here are possible explanations:
- Delta in the Targets: When a push notification is sent, all the device having a valid token (not empty or '-') and a 'bounce' lower than 3 are targetedno matter their known optin status ('system_optin_notifs' field). This way, even a user turned back on the push notification without opening the app again, will receive the notification. Here are the difference in terms of data returned:
- Through the Target API or in the Device reactions export, all the targeted device will be returned.
- In the dashboard statistics, in order to have more relevant data and reaction rates, we deduce the devices known as optout from the Target KPI.
- Delta in the reactions: On the dashboard, we track in near real time all the new reactions detected on a message that has been sent.
- The reactions time and date are stored in GMT time in our back end, this will be the date & time returned through the sFTP exports or the API calls, but on the dashboard the daily statistics are displayed in CET time.
- It may be that a message will have new reactions even days after it's been sent. All these reactions will appear on the dashboard while you will only get the reactions for a specific period in your API call or your Device reaction export file.
- Delta in the bounces: Some sFTP export reaction scripts return a bounce value equal to 1 if the targeted device is flagged as system optout ('system_optin_notifs') in our database additionally to the bounces received. If you notice this behavior in your script, you can ask to your Project manager to make an evolution.
API TRIGGERED MESSAGES
If you send push notifications via the Send Instant Message API and the same device can possibly be targeted on the same message several times within the day here are the rules occurring that might impact your statistics:
- On the Dashboard, the clicks are unique daily clics for a message. If a device receives the same message Id twice in a day and clicks on both notifications, only 1 click will show up in the statistics.
- On the sFTP reactions file, the targets are deduplicated. It means that if a a device received the same message Id twice in a day, it will only appear once for this message in the reactions file. Note that the bounces and the reactions due to the different delivery for that day will be aggregated on this line. Ie: The device receives the message 2 times within a day, the first message get clicked but the second notification receives a bounce, the line (for the device and the message) will have a bounce = 1 and a reaction =1.
- If you treat the statistics of these messages using the Targets & Clicks APIs, you will get every sending even if the messages got sent multiple times within a day. But with the Clicks API you will not be able to link the reaction to a specific sending.
=> How to get proper sFTP exports and API reports: We have a specific version of the Send Instant Messages that allows you to pass a Sending Instance (CustomId) every time you send a push notification. This will allow us to rely the bounces and the reactions to this specific sending.
- If you have a sFTP reaction export script, we can then update the script to add this CustomId in the export and you will then have all the sending in the file.
- If you use the API to get the statistics, we have versions of the Target API and the Click API that will return the CustomId so you can directly link a click to a specific sending.