Mobile integration without using Blueshift's SDKs
This article provides information about the event attributes that you must send to Blueshift in the event from your server/non-SDK mobile apps to fully leverage the messaging capabilities offered by Blueshift.
Sending the right device and customer attributes in your events data helps you to build accurate customer profiles and run efficient campaigns that target the right customers.
When you send events data from your mobile apps/servers without using SDK to Blueshift, we recommend that you include the both the required and optional event attributes.
Important
If you are using Blueshift's SDKs in your mobile apps, then the SDK takes care of sending all the required attributes, and optional attributes (if available, for example, location, user data) to Blueshift. You do not have to send the event attributes separately.
Required attributes
If these attributes are not present in the customer profile, a push or in-app message cannot be sent to the customer.
Attribute | Values | Description |
---|---|---|
device_id | Android: By default, this is the Firebase Instance ID + Package Name. You can use other values if required. iOS: By default, this is the IDFV. You can use other values if required. | This is the unique identifier for the device/instance on which the app is running. You must include at least one customer identifier in the event data. If you do not include the email or customer_id, you must include the device_id. |
device_token | Android:Firebase Cloud Messaging (FCM) Token iOS:Apple Push Notification Service (APNS) Token | A unique token for sending push messages to the app. If the device_token is not included, Blueshift cannot send push notifications and cannot notify devices when new in-app messages are available. |
device_type | Android:The value is android for all Android devices. iOS:The value can be iPhone, iPad, and so on. | The type of device. You can use this value to understand which type of device is being used by the customer, especially if the customer has multiple devices. You can also use this value to send messages to only a specific type of device. |
app_name | Android:application id/package name iOS:bundle id | This is the package name or bundle id of the application. When you have the multiple apps enabled, this value is especially important as this is the attribute that decides which app you are sending messages to. |
os_name | Android:The OS version. For example,, "Android 11". iOS:The iOS version. For example, "iOS 14.6". | The operating system on which the app is running. This value is used to identify the platform on which the app is running so that the campaign can use the appropriate messaging service. |
enable_push | Android and iOS: true if opted in. Otherwise false. | Specify if the current device is opted in for receiving push notifications. If this value is not set, the customer might not receive messages from the campaign. |
enable_inapp | Android and iOS: true if opted in. Otherwise false. | Specify if the current device is opted in for receiving in-app messages. If this value is not set, the customer might not receive messages from the campaign. |
Recommended
These attributes are optional but we recommend that you send them so that Blueshift can build a comprehensive customer profile.
Attribute | Values | Description |
---|---|---|
Valid email id of the logged in customer. | The device will be associated with the customer in Blueshift based on the email provided. | |
customer_id | Valid customer id of the logged in customer. | The device will be associated with the customer in Blueshift based on the customer_id provided. |
latitude | Android and iOS: The value is expected to be the format "16.8251190185547". | This value is used to track the customer location. |
longitude | Android and iOS: The value is expected to be the format "16.8251190185547". | This value is used to track the customer location. ~~ |
language_code | Android and iOS: The value is expected to be the format "en". | This value is used to track the language set for the device. |
country_code | Android and iOS: The value is expected to be the format "IN". | This value is used to track the country or region in which the device is located. |
Updated 9 months ago