Configuration
Full configuration reference for the MAUI SDK
This page provides an overview of all configuration parameters for the SDK. In addition to the universal parameters, there are Android-specific and iOS-specific parameters.
Refer to Initialize the SDK for instructions.
Configuration parameters
The following parameters are specified in a Configuration object. Refer to BloomreachSDK/Lib/Models/Configuration.cs for the complete definition.
- 
ProjectToken(required)- Your project token. You can find this in the Engagement web app under 
Project settings>Access management>API. 
 - Your project token. You can find this in the Engagement web app under 
 - 
Authorization(required)- Your Engagement API key.
 - The token must be an Engagement public key. See Mobile SDKs API Access Management for details.
 - For more information, refer to Exponea API documentation.
 
 - 
BaseUrl- Your API base URL which can be found in the Engagement web app under 
Project settings>Access management>API. - Default value 
https://api.exponea.com. - If you have a custom base URL, you must set this property.
 
 - Your API base URL which can be found in the Engagement web app under 
 - 
ProjectRouteMap- If you need to track some events to a different Engagement project, you can define a mapping between event types and Engagement projects.
 - An event is always tracked to the default project and any projects it is mapped to.
 - Refer to Project Mapping for details.
 
 - 
DefaultProperties- A list of properties to include in all tracking events.
 - You can change these properties at runtime by calling 
BloomreachSDK.SetDefaultProperties. 
 - 
AllowDefaultCustomerProperties- If true, default properties are also applied to 'identifyCustomer' events.
 
 - 
AutomaticSessionTracking- Flag to control the automatic tracking of 
session_startandsession_endevents. - Default value: 
true 
 - Flag to control the automatic tracking of 
 - 
SessionTimeout- The session is the actual time spent in the app. It starts when the app is launched and ends when the app goes into the background.
 - When the application goes into the background, the SDK doesn't track the end of the session right away but waits a bit for the user to come back before doing so. You can configure the timeout by setting this property.
 - Read more about Tracking Sessions
 
 - 
TokenTrackFrequency- Indicates the frequency with which the SDK should track the push notification token to Engagement.
 - Default value: 
TokenTrackFrequency.OnTokenChange - Possible values:
OnTokenChange- tracks push token if it differs from a previously tracked oneEveryLaunch- always tracks push tokenDaily- tracks push token once per day
 
 - 
MaxTries- Controls how many times the SDK should attempt to flush an event before aborting. Useful for example in case the API is down or some other temporary error happens.
 - The SDK will consider the data to be flushed if this number is exceeded and delete the data from the queue.
 - Default value: 
10 
 - 
AdvancedAuthEnabled- If set, advanced authorization is used for communication with the Engagement APIs listed in Customer Token Authorization.
 - Refer to the authorization documentation for details.
 
 
Android-specific configuration parameters
The following parameters are specified in the same Configuration object but only applied on Android.
- 
AutomaticPushNotifications- By default, the SDK will set up a Firebase service and try to process push notifications sent from the Engagement platform automatically. You can opt out by setting this to 
false. - Default value: 
true 
 - By default, the SDK will set up a Firebase service and try to process push notifications sent from the Engagement platform automatically. You can opt out by setting this to 
 - 
PushIcon- Android resource ID of the icon to be used for push notifications.
 
 - 
PushAccentColor- Accent color of push notification icon and buttons.
 - This is a color ID, not a resource ID. When using colors from resources, you must get the resource first, and convert it to a uint value, or get the color directly from argb, for example, 
System.Drawing.Color.FromArgb(0, 0, 255).ToInt();for blue. 
 - 
PushChannelName- Name of the channel to be created for the push notifications.
 - Only available for API level 26+. Refer to https://developer.android.com/training/notify-user/channels for details.
 
 - 
PushChannelDescription- Description of the channel to be created for the push notifications.
 - Only available for API level 26+. Refer to https://developer.android.com/training/notify-user/channels for details.
 
 - 
PushChannelId- Channel ID for push notifications.
 - Only available for API level 26+. Refer to https://developer.android.com/training/notify-user/channels for details.
 
 - 
PushNotificationImportance- Notification importance for the notification channel.
 - Only available for API level 26+. Refer to https://developer.android.com/training/notify-user/channels for details.
 
 
iOS-specific configuration parameters
The following parameters are specified in the same Configuration object but only applied on iOS.
- 
RequirePushAuthorization- The SDK can check push notification authorization status (Apple documentation) and only track the push token if the user is authorized to receive push notifications.
 - When disabled, the SDK will automatically register for push notifications on app start and track the token to Engagement so your app can receive silent push notifications.
 - When enabled, the SDK will automatically register for push notifications if the app is authorized to show push notifications to the user.
 - Unless you're only using silent notifications, keep the default value 
true. 
 - 
AppGroup- App group used for communication between the main app and notification extensions. This is a required field for rich push notification setup.
 
 
Updated about 1 year ago
