IOS
User identifiers
In order to find a user to whom you need to send a notification, it is possible specify one or several available identifiers:
Property | Type | Description |
token | string | Push token. If you use a push token, all fields with other identifiers will be ignored! |
idfa | string | Ad identifier IDFA |
idfv | string | Device identifier under vendor IDFV |
userId | string | User id is applicable if an internal identifier (cross-platform user identifier) is used in your app |
devtodevId | number | Numeric user identifier in devtodev database. |
Notification settings
The object of a message for the iOS platform contains 2 fields:
payload (object) - describes the main content of a notification
options (object) - describes the optional settings of notification delivery
Notification content settings ("payload" object)
Property | Type | Description |
title | string | Optional. A short string describing the purpose of a notification. Apple Watch displays this string as a part of the notification interface. This string is displayed only briefly and should be crafted so that it can be understood quickly. This key was added in iOS 8.2. |
text | string | The text of an alert message. Required if a notification is not hidden. |
title-loc-key | string | Optional. The key to a title string in the Localizable.strings file for the current localization. The key string can be formatted with %@ and %n$@ specifiers to take the variables specified in the title-loc-args array. See Localized Formatted Strings for more information. This key was added in iOS 8.2. |
title-loc-args | string | Optional. Variable string values to appear in place of format specifiers in title-loc-key. See Localized Formatted Strings for more information. This key was added in iOS 8.2. |
action-loc-key | string | Optional. If a string is specified, the system displays an alert that includes the “Close” and “View” buttons. The string is used as a key to get a localized string in the current localization to use for the right button’s title instead of “View”. See Localized Formatted Strings for more information. |
loc-key | string | Optional. The key to an alert message string in a Localizable.strings file for the current localization (which is set by the user’s language preferences). The key string can be formatted with %@ and %n$@ specifiers to take the variables specified in the loc-args array. See Localized Formatted Strings for more information. |
loc-args | array | Optional. Variable string values to appear in place of format specifiers in loc-key. See Localized Formatted Strings for more information. |
launch-image | string | Optional. The filename of an image file in the app bundle, with or without the filename extension. The image is used as a launch image when users tap the action button or move the action slider. If this property is not specified, the system either uses the previous snapshot, uses the image identified by the UILaunchImageFile key in the app’s Info.plist file, or falls back to Default.png. This property was added in iOS 4.0. |
data | object | Optional if notification is not hidden. You can pass custom parameters with messages and use them within an app. For instance, you can activate advertising campaign or any other functionality for the user who has received this message. Example:
|
badge | number | Optional. The number to display as the badge of the app icon. If this property is absent, the badge is not changed. To remove the badge, set the value of this property to 0. |
sound | string | Optional. The name of a sound file in the app bundle or in the Library/Sounds folder of the app’s data container. The sound in this file is played as an alert. If the sound file doesn’t exist or "default" is specified as the value, the default alert sound is played. The audio must be in one of the audio data formats that are compatible with system sounds; see Preparing Custom Alert Sounds for details. |
attachment | object | Optional. Available from devtodev iOS SDK 1.9, Cordova SDK 1.9, Unity SDK 2.3, UE4 SDK 1.9, Air SDK 1.8 Added in iOS 10. The possibility to attach images, videos, audio, and GIFs is available in iOS 10. Specify the type of an attachment ("image", "audio" or "video") and URL that leads to a media file. Attention, iOS uses only “https” protocol. Example:
|
action | object | Optional. Available from devtodev iOS SDK 1.9, Cordova SDK 1.9, Unity SDK 2.3, UE4 SDK 1.9, Air SDK 1.8 The action after a click on the body of a notification. By default, a click simply opens an app. It is also possible to perform the following actions:
Examples:
|
interactive | object | Optional. Available from devtodev iOS SDK 1.9, Cordova SDK 1.9, Unity SDK 2.3, UE4 SDK 1.9, Air SDK 1.8 It is possible to specify one of the existing button templates in an “interactive” object, as well as assign the necessary actions to template buttons. It is possible to assign additional actions only to the button that opens an app. The same set of actions is available: deeplink, url and share. The list of accessible button templates is below in the text. Example:
|
Notification delivery and display settings (“options” object)
Property | Type | Description |
sandbox | boolean | Default value is false ("Production" gateway). Set to true if you need to send notification through the "Sandbox" gateway (for builds signed with a developer certificate). |
hidden | boolean | Switching a notification to the hidden mode. If “true” - a notification will not be displayed to a user, but will be transferred to an app. Such a message must not contain any properties except “data” in the “payload” object. Including this key and value means that when your app is launched in the background or resumed, application:didReceiveRemoteNotification:fetchCompletionHandler: is called |
priority | string | Optional. The priority of a notification. Default value is "normal". Specify one of the following values:
|
expire | number | This option identifies the date when the notification is no longer valid and can be discarded. It is possible to use either relative time in seconds passed since the moment of sending, or to specify the exact date in UNIX epoch format date expressed in seconds (UTC). Default value is 7 days (604800 seconds) after sending. If this value is nonzero, APNs stores a notification and tries to deliver it at least once repeating the attempt as needed if it is unable to deliver a notification for the first time. If the value is 0, APNs treats the notification as if it expires immediately and does not store the notification or attempt to redeliver it. |
collapse_key | string | Multiple notifications with the same collapse identifier are displayed to a user as a single notification. The value should not exceed 64 bytes. |
Button templates
Name | Description | Template ID | Button 1 | Button 2 | ||
Label | id | Label | id | |||
Yes or No (Open an app) | Yes option takes user into an app. No dismisses the notification. | dtd_yes.open_no.dismiss | Yes | yes | No | no |
Yes or No (Dismiss notification) | Yes and No options dismiss the notification when clicked without taking a user into an app. | dtd_yes.dismiss_no.dismiss | Yes | yes | No | no |
Accept or Decline (Open the app) | Accept option takes a user into an app. No dismisses a notification. | dtd_accept.open_decline.dismiss | Accept | accept | Decline | decline |
Accept or Decline (Dismiss notification) | Yes and No options dismiss a notification when clicked without taking a user into an app. | dtd_accept.dismiss_decline.dismiss | Accept | accept | Decline | decline |
Shop Now | Shop Now takes user into an app. Should be a different location from a notification action. | dtd_shop_now.open | Shop Now | shop_now | ||
Buy Now | Buy Now takes user into an app. Should be a different location from a notification action. | dtd_buy_now.open | Buy Now | buy_now | ||
Tell me more | Deep link to more details about a specific offer or program | dtd_more_info.open | Tell me more | more_info | ||
Download | Download deep links users directly to media e.g. wallpaper images, apps, music downloads, file downloads, etc. | dtd_download.open | Download | download | ||
Share | Pass sharing text through to native OS apps like Facebook and Twitter using the Share action. | dtd_share.open | Share | share | ||
Download or Share | Download deep links users directly to media e.g. wallpaper images, apps, music downloads, file downloads, etc. Share the same media socially. | dtd_download.open_share.open | Download | download | Share | share |
Shop Now or Share | Shop Now takes a user into an app; should be a different location from a notification action. | dtd_shop_now.open_share.open | Shop Now | shop_now | Share | share |
Buy Now or Share | Buy Now takes a user into an app; should be a different location from a notification action. | dtd_buy_now.open_share.open | Buy Now | buy_now | Share | share |
Like or Dislike | Both options take a user into an app. | dtd_like.open_dislike.open | Like | like | Dislike | dislike |
Like or Dislike | Like option takes user into an app. Dislike dismisses a notification. | dtd_like.open_dislike.dismiss | Like | like | Dislike | dislike |
Like | Option takes a user into an app. | dtd_like.open | Like | like | ||
Like and Share | Capture user sentiment by allowing users to like a message or share it. Both options take user into an app. | dtd_like.open_share.open | Like | like | Share | share |
Add | Add an item: most often a wallet pass or card to your digital Wallet. | dtd_add.open | Add | add | ||
Save and No | Save something for future reference. | dtd_save.open | Save | save | ||
Rate now | Drive users to rate an app in the app store by deep linking from this button. | dtd_rate.open | Rate now | rate | ||
Search | Deep link to a search functionality within an app | dtd_search.open | Search | search | ||
Book now | Deep link to booking flow within an app. | dtd_book.open | Book now | book |
The text on the buttons, which are on the list of templates, is translated into N languages and displayed to users individually according to the location of a device.
Examples
Push
POST
Hidden push
POST
Last updated