Links

Silent push notifications

How to send a push from your app without notifying users

Overview

Sometimes you need to pass some data to the app, update the app in the background, or get new data from your server without having users informed. Here come Silent Push Notifications making it quite easy!
Silent Push Notifications are delivered to users' devices with no alert, sound, or icon badge. When a silent push arrives, the app is woken up in the background. Users don't recognize any alerts and don't see any push content.
By sending Silent Push Notifications, you can notify your app about new content available to download, perform some tasks in the background, get new data from your server, or pass custom data to the app. There are plenty of use cases, and the implementation is pretty simple: Silent Push Notifications are available out-of-the-box for all Pushwoosh users.
Silent Push Notifications come in handy when you need to clean up the user base: every time a push is sent, all invalid or non-existent push tokens are removed from our database. That's why Silent Push Notifications are used in Uninstalls Tracking, which keeps your user base valid and updated. To learn more about Uninstalls Tracking, please refer to the Knowledge Base article explaining the basics.

Implementation

Mobile Silent Pushes

Control Panel

To send a Silent Push Notification, go to Content > Presets and add a new preset.
Specify the platform—iOS or Android.
Add a title and subscription (your users won’t see it, so you can use any test copy). Then check the checkbox for Silent Push.
Scroll to the bottom of the page and save this preset.
Go to Campaigns > Journey, choose a journey you already have, or create a new one. Then, by clicking on the Push, choose the preset with a Silent Push.
Once your journey is all set, click to Launch the campaign on the right.

API

When creating a notification via /createMessage API request, set the "ios_silent" and "android_silent" parameter to 1.
POST https://cp.pushwoosh.com/json/1.3 /createMessage
{
"request": {
"application": "XXXXX-XXXXX",
"auth": ACCESS_TOKEN,
"notifications": [{
"send_date": "now",
"ignore_user_timezone": true,
"content": "test",
"platforms": [1, 3],
"ios_silent": 1,
"android_silent": 1
}]
}
}