One-time push

First of all, log into your Pushwoosh Control Panel and choose a project you would like to send a push to. Go Push notifications -> One-time push.

We've split all features into two sets of tabs – the first set applies to all platforms: these are Message, Scheduling, Action, and Segmentation tabs.

Tabs in the second set are platform-specific and let you customize notifications for each platform.

Message

In the Message tab, you have to specify the push notification's content: push title and body.

Push message

Enter the text into the Push message field. If your subscribers speak different languages, the languages are displayed under the Push message field. To send a multi-language push, switch between languages and fill into the fields for each of them. The push will be delivered to your subscribers according to their device locale (the value of the Language default tag).

The subscribers who speak a language not covered by your multi-language message will receive the English version of your push (the one entered in the English tab).

For example, if you input a message only for English (“en” tab), all other language subscribers will receive the content in English, as it is the default language. If you input the message only for “nl” and “fr”, the message will be sent to all devices, but English and Turkish subscribers will receive a randomly chosen message – intended for either Dutch (“nl”) or French (“fr”) subscribers, since “en”-message is empty.

Push title

If you'd like to set a title for all platforms at once, toggle the Multi-language push title ON. The title will be the same for every platform you send the message to. You can set titles for all languages so that the subscribers will receive the push with the title corresponding to their device's locale.

The flow is the same as for the message body: choose a language, then enter the title text translated to that language. If you need different titles for different platforms, toggle OFF and set titles in the Platform Settings.

The same is applicable for push subtitles. However, subtitles are displayed on iOS and macOS devices only.

Personalization

To give your push notifications a personal touch, use the subscriber's data in the push title or message. Press the Personalization button in the right top of the field, select the Tag which value should be used in a message text. Modifier specifies the formatting – you can capitalize the first symbol of the Tag value, for example, or use uppercase to catch user's attention. Learn more about personalization from the Dynamic Content guide.

Scheduling

Time to send

By default, push notification will be sent once you press Woosh! at the bottom of the page. Here, you can schedule a message to be sent later, at a particular date and time. To schedule push delivery, choose the Send later option, set the date to send (using the calendar) and time (using the Time controls).

Timezone settings let you define at what timezone the message will be sent. By default, your local timezone is selected – the one set on your device. If you switch to the subscriber's device timezone, users will receive the push notification once the specified time passes in timezones specified on their device. Custom timezone lets you select any timezone you'd like to schedule the message in.

If you send the push according to user's timezone, and the date & time you specified has already passed in some timezones, the push will be sent to these timezones immediately. All other timezones will receive the push according to their local time.

Please note that for timezone-sensitive pushes the push status will be changing from Pending to Processing back and forth for 24 hours, until all timezones are covered.

Both scheduled and non-scheduled pushes might be cancelled in the Message History section. This is possible only when the status of a push message is Pending, Waiting, or Processing. The status Done indicates that we've already sent the notification, in which case it's not possible to cancel it.

Optimal time to send the message

Custom Plan Feature

'Optimal time to send' is available only for the Custom Plan subscription. For more details, please contact our Sales team.

When the Optimal time option is enabled, users will receive your message when they are most likely to interact with pushes. This optimal time is calculated automatically based on user behavior, i.e., the time they open the app most often and tend to open pushes you send.

To calculate the optimal push delivery time, Pushwoosh needs user data to be collected, so you need to:

  • Enable the PW_ApplicationOpen and PW_NotificationOpen default Events for your apps (we recommend doing this a few days before sending the push to collect enough data);

  • Send a few messages to let the algorithm make its calculations.

If there is a lack of data for a user, they will receive a message exactly at the Default time you specify according to their timezone.

The more data we have, the more accurate the Optimal time will be for each user, so the accuracy improves as you send more messages.

Frequency capping

Frequency capping being enabled limits the number of push notifications sent to a particular user within a specified period. If capping is set, Pushwoosh, while sending the message, checks how many push notifications have been sent to a device within a period you specified. If this number is equal to or exceeds the number of messages you set for capping, the message won't be sent to that device.

Specify the max number of pushes that can be sent to the user and the period to be applied. The example given above means that in case a user has received 10 push messages from that app within the last 5 days, the current message won't be sent to that user.

Please note that frequency capping takes into account push notifications of all sources, including Triggered Messages, Autopushes, Geozone pushes, etc.

Send rate limit

By enabling the send rate limit, you restrain the push sending speed. That means Pushwoosh will send no more than the specified number of messages in a second. Please note the available values are from 100 to 1000 pushes per second. Use throttling carefully, as it might take an extremely long time to send all pushes if you set a too low value.

Action

By default, tap on a push message opens the app. But there are several options to customize actions performed after a user taps a push:

  • open a URL in the user's browser,

  • take users directly to specific in-app pages,

  • or catch their attention with rich content.

URL

Here, you can add a link to be opened in a browser after a user taps a push notification. Choose the URL option and insert the URL in the corresponding field. Please note that push notification payload size is limited, so consider using the URL Shortener not to exceed the limit.

For URL, dynamic linking is available. You can add the Dynamic Content to the web address you specify in the URL field so that the web page opened when a user taps on a push depends on the user’s tag values. For example, you can show a user some special offering based on what product they’ve bought last or take them to a feed of news similar to what they’ve read recently.

To add the dynamic URL to your push message, place the Dynamic Content at the end of the URL (the part after the / sign):

https://example.com/{TagName|lowercase|default}

Make sure to use the same syntax as for Dynamic Content in push text, title, etc.: {Tag|format_modifier|default_value}.

Refer to the Dynamic Content guide for details.

Rich Media

Rich Media is a rich content page that's opened in a web view of the app after a user taps a push. You can attach images, videos, CTAs, or other media content to your push message, making it more eye-catching and interactive. To learn more about creating and editing Rich Media, please refer to this guide.

To open one of the Rich Media pages created in your account, select the Show Rich Media option and choose a Rich Media to be shown. To open the remote rich content page, select the Remote Page source and insert the rich page URL.

For Android devices, you can toggle the Show on lockscreen option to display Rich Media right on the lock screen of the user's device.

Deep Link opens a specific section of the app when the push is tapped. With Deep Links, you can take users directly to new in-app content, promo pages, special offers, etc. To add a Deep Link, go Settings->Deep Links. Once you have a Deep Link created, you can select it from the drop-down on the Action tab.

Custom Data

To specify additional push parameters, add Custom Data to your push message.

Toggle Send custom Data on. Insert the JSON into the JSON Code field or switch to the Simple mode and fill in the fields with keys and values you're going to pass in the push payload.

Custom Data is a JSON {"key":" value"} object describing actions to be performed. To learn more about Custom Data, please refer to our guide.

Save to inbox

To keep the message in users' inbox, check the checkbox and set the date to remove the push. By default, messages are removed from inbox on the next day after they are sent. To set an icon to be shown next to the message in the inbox, specify the image URL in the corresponding field.

Message will be removed from Inbox at 00:00:01 UTC of the date specified, so the previous date is the last day a user can see the message in their Inbox.

Segmentation

Segmentation lets you target messages to specific segments of your audience based on users' behaviors and preferences.

By default, the message is sent to all subscribers of the project. To target a pre-built segment based on users' Tags, choose a Segment. To learn more about Tags and Segments, see the guide.

Platform Settings

iOS

Title. Specify the custom title of a push notification different from the app name. To boost open rates, personalize the message's title by using the Dynamic Content. Please note the title is the same for all languages your push is translated to. If you need a multi-language title, enable it in the Message section; the multi-language title is the same for all platforms.

Subtitle. Specify the subtitle for the iOS push notification. It'll be displayed between the title and the text of push message. Subtitles can be personalized with the Dynamic Content placeholders.

Badges. Set the iOS badge number to be sent with your push. Use +n / -n to increment / decrement the current badge value. Sending 0 clears badge from your app’s icon.

Sound. Specify the custom sound from the main bundle of your application. Make sure to locate the audio file to the root of your iOS project.

Audio file for custom iOS sound has to be in one of the following formats: .aif, .caf, .wav. Make sure to specify the format in the file's name; otherwise, it will be ignored by Pushwoosh iOS SDK.

Consider App Store limitations on bundle size when adding the sound file to your bundle.

iOS8 Category. Select a Category with the set of buttons for iOS8.

iOS Thread ID. Identifier to group related notifications by threads. Messages with the same thread ID are grouped on the lock screen and in the Notification Center. To create a thread ID, press Edit:

Enter the name and ID in the window opened, then press Save:

Select the thread ID from the drop-down list:

Take a look at how grouped push notifications with two different thread IDs look on a device:

iOS Root Params. Root level parameters to the APS dictionary.

iOS10+ Media attachment. URL to any video, audio, picture or GIF for iOS rich notification. See this guide for more details on iOS 10 Rich Notifications.

Send silent notification. Allows to send a silent push with content-available property. When a silent push arrives, iOS wakes up your app in the background, so you can get new data from your server or do background information processing.

Critical Push. Stands for iOS critical alerts playing a sound even if Do Not Disturb is on or iPhone is muted. Critical alerts are allowed only for apps entitled by Apple. To enable critical alerts for your app, submit the entitlement request at Apple Developer Portal.

Expiration time. Sets the period after which the push won't be delivered if the device was offline.

iOS 15 notification interruption levels

Starting from iOS 15, the Focus modes are managing notifications interruption levels on users’ devices. Using Focus modes, iPhone users can customize their notification preferences in various ways, including setting their own Work, Sleep, and Personal notification modes. These modes can allow notifications from particular apps the user chooses and block others from sending pushes while the mode is enabled. For example, a user might set the Work mode to allow notifications from the work-related apps only.

There are four interruption level options introduced in iOS 15:

Active Pushes (default)

Active pushes behave as regular notifications used to behave before iOS 15: the notification is presented immediately when it’s received, the screen lights up upon receiving the push, and sounds and vibrations can be played. If the Focus mode blocks the app’s notifications, Active Pushes won’t break through this mode.

Passive Pushes

As for Passive Pushes, the system adds them to the notification list without lighting up the screen or playing a sound. That type of pushes is used for notifications that do not require immediate user’s attention, for example, personal recommendations, offers, or updates. These notifications won’t break through Focus modes.

Time Sensitive Pushes

Time-sensitive interruption level allows for displaying pushes upon delivery even when the Focus mode blocks the app’s notifications. These notifications are displayed with a yellow Time-Sensitive banner. However, the user can turn off the ability for time-sensitive notification interruptions. Time Sensitive interruption level should be used for notifications that require immediate user’s attention, such as account security or package delivery alerts.

Critical Pushes

Critical interruption level pushes are displayed by the system immediately, even when Do Not Disturb is active. These pushes light up the screen and bypass the mute switch to play a sound. Critical pushes should be used for critical cases such as severe weather or safety alerts and require an approved entitlement.

Android

Push title. Specify your Android notification title here. Personalize the title with the Dynamic Content placeholders. Please note the title is the same for all languages your push is translated to. If you need a multi-language title, enable it in the Message section; the multi-language title is the same for all platforms.

Badges. Specify the badge value; use +n to increment.

Sound. Specify the custom sound filename in the “res/raw” folder of your application. Omit the file extension.

LED. Choose LED color, the device will do its best approximation.

Image Background Color. Icon background color on Android Lollipop.

Force Vibration. Vibrate on arrival; use for urgent messages only.

Icon. Path to the notification icon. Insert the Dynamic Content placeholders to personalize the icon.

Banner. Enter image URL here. Image must be ≤ 450px wide, ~2:1 aspect, and it will be center-cropped. Insert the Dynamic Content placeholders to personalize the banner.

Android root params. Root level parameters for the Android payload, custom key-value object.

Delivery priority. Enables notification’s delivery when the device is in the power saving mode. Notifications with high delivery priority will be delivered nevertheless, while normal delivery priority means that the notification will be delivered after the power saving mode is turned off.

Importance level. Sets the “importance” parameter for devices with Android 8.0 and higher, as well as the “priority” parameter for devices with Android 7.1 and lower. This parameter with valid values from -2 to 2 establishes the interruption level of a notification channel or a particular notification.

  • Urgent importance level (1-2) - the notification makes a sound and appears as a heads-up notification

  • High importance level (0) - the notification makes a sound and appears in the status bar

  • Medium importance level (-1) - the notification makes no sound but still appears in the status bar

  • Low importance level (-2) - the notification makes no sound and does not appear in the status bar

Expiration time. Set the period after which the push won't be delivered if the device was offline.

Notifications Channels. Starting from Android 8.0, you can create Notification Channels. To create a channel, there are two steps you need to do:

  1. Set up the channel’s configuration. Specify all required parameters, such as sound, vibration, LED, and priority;

  2. Specify channel's name by adding the following key-value pair to Android root params: {“pw_channel”:“NAME OF CHANNEL”}.

To send a notification to an existing channel, you need to specify the very same key-value pair in Android root params.

It is not possible to change the channel’s parameters after it’s created on the device.

Safari

Title. Specify your Safari notification title here. This field is required, otherwise the push will not be sent. Personalizing the Safari push title with Dynamic Content, you boost open rates and increase audience loyalty levels.

Please note the title is the same for all languages your push is translated to. If you need a multi-language title, enable it in the Message section; the multi-language title is the same for all platforms.

Action button label (optional). Specify custom action button label here. If not set, “Show” will be displayed as a default.

URL field. Replace placeholder with part of URL you specified in the app’s Safari configuration. Users will be redirected to this URL in Safari upon opening your notification.

Expiration time. Set the period after which the push won't be delivered if the device was offline.

Chrome

Icon. Specify icon name from your extension resources or full path URL. Personalizable with Dynamic Content placeholders.

Title. Specify Chrome notification title. Personalizable with Dynamic Content placeholders.

Please note the title is the same for all languages your push is translated to. If you need a multi-language title, enable it in the Message section; the multi-language title is the same for all platforms.

Large image. Add a large image to your notification by specifying the full path URL to the image.

Chrome root params. Set parameters specific for pushes sent to Chrome. For example, to send a regular link to Chrome platform in parallel with a Deep Link sent to mobile devices, enter the link here as follows: {"l": "http://example.com"} Chrome root params are prioritized over general push parameters for push notifications sent to Chrome. So Chrome subscribers will get the link you specify here while users with mobile devices will get the Deep Link.

Buttons. Create custom buttons for your pushes. Specify the button Title and the URL to be opened (it's optional). If URL is omitted, the button being pressed closes the push.

For button URLs, personalization is available for greater relevance to your users' interests, preferences, and activities. The dynamic data (Tag values assigned to a device) is inserted into the URL just as any Dynamic Content.

While entering the URL, press the Personalization button next to the input field.

Next, select a tag you'd like to use for personalizing the page the user will go to once pressing the button. For example, to take a user to your site's section based on where they're from, add the Country tag to the URL. Thus, for instance, a user from the United States who presses the Learn more button will go to https://pushwoosh.com/us.

Duration. Specify time for push to be displayed. Set to infinity, if you would like to display notification until user interacts with it.

Expiration time. Set the period after which the push won't be delivered if the device was offline.

Firefox

Icon. Specify the icon name in the resources of your extension, or the full path URL. Personalizable with Dynamic Content placeholders.

Title. Specify Firefox notification title. Personalizable with Dynamic Content placeholders.

Please note the title is the same for all languages your push is translated to. If you need a multi-language title, enable it in the Message section; the multi-language title is the same for all platforms.

Firefox root params. Set parameters specific for pushes sent to Firefox. For example, to send a regular link to Firefox platform in parallel with a Deep Link sent to mobile devices, enter the link here as follows: {l: “http://example.com”} Firefox root params are prioritized over general push parameters for push notifications sent to Firefox. So Firefox subscribers will get the link you specify here while users with mobile devices will get the Deep Link.

Windows 8, 10

Windows 8 provides over 60 toast, tile, raw and badge templates, so we added only toast templates to our GUI since they're the most popular. Tile, raw and badge templates are available via Remote API only.

First, choose the template from the list on the right to unlock corresponding inputs. Then you can input content for all languages you need. The number of fields in Windows 8 push templates differs, so we had to separate it from all other platforms. It has its own set of language tabs, used just like the general language tabs.

Amazon

Header. Specify your Amazon notification header here.

Sound. Specify custom sound filename in the “res/raw” folder of your application. Omit the file extension.

Icon. Path to notification icon.

Banner. Full path to notification banner.

Expiration time. Period after which the push won't be delivered if the device was offline.

Last updated

Change request #1685: