diff --git a/_docs/_api/basics.md b/_docs/_api/basics.md index 5930f761bc0..b1a3af91fa2 100644 --- a/_docs/_api/basics.md +++ b/_docs/_api/basics.md @@ -297,7 +297,7 @@ Making a Braze-to-Braze webhook and using allowlisting? Check out our list of [I If you're implementing Braze using Ruby, you can use our [Ruby client library](https://github.com/braze-inc/braze-api-client-ruby) to reduce your data import time. A client library is a collection of code specific to one programming language—in this case, Ruby—that makes it easier to use an API. -The Ruby client library supports the [User Endpoints]({{site.baseurl}}/api/endpoints/#user-data). +The Ruby client library supports the [User Endpoints]({{site.baseurl}}/api/endpoints/user_data). {% alert note %} This client library is currently in beta. Want to help us make this library better? Send us feedback at [smb-product@braze.com](mailto:smb-product@braze.com). diff --git a/_docs/_api/endpoints/export/user_data/post_users_global_control_group.md b/_docs/_api/endpoints/export/user_data/post_users_global_control_group.md index 8810116b53a..df846ec09b8 100644 --- a/_docs/_api/endpoints/export/user_data/post_users_global_control_group.md +++ b/_docs/_api/endpoints/export/user_data/post_users_global_control_group.md @@ -104,9 +104,9 @@ The following is a list of valid `fields_to_export`. Using `fields_to_export` to |---|---|---| | `apps` | Array | Apps this user has logged sessions for, which includes the fields:

- `name`: app name
- `platform`: app platform, such as iOS, Android, or Web
- `version`: app version number or name
- `sessions`: total number of sessions for this app
- `first_used`: date of first session
- `last_used`: date of last session

All fields are strings. | | `attributed_campaign` | String | Data from [attribution integrations]({{site.baseurl}}/partners/message_orchestration/attribution), if set up. Identifier for a particular ad campaign. | -| `attributed_source` | String | Data from [attribution integrations]({{site.baseurl}}
/partners/message_orchestration/attribution
), if set up. Identifier for the platform the ad was on. | -| `attributed_adgroup` | String | Data from [attribution integrations]({{site.baseurl}}
/partners/message_orchestration/attribution
), if set up. Identifier for an optional sub-grouping below campaign. | -| `attributed_ad` | String | Data from [attribution integrations]({{site.baseurl}}
/partners/message_orchestration/attribution
), if set up. Identifier for an optional sub-grouping below campaign and adgroup. | +| `attributed_source` | String | Data from [attribution integrations]({{site.baseurl}}/partners/message_orchestration/attribution), if set up. Identifier for the platform the ad was on. | +| `attributed_adgroup` | String | Data from [attribution integrations]({{site.baseurl}}/partners/message_orchestration/attribution), if set up. Identifier for an optional sub-grouping below campaign. | +| `attributed_ad` | String | Data from [attribution integrations]({{site.baseurl}}/partners/message_orchestration/attribution), if set up. Identifier for an optional sub-grouping below campaign and adgroup. | | `braze_id` | String | Device-specific unique user identifier set by Braze for this user. | | `country` | String | User's country using [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) standard. | | `created_at` | String | Date and time for when the user profile was created, in ISO 8601 format. | diff --git a/_docs/_api/endpoints/export/user_data/post_users_segment.md b/_docs/_api/endpoints/export/user_data/post_users_segment.md index e3afab60afb..ed345b12ce9 100644 --- a/_docs/_api/endpoints/export/user_data/post_users_segment.md +++ b/_docs/_api/endpoints/export/user_data/post_users_segment.md @@ -115,9 +115,9 @@ The following is a list of valid `fields_to_export`. Using `fields_to_export` to |---|---|---| | `apps` | Array | Apps this user has logged sessions for, which includes the fields:

- `name`: app name
- `platform`: app platform, such as iOS, Android, or Web
- `version`: app version number or name
- `sessions`: total number of sessions for this app
- `first_used`: date of first session
- `last_used`: date of last session

All fields are strings. | | `attributed_campaign` | String | Data from [attribution integrations]({{site.baseurl}}/partners/message_orchestration/attribution), if set up. Identifier for a particular ad campaign. | -| `attributed_source` | String | Data from [attribution integrations]({{site.baseurl}}
/partners/message_orchestration/attribution
), if set up. Identifier for the platform the ad was on. | -| `attributed_adgroup` | String | Data from [attribution integrations]({{site.baseurl}}
/partners/message_orchestration/attribution
), if set up. Identifier for an optional sub-grouping below campaign. | -| `attributed_ad` | String | Data from [attribution integrations]({{site.baseurl}}
/partners/message_orchestration/attribution
), if set up. Identifier for an optional sub-grouping below campaign and adgroup. | +| `attributed_source` | String | Data from [attribution integrations]({{site.baseurl}}/partners/message_orchestration/attribution), if set up. Identifier for the platform the ad was on. | +| `attributed_adgroup` | String | Data from [attribution integrations]({{site.baseurl}}/partners/message_orchestration/attribution), if set up. Identifier for an optional sub-grouping below campaign. | +| `attributed_ad` | String | Data from [attribution integrations]({{site.baseurl}}/partners/message_orchestration/attribution), if set up. Identifier for an optional sub-grouping below campaign and adgroup. | | `braze_id` | String | Device-specific unique user identifier set by Braze for this user. | | `country` | String | User's country using [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) standard. | | `created_at` | String | Date and time for when the user profile was created, in ISO 8601 format. | diff --git a/_docs/_api/endpoints/preference_center/put_update_preference_center.md b/_docs/_api/endpoints/preference_center/put_update_preference_center.md index 5ea93b3a6fc..230c32a82d5 100644 --- a/_docs/_api/endpoints/preference_center/put_update_preference_center.md +++ b/_docs/_api/endpoints/preference_center/put_update_preference_center.md @@ -21,9 +21,12 @@ description: "This article outlines details about the Update a preference center This endpoint has a rate limit of 10 requests per minute, per app group. ## Path parameters + | Parameter | Required | Data Type | Description | | --------- | ---------| --------- | ----------- | |`preferenceCenterExternalID`| Required | String | The ID for your preference center. | +{: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} + ## Request body diff --git a/_docs/_api/endpoints/subscription_groups/post_update_user_subscription_group_status_v2.md b/_docs/_api/endpoints/subscription_groups/post_update_user_subscription_group_status_v2.md index 2d205265e7c..33fbcda2fd8 100644 --- a/_docs/_api/endpoints/subscription_groups/post_update_user_subscription_group_status_v2.md +++ b/_docs/_api/endpoints/subscription_groups/post_update_user_subscription_group_status_v2.md @@ -22,7 +22,7 @@ You can access a subscription group's `subscription_group_id` by navigating to t If you want to see examples or test this endpoint for **Email Subscription Groups**: -{% apiref postman %}hhttps://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#b1b9a0e0-6329-4df2-a465-53347f410662 {% endapiref %} +{% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#b1b9a0e0-6329-4df2-a465-53347f410662 {% endapiref %} If you want to see examples or test this endpoint for **SMS Subscription Groups**: diff --git a/_docs/_api/objects_filters/event_object.md b/_docs/_api/objects_filters/event_object.md index b501dc5905c..46b44f8e6ec 100644 --- a/_docs/_api/objects_filters/event_object.md +++ b/_docs/_api/objects_filters/event_object.md @@ -42,8 +42,8 @@ Tracking Custom Events article: } ``` -- [External User ID][23] -- [App Identifier][21] +- [External User ID]({{site.baseurl}}/api/basics/#user-ids) +- [App identifier]({{site.baseurl}}/api/identifier_types/) - [ISO 8601 Time Code Wiki][22] #### Update existing profiles only diff --git a/_docs/_api/objects_filters/messaging/email_object.md b/_docs/_api/objects_filters/messaging/email_object.md index 1d6f29337dd..df42760cdf8 100644 --- a/_docs/_api/objects_filters/messaging/email_object.md +++ b/_docs/_api/objects_filters/messaging/email_object.md @@ -35,7 +35,7 @@ description: "This reference article explains the different components of Braze' } ``` -- [App Identifier]({{site.baseurl}}/api/api_key/#the-app-identifier-api-key) +- [App identifier]({{site.baseurl}}/api/identifier_types/) - For more information and best practices on pre-headers, see our help article on [email body styling][46]. {% alert warning %} diff --git a/_docs/_api/objects_filters/messaging/sms_object.md b/_docs/_api/objects_filters/messaging/sms_object.md index 642b696d2bb..869cdbc7055 100644 --- a/_docs/_api/objects_filters/messaging/sms_object.md +++ b/_docs/_api/objects_filters/messaging/sms_object.md @@ -21,4 +21,4 @@ description: "This reference article explains the different components of Braze' } ``` -- [App Identifier]({{site.baseurl}}/api/api_key#the-app-identifier-api-key) \ No newline at end of file +- [App identifier]({{site.baseurl}}/api/identifier_types/) \ No newline at end of file diff --git a/_docs/_api/objects_filters/messaging/whats_app_object.md b/_docs/_api/objects_filters/messaging/whats_app_object.md index a9f92cd87b3..27fd9922090 100644 --- a/_docs/_api/objects_filters/messaging/whats_app_object.md +++ b/_docs/_api/objects_filters/messaging/whats_app_object.md @@ -28,7 +28,7 @@ description: "This reference article explains the different components of Braze' } ``` -- [App identifier]({{site.baseurl}}/api/api_key#the-app-identifier-api-key) +- [App identifier]({{site.baseurl}}/api/identifier_types/) ## Header variables object diff --git a/_docs/_api/objects_filters/purchase_object.md b/_docs/_api/objects_filters/purchase_object.md index 96ecf3ebe6e..68eee33d639 100644 --- a/_docs/_api/objects_filters/purchase_object.md +++ b/_docs/_api/objects_filters/purchase_object.md @@ -39,8 +39,8 @@ A purchase object is an object that gets passed through the API when a purchase } ``` -- [External User ID][23] -- [App Identifier][21] +- [External User ID]({{site.baseurl}}/api/basics/#user-ids) +- [App identifier]({{site.baseurl}}/api/identifier_types/) - [ISO 4217 Currency Code Wiki][20] - [ISO 8601 Time Code Wiki][22] diff --git a/_docs/_developer_guide/platform_integration_guides/android/initial_sdk_setup/android_sdk_integration.md b/_docs/_developer_guide/platform_integration_guides/android/initial_sdk_setup/android_sdk_integration.md index 200038fb135..a2c3ab0b18b 100644 --- a/_docs/_developer_guide/platform_integration_guides/android/initial_sdk_setup/android_sdk_integration.md +++ b/_docs/_developer_guide/platform_integration_guides/android/initial_sdk_setup/android_sdk_integration.md @@ -14,7 +14,7 @@ search_rank: 4 > This reference article covers how to integrate the Android SDK into your Android or FireOS application. Installing the Braze SDK will provide you with basic analytics functionality and working in-app messages with which you can engage your users. {% alert note %} -For optimal performance on Android 12, we recommend upgrading to [Braze Android SDK v13.1.2+](https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md#1312) as soon as possible. For more information, see our [Android 12 upgrade guide]({{site.baseurl}}/developer_guide/platform_integration_guides/android/android_12/). +For optimal performance on Android 12, we recommend upgrading to [Braze Android SDK v13.1.2+](https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md#1312) as soon as possible. For more information, see our [Android 12 upgrade guide]({{site.baseurl}}/android_12/). {% endalert %} ## Step 1: Integrate the Braze library diff --git a/_docs/_developer_guide/platform_integration_guides/cordova/cordova_integration.md b/_docs/_developer_guide/platform_integration_guides/cordova/cordova_integration.md index 9cd527aa77e..dab9f9fd76d 100644 --- a/_docs/_developer_guide/platform_integration_guides/cordova/cordova_integration.md +++ b/_docs/_developer_guide/platform_integration_guides/cordova/cordova_integration.md @@ -89,6 +89,6 @@ If you would like to log purchases at the order level instead of the product lev News Feed is being deprecated. Braze recommends that customers who use our News Feed tool move over to our Content Cards messaging channel—it's more flexible, customizable, and reliable. Check out the [migration guide]({{site.baseurl}}/user_guide/message_building_by_channel/content_cards/migrating_from_news_feed/) for more. {% endalert %} -See the [Android]({{site.baseurl}}/developer_guide/platform_integration_guides/android/news_feed/#news-feed) and [iOS]({{ site.baseurl }}/developer_guide/platform_integration_guides/ios/news_feed/) integration instructions for information on how to integrate the News Feed into your Cordova app. Alternatively, our Cordova plugin provides a method, `launchNewsFeed`, that will launch a modal News Feed without further integration. +See the [Android]({{site.baseurl}}/developer_guide/platform_integration_guides/android/news_feed/integration/) and [iOS]({{ site.baseurl }}/developer_guide/platform_integration_guides/ios/news_feed/) integration instructions for information on how to integrate the News Feed into your Cordova app. Alternatively, our Cordova plugin provides a method, `launchNewsFeed`, that will launch a modal News Feed without further integration. The Braze Cordova SDK has several methods to get the number of read or unread News Feed cards for different categories. Check out a [sample project implementation](https://github.com/Appboy/appboy-cordova-sdk/blob/master/sample-project/www/js/index.js) for an example. diff --git a/_docs/_developer_guide/platform_integration_guides/cordova/initial_sdk_setup/ios.md b/_docs/_developer_guide/platform_integration_guides/cordova/initial_sdk_setup/ios.md index fb11746464a..d97443e05cc 100644 --- a/_docs/_developer_guide/platform_integration_guides/cordova/initial_sdk_setup/ios.md +++ b/_docs/_developer_guide/platform_integration_guides/cordova/initial_sdk_setup/ios.md @@ -61,7 +61,7 @@ To enable the automatic collection of the [iOS IDFA][3], set the following confi ### Location collection and geofences -To enable location collection and Braze Geofences, use the [`geofence-branch`][3] instead of the default `master` branch. By default, the Braze SDK disables location collection and Braze Geofences. Additionally, use the following preferences configuration: +To enable location collection and Braze Geofences, use the `geofence-branch` instead of the default `master` branch. By default, the Braze SDK disables location collection and Braze Geofences. Additionally, use the following preferences configuration: ```xml diff --git a/_docs/_developer_guide/platform_integration_guides/flutter/flutter_sdk_integration.md b/_docs/_developer_guide/platform_integration_guides/flutter/flutter_sdk_integration.md index 6db493b5a9d..6ced92a4e05 100644 --- a/_docs/_developer_guide/platform_integration_guides/flutter/flutter_sdk_integration.md +++ b/_docs/_developer_guide/platform_integration_guides/flutter/flutter_sdk_integration.md @@ -19,7 +19,7 @@ You will need to complete installation steps on both platforms separately. ## Prerequisites -To complete the installation, you will need the [app identifier API key][3] as well as the [SDK endpoint][4]. Both are located under **Manage Settings** in the dashboard. +To complete the installation, you will need the [app identifier API key]({{site.baseurl}}/api/identifier_types/) as well as the [SDK endpoint][4]. Both are located under **Manage Settings** in the dashboard. Before following these steps, install and set up the [Flutter SDK][5]. diff --git a/_docs/_developer_guide/platform_integration_guides/ios/advanced_use_cases/locations_and_geofences.md b/_docs/_developer_guide/platform_integration_guides/ios/advanced_use_cases/locations_and_geofences.md index 9fae360c32a..47eda573956 100644 --- a/_docs/_developer_guide/platform_integration_guides/ios/advanced_use_cases/locations_and_geofences.md +++ b/_docs/_developer_guide/platform_integration_guides/ios/advanced_use_cases/locations_and_geofences.md @@ -11,8 +11,6 @@ Tool: # Locations and geofences -Geofences are only available in select Braze packages. For access, create a [support ticket][support] or speak with your Braze customer success manager. - To support geofences for iOS: 1. Your integration must support background push notifications. diff --git a/_docs/_developer_guide/platform_integration_guides/react_native/react_sdk_setup.md b/_docs/_developer_guide/platform_integration_guides/react_native/react_sdk_setup.md index 0fd264c5fb2..7554960d8a2 100644 --- a/_docs/_developer_guide/platform_integration_guides/react_native/react_sdk_setup.md +++ b/_docs/_developer_guide/platform_integration_guides/react_native/react_sdk_setup.md @@ -13,7 +13,7 @@ search_rank: 1 You will need to complete installation steps on both platforms separately. -To complete the installation, you will need the [App Identifier API key]({{site.baseurl}}/api/api_key/#the-app-identifier-api-key) as well as the [SDK endpoint]({{site.baseurl}}/api/basics/#endpoints). Both are located under **Manage Settings** in the dashboard. +To complete the installation, you will need the [app identifier API key]({{site.baseurl}}/api/identifier_types/) as well as the [SDK endpoint]({{site.baseurl}}/api/basics/#endpoints). Both are located under **Manage Settings** in the dashboard. ## Prerequisites and compatibility Braze React Native SDK v1.38.0+: diff --git a/_docs/_developer_guide/platform_integration_guides/swift/advanced_use_cases/locations_and_geofences.md b/_docs/_developer_guide/platform_integration_guides/swift/advanced_use_cases/locations_and_geofences.md index 7d10162a3d8..7504295c90d 100644 --- a/_docs/_developer_guide/platform_integration_guides/swift/advanced_use_cases/locations_and_geofences.md +++ b/_docs/_developer_guide/platform_integration_guides/swift/advanced_use_cases/locations_and_geofences.md @@ -12,8 +12,6 @@ Tool: # Locations and geofences -Geofences are only available in select Braze packages. For access, create a [support ticket][support] or speak with your Braze customer success manager. - To support geofences for iOS: 1. Your integration must support background push notifications. diff --git a/_docs/_developer_guide/platform_integration_guides/unity/push_notifications/android.md b/_docs/_developer_guide/platform_integration_guides/unity/push_notifications/android.md index 586bf40edd4..1a15bf64bed 100644 --- a/_docs/_developer_guide/platform_integration_guides/unity/push_notifications/android.md +++ b/_docs/_developer_guide/platform_integration_guides/unity/push_notifications/android.md @@ -125,4 +125,4 @@ For setup guidance, visit [Deep Linking to In-App Resources][26]. [61]: {{site.baseurl}}/developer_guide/platform_integration_guides/unity/advanced_use_cases [62]: {% image_buster /assets/img/unity/android/unity_android_push_settings_config.png %} "Android Push Settings" [63]: {% image_buster /assets/img/unity/android/unity_android_full_push_listener.png %} "Android Full Listener Example" -[64]: {{site.baseurl}}/developer_guideplatform_integration_guides/unity/push_notifications/adm_push_notifications/ \ No newline at end of file +[64]: {{site.baseurl}}/developer_guide/platform_integration_guides/unity/push_notifications/adm_push_notifications/ \ No newline at end of file diff --git a/_docs/_developer_guide/platform_integration_guides/unity/sdk_integration/ios.md b/_docs/_developer_guide/platform_integration_guides/unity/sdk_integration/ios.md index 0195c46c061..5f2f25e97db 100644 --- a/_docs/_developer_guide/platform_integration_guides/unity/sdk_integration/ios.md +++ b/_docs/_developer_guide/platform_integration_guides/unity/sdk_integration/ios.md @@ -60,7 +60,7 @@ Braze should now be collecting data from your application, and your basic integr To extend the SDK's behaviors, fork the [Braze Unity SDK GitHub project](https://github.com/appboy/appboy-unity-sdk) and make your required changes. -To publish your modified code as a Unity package, see our [Advanced use cases]({{site.baseurl}}/developer_guide/platform_integration_guides/unity/Advanced_Use_Cases/advanced_use_cases). +To publish your modified code as a Unity package, see our [Advanced use cases]({{site.baseurl}}/developer_guide/platform_integration_guides/unity/advanced_use_cases/). ### Transitioning from manual to automated integration (iOS) diff --git a/_docs/_developer_guide/platform_integration_guides/web/google_tag_manager.md b/_docs/_developer_guide/platform_integration_guides/web/google_tag_manager.md index 747e29ae5c2..03df59af479 100644 --- a/_docs/_developer_guide/platform_integration_guides/web/google_tag_manager.md +++ b/_docs/_developer_guide/platform_integration_guides/web/google_tag_manager.md @@ -162,7 +162,7 @@ When implementing the [standard feed UI]({{site.baseurl}}/developer_guide/platfo #### Custom feed UI -For [custom feed](((site.baseurl))/developer_guide/platform_integration_guides/web/content_cards/customization/custom_styling) styling, the steps are the same as if you had integrated the SDK without GTM. For example, if you want to customize the width of the Content Card feed, you can paste the following into your CSS file: +For [custom feed]({{site.baseurl}}/developer_guide/platform_integration_guides/web/content_cards/customization/custom_styling) styling, the steps are the same as if you had integrated the SDK without GTM. For example, if you want to customize the width of the Content Card feed, you can paste the following into your CSS file: {% raw %} ```css diff --git a/_docs/_developer_guide/platform_integration_guides/xamarin/inapp_messages.md b/_docs/_developer_guide/platform_integration_guides/xamarin/inapp_messages.md index 2272c5feec5..48f392b53f8 100644 --- a/_docs/_developer_guide/platform_integration_guides/xamarin/inapp_messages.md +++ b/_docs/_developer_guide/platform_integration_guides/xamarin/inapp_messages.md @@ -24,7 +24,7 @@ In-app messages will work by default if you've included the Appboy.bundle folder See the [iOS integration instructions][1] for information on In-app best practices. Furthermore, you can look at the [sample application][2] for implementation samples. -[1]: {{site.baseurl}}/developer_guide/platform_integration_guides/ios/in-app_messaging/#in-app-messaging +[1]: {{site.baseurl}}/developer_guide/platform_integration_guides/ios/in-app_messaging/overview/ [2]: https://github.com/braze-inc/braze-xamarin-sdk/tree/master/appboy-component/samples [11]: {{site.baseurl}}/developer_guide/platform_integration_guides/android/in-app_messaging/overview/ [12]: https://github.com/braze-inc/braze-xamarin-sdk/tree/master/appboy-component/samples diff --git a/_docs/_developer_guide/platform_integration_guides/xamarin/news_feed.md b/_docs/_developer_guide/platform_integration_guides/xamarin/news_feed.md index 9b9505cfff5..6dcb538cf1c 100644 --- a/_docs/_developer_guide/platform_integration_guides/xamarin/news_feed.md +++ b/_docs/_developer_guide/platform_integration_guides/xamarin/news_feed.md @@ -34,7 +34,7 @@ ABKFeedViewControllerModalContext m = new ABKFeedViewControllerModalContext (); this.PresentViewController (m, true, null); ``` -[1]: {{site.baseurl}}/developer_guide/platform_integration_guides/android/news_feed/#news-feed +[1]: {{site.baseurl}}/developer_guide/platform_integration_guides/android/news_feed/integration/ [2]: https://github.com/braze-inc/braze-xamarin-sdk [11]: {{site.baseurl}}/developer_guide/platform_integration_guides/ios/news_feed/ [12]: https://github.com/braze-inc/braze-xamarin-sdk/tree/master/appboy-component/samples diff --git a/_docs/_developer_guide/platform_wide/analytics_overview.md b/_docs/_developer_guide/platform_wide/analytics_overview.md index 3329693c57a..76b84df69b3 100644 --- a/_docs/_developer_guide/platform_wide/analytics_overview.md +++ b/_docs/_developer_guide/platform_wide/analytics_overview.md @@ -385,7 +385,7 @@ If only a single generic name field exists for a user (e.g., 'JohnDoe'), you can [4]: {{site.baseurl}}/developer_guide/platform_wide/analytics_overview/#purchase-events--revenue-tracking [8]: {% image_buster /assets/img_archive/custom_event_analytics_example.png %} "custom_event_analytics_example.png" -[9]: {{site.baseurl}}/developer_guide/rest_api/user_data/#user-data +[9]: {{site.baseurl}}/api/endpoints/user_data/ [10]: {{site.baseurl}}/api/endpoints/messaging/ [11]: http://www.regextester.com/pregsyntax.html [12]: #integers diff --git a/_docs/_developer_guide/platform_wide/tv_and_ott.md b/_docs/_developer_guide/platform_wide/tv_and_ott.md index eaf91ffd8bd..e2f5c501da9 100644 --- a/_docs/_developer_guide/platform_wide/tv_and_ott.md +++ b/_docs/_developer_guide/platform_wide/tv_and_ott.md @@ -247,7 +247,7 @@ Read more about custom handling messaging: [3]: {{site.baseurl}}/developer_guide/platform_integration_guides/roku/in-app_messaging/overview/ [4]: https://github.com/braze-inc/braze-swift-sdk [5]: https://designguidelines.withgoogle.com/android-tv/patterns/notifications.html -[6]: {{site.baseurl}}/developer_guide/platform_integration_guides/android/push_notifications/android_tv_push/ +[6]: {{site.baseurl}}/developer_guide/platform_integration_guides/android/push_notifications/android/android_tv_push/ [7]: https://developer.amazon.com/docs/fire-tv/notifications.html#headsup [8]: {{site.baseurl}}/developer_guide/platform_integration_guides/web/smart_tvs/ [android-tv-html]: https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md#2310 diff --git a/_docs/_help/help_articles/account/locked_out.md b/_docs/_help/help_articles/account/locked_out.md index f41c71bafce..0014f4f62af 100644 --- a/_docs/_help/help_articles/account/locked_out.md +++ b/_docs/_help/help_articles/account/locked_out.md @@ -21,7 +21,6 @@ You can tell what kind of lock out you're experiencing by the error message you ## Password error Your account security is important to us, so passwords are required to log into your Braze account. - - Check that you are logging into the correct [Braze dashboard instance][1]. Check with your account administrator or Braze account manager to be sure. - Your password may have expired, so you'll need to [reset it][2]. - If you use a [single sign-on][3] service, check with your account administrator that the set up has been completed properly. diff --git a/_docs/_help/help_articles/api/attribute_name_id_across_sources.md b/_docs/_help/help_articles/api/attribute_name_id_across_sources.md index 7ee6eb9f5f1..de7eb9eaf7e 100644 --- a/_docs/_help/help_articles/api/attribute_name_id_across_sources.md +++ b/_docs/_help/help_articles/api/attribute_name_id_across_sources.md @@ -20,7 +20,7 @@ Campaign and Canvas attributes are available as Liquid tags in our dashboard {% ### REST API -Campaign and Canvas attributes are also available in the [campaign details endpoint]({{site.baseurl}}/api/endpoints/export/campaigns/get_campaign_details/) or [Canvas details endpoint]({{site.baseurl}}/api/endpoints/export/canvas/get_canvas_details/). You can use our REST API to build mappings— that is, a list of all the Canvas names and their corresponding IDs. +Campaign and Canvas attributes are also available in the [Export campaign details endpoint]({{site.baseurl}}/api/endpoints/export/campaigns/get_campaign_details/) or [Export Canvas details endpoint]({{site.baseurl}}/api/endpoints/export/canvas/get_canvas_details/). You can use our REST API to build mappings—that is, a list of all the Canvas names and their corresponding IDs. ### Currents @@ -30,22 +30,22 @@ Campaign and Canvas attributes are tied to [message engagement events]({{site.ba | Attribute | Liquid | REST API | Currents | | --- | --- | --- | --- | -| Campaign name | {% raw %}`{{campaign.${name}}}`{% endraw %} | name | campaign_name | +| Campaign name | {% raw %}`{{campaign.${name}}}`{% endraw %} | `name` | `campaign_name` | | Campaign ID | {% raw %}`{{campaign.${api_id}}}`{% endraw %} | N/A (used as an input for the API call itself) | campaign_id | -| Variant name | {% raw %}`{{campaign.${message_name}}}`{% endraw %} | messages.message_variation_id.name | N/A (map variant name to variant ID using the campaign details endpoint) | -| Variant ID | {% raw %}`{{campaign.${message_api_id}}}`{% endraw %} | messages.message_variation_id | message_variation_id | +| Variant name | {% raw %}`{{campaign.${message_name}}}`{% endraw %} | `messages.message_variation_id.name` | N/A (map variant name to variant ID using the Export campaign details endpoint) | +| Variant ID | {% raw %}`{{campaign.${message_api_id}}}`{% endraw %} | `messages.message_variation_id` | `message_variation_id` | {: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} ## Canvas attributes | Attribute | Liquid | REST API | Currents | | --- | --- | --- | --- | -| Canvas name | {% raw %}`{{canvas.${name}}}`{% endraw %} | name | canvas_name | +| Canvas name | {% raw %}`{{canvas.${name}}}`{% endraw %} | `name` | `canvas_name` | | Canvas ID | {% raw %}`{{canvas.${api_id}}}`{% endraw %} | N/A (used as an input for the API call itself) | canvas_id | -| Variant name | {% raw %}`{{canvas.${variant_name}}}`{% endraw %} | variants.name | canvas_variation_name | -| Variant ID | {% raw %}`{{canvas.${variant_api_id}}}`{% endraw %} | variants.name.id | canvas_variation_id | -| Step name | {% raw %}`{{campaign.${name}}}`{% endraw %} | steps.name | canvas_step_name | -| Step ID | {% raw %}`{{campaign.${api_id}}}`{% endraw %} | steps.id | canvas_step_id | -| Message channel | N/A | steps.messages.message_variation_id.channel | N/A (inherent from event type, such as push send or email open) | -| Message ID | {% raw %}`{{campaign.${message_api_id}}}`{% endraw %} | steps.message.message_variation_id | message_variation_id | +| Variant name | {% raw %}`{{canvas.${variant_name}}}`{% endraw %} | `variants.name` | `canvas_variation_name` | +| Variant ID | {% raw %}`{{canvas.${variant_api_id}}}`{% endraw %} | `variants.name.id` | `canvas_variation_id` | +| Step name | {% raw %}`{{campaign.${name}}}`{% endraw %} | `steps.name` | `canvas_step_name` | +| Step ID | {% raw %}`{{campaign.${api_id}}}`{% endraw %} | `steps.id` | `canvas_step_id` | +| Message channel | N/A | `steps.messages.message_variation_id.channel` | N/A (inherent from event type, such as push send or email open) | +| Message ID | {% raw %}`{{campaign.${message_api_id}}}`{% endraw %} | `steps.message.message_variation_id` | `message_variation_id` | {: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} \ No newline at end of file diff --git a/_docs/_help/help_articles/campaigns_and_canvas/canvas_not_sending.md b/_docs/_help/help_articles/campaigns_and_canvas/canvas_not_sending.md index 6a07430b2cd..ddf26f00797 100644 --- a/_docs/_help/help_articles/campaigns_and_canvas/canvas_not_sending.md +++ b/_docs/_help/help_articles/campaigns_and_canvas/canvas_not_sending.md @@ -9,7 +9,7 @@ tool: Canvas # Canvas delivery issue -Canvases are robust and complex, and we know you dedicate time and care when creating them. So, if you find that your Canvas isn't sending the way you want it to, we recommend you check your Canvas schedule, entry audience, and entry settings. +Canvases are robust and complex, and we know you dedicate time and care when creating them. So, if you find that your Canvas isn't sending the way you want it to, we recommend checking your Canvas schedule, entry audience, and entry settings. ## Schedule @@ -17,21 +17,22 @@ Canvases are robust and complex, and we know you dedicate time and care when cre - Have you selected the correct date and time? - For [action-based delivery]({{site.baseurl}}/user_guide/engagement_tools/canvas/create_a_canvas/create_a_canvas/#action-based-delivery), have users performed the specified actions since you launched the Canvas? -## Segment +## Entry settings + +The [entry settings]({{site.baseurl}}/user_guide/engagement_tools/canvas/create_a_canvas/create_a_canvas/#step-2-use-the-entry-wizard-to-set-up-your-canvas) are important for understanding how your Canvases are sending. Check if you have limited the number of people who will potentially enter the Canvas. + +Users can also exit a Canvas if they're no longer eligible to receive messages. For example, if the Canvas only contains push notifications, and a user opts out of push after receiving the first step, then that user would drop out of the Canvas. Consider using [different Canvas steps]({{site.baseurl}}/user_guide/engagement_tools/canvas/canvas_components) to add alternative user journeys. + +## Segmenting your audience + +Consider the following questions for your target audience: -It is important to check your [entry audience]({{site.baseurl}}/user_guide/engagement_tools/canvas/create_a_canvas/create_a_canvas/#set-your-target-entry-audience): - Have you selected the correct segment? - How is the segment set up? - Have you ensured that the segment contains any users? - Have you added any additional filters that would limit the number of users entering the Canvas? - Do the users qualify to receive the first step of your variants? For example, if the first step of your Canvas is a push notification, but the entry audience is all push-disabled, then no users will receive messages. -## Settings - -The [entry settings]({{site.baseurl}}/user_guide/engagement_tools/canvas/create_a_canvas/create_a_canvas/#step-2-use-the-entry-wizard-to-set-up-your-canvas) are important when understanding how your Canvases are sending. Check if you have limited the number of people who will potentially enter the Canvas. - -Users may also drop out of a Canvas if they are no longer eligible to receive messages. For example, if the Canvas only contains push notifications, and a user opts out of push after receiving the first step, then that user would drop out of the Canvas. Consider [creating a branch]({{site.baseurl}}/user_guide/engagement_tools/canvas/create_a_canvas/branching/#creating-a-branch/) to add alternative user journeys. - -Still need help? Open a [support ticket]({{site.baseurl}}/braze_support/) or review the steps for [creating a Canvas]({{site.baseurl}}/user_guide/engagement_tools/canvas/create_a_canvas/create_a_canvas/). +Still need help? Review the steps for [creating a Canvas]({{site.baseurl}}/user_guide/engagement_tools/canvas/create_a_canvas/create_a_canvas/), or open a [support ticket]({{site.baseurl}}/braze_support/). _Last updated on November 16, 2022_ \ No newline at end of file diff --git a/_docs/_help/help_articles/campaigns_and_canvas/conversions_low.md b/_docs/_help/help_articles/campaigns_and_canvas/conversions_low.md index a7a183e04ab..79be58bbdb5 100644 --- a/_docs/_help/help_articles/campaigns_and_canvas/conversions_low.md +++ b/_docs/_help/help_articles/campaigns_and_canvas/conversions_low.md @@ -16,11 +16,11 @@ Conversions occur when your user performs an action within your message that you Your conversions might not be as high as you expect them to be when compared to previous campaigns or your expectations. Conversions are a tricky business, but they are dependent on a few simple functions in our platform: event tracking and conversion deadlines. -To quickly troubleshoot why that is, we recommend that you check event tracking and conversion deadlines. +To quickly troubleshoot why that is, we recommend checking your event tracking and conversion deadlines. ## Event tracking -When a campaign triggers a session start or custom event, you want to ensure that this event, or session is happening frequently enough to trigger the message. Check this data on the [Overview][1] (for session data) or [Custom Events][2] pages: +When a campaign triggers a session start or custom event, you want to ensure that this event, or session, is happening frequently enough to trigger the message. Check this data on the [Overview][1] (for session data) or [Custom Events][2] pages: ![The Custom Events page with the statistics for Custom Event Counts.][43] diff --git a/_docs/_help/help_articles/campaigns_and_canvas/locations_data_in_campaigns.md b/_docs/_help/help_articles/campaigns_and_canvas/locations_data_in_campaigns.md index 5a96aaab3ab..0c19d3a7f06 100644 --- a/_docs/_help/help_articles/campaigns_and_canvas/locations_data_in_campaigns.md +++ b/_docs/_help/help_articles/campaigns_and_canvas/locations_data_in_campaigns.md @@ -11,10 +11,7 @@ tool: Location Braze captures a user's most recent location by default via its SDK. This typically means that the "recent location" is the location from which your user most recently used your app. If you send Braze background location data, you may have more granular data available. -If no users have available locations, two quick checks may help you confirm: - -* [Data collection](#data-collection) -* [Data transfer](#data-transfer) +If no users have available locations, two quick checks can help you confirm data collection and date transfer. ## Data collection @@ -25,7 +22,7 @@ Confirm that your app is collecting location data: To see whether user location data is being sent to Braze, use the **Location Available** filter. This filter allows you to see the percentage of users with a "most recent location". -![Test recent location][25] +![][25] ## Data transfer diff --git a/_docs/_help/help_articles/campaigns_and_canvas/using_custom_event_properties.md b/_docs/_help/help_articles/campaigns_and_canvas/using_custom_event_properties.md index e04dbb29c77..e930f8a85ec 100644 --- a/_docs/_help/help_articles/campaigns_and_canvas/using_custom_event_properties.md +++ b/_docs/_help/help_articles/campaigns_and_canvas/using_custom_event_properties.md @@ -23,7 +23,7 @@ There are three important checks to carry out to ensure your custom events are b ### Verify events -Check with your developers which event properties are being tracked. Keep in mind that all event properties are case-sensitive. For additional information on tracking custom events, check out the following articles based on your platform: +Check with your developers which event properties are being tracked. Keep in mind that all event properties are case-sensitive. For additional information on tracking custom events, check out these articles based on your platform: * [Android][51] * [iOS][23] @@ -31,15 +31,19 @@ Check with your developers which event properties are being tracked. Keep in min ### Verify log -To confirm that the event properties are successfully tracked, you can view all event properties by navigating to the **Manage Settings** page, clicking on the **Custom Events** tab, then clicking **Manage Properties**. This will show you the names of the properties associated with an event. +To confirm that the event properties are successfully tracked, you can view all event properties by navigating to the **Manage Settings > Custom Events** tab **> **Manage Properties**. This will show you the names of the properties associated with an event. ### Verify values -To check the specific property values being passed for each event, check the [event user logs][24] on your dashboard. After adding your user as a test user, you should perform the custom event within the app, wait around 10 seconds for the data to flush, and then refresh the event user log to view the custom event and the event property value that was passed with it. +After adding your user as a test user, follow these steps to verify your values: + +1. Perform the custom event within the app. +2. Wait for roughly 10 seconds for the data to flush. +3. Refresh the [Event User Log][24] to view the custom event and the event property value that was passed with it. Still need help? Open a [support ticket]({{site.baseurl}}/braze_support/). -_Last updated on November 16, 2022_ +_Last updated on April 10, 2023_ [22]: {{site.baseurl}}/user_guide/data_and_analytics/custom_data/custom_events/#custom-event-properties [23]: {{site.baseurl}}/developer_guide/platform_integration_guides/ios/analytics/tracking_custom_events/ diff --git a/_docs/_help/help_articles/campaigns_and_canvas/using_event_logging.md b/_docs/_help/help_articles/campaigns_and_canvas/using_event_logging.md index 646e1137ac5..b0f60f19ff3 100644 --- a/_docs/_help/help_articles/campaigns_and_canvas/using_event_logging.md +++ b/_docs/_help/help_articles/campaigns_and_canvas/using_event_logging.md @@ -8,15 +8,9 @@ description: "This help article describes how to use event logging to troublesho # Using event logging -The [event user log][1] helps troubleshoot issues with your Braze integration. Two particularly helpful steps are setting up: -* [An anonymous profile](#setting-up-an-anonymous-profile) -* [Event logging](#using-event-logging) +To help troubleshoot issues with your Braze integration, you can set up an anonymous user profile and an [event user log][1]. For steps on how to set up an anonymous profile, refer to [Adding test users][2]. -## Setting up an anonymous profile - -To set up an anonymous profile, check out this article on [adding test users][2]. - -## Using event logging +## About logging Use event logging to test what behavior looks like for an anonymous user. This can be particularly helpful to identify the user ID if the app being tested doesn't collect email. You can use Braze and your device's IP address to add that device as a test user. diff --git a/_docs/_help/help_articles/data/blocklisting_deletion.md b/_docs/_help/help_articles/data/blocklisting_deletion.md index 88648ae24a0..a185a67e4ab 100644 --- a/_docs/_help/help_articles/data/blocklisting_deletion.md +++ b/_docs/_help/help_articles/data/blocklisting_deletion.md @@ -1,7 +1,7 @@ --- nav_title: Difference Between Blocklisting and Deletion article_title: Difference Between Blocklisting and Deletion -page_order: 0 +page_order: 2 page_type: solution description: "This help article walks you through the difference between attribute blocklisting and deletion." @@ -9,13 +9,15 @@ description: "This help article walks you through the difference between attribu # Difference between blocklisting and deleting -The difference between blocklisting and deletion are as follows: -- Blocklisting: If custom attributes, events, or purchases are blocklisted, they will remain on the user profile, but no new requests for the attribute will be processed. -- Deletion: If custom attributes, events, or purchases are deleted, the data will be removed, but Braze will still accept new incoming requests for that attribute if it is still tracked via the SDK or uploaded via the API or CSV. +To understand the difference between blocklisting an deleting attributes in Braze, let's review the results of each action: + +- **Blocklisting:** If custom attributes, events, or purchases are blocklisted, they will remain on the user profile, but no new requests for the attribute will be processed. +- **Deletion:** If custom attributes, events, or purchases are deleted, the data will be removed. However, Braze will still accept new incoming requests for that attribute if it's still tracked via the SDK or uploaded via API or CSV. ## Which should I do? -To accomplish blocklisting, Braze will have to send the blocklisting info down to each user's device, and it will be a data-intensive operation, which we ideally try to avoid. Also, if the list is too large (>100 attributes, events, or purchases), your app can begin to slow down. If you are not planning to send attributes to Braze anymore, the deletion route would be the recommended approach. +To accomplish blocklisting, Braze will have to send the blocklisting info down to each user's device, and it will be a data-intensive operation, which we ideally try to avoid. Also, if the list is too large (> 100 attributes, events, or purchases), your app can begin to slow down. -Regardless of your route, the custom attributes, events, and purchases you wish to remove will no longer appear on the **Manage App Group** page, which removes them as segment filters. User-level data will remain on the profiles. +If you aren't planning to send attributes to Braze anymore, the deletion route would be the recommended approach. +Regardless of your route, the custom attributes, events, and purchases you wish to remove will no longer appear on the **Manage App Group** page, which removes them as segment filters. User-level data will remain on the profiles. \ No newline at end of file diff --git a/_docs/_help/help_articles/data/change_custom_data_type.md b/_docs/_help/help_articles/data/change_custom_data_type.md index a5ce08ecb67..d4d57c757f6 100644 --- a/_docs/_help/help_articles/data/change_custom_data_type.md +++ b/_docs/_help/help_articles/data/change_custom_data_type.md @@ -1,7 +1,7 @@ --- nav_title: Changing Custom Attribute or Event Data Type article_title: Changing Custom Attribute or Event Data Type -page_order: 0 +page_order: 1 page_type: solution description: "This help article walks you through how to change the data type of a custom attribute or custom event, and the implications of doing so." @@ -13,11 +13,11 @@ To change the data type of a custom attribute or event, from the Braze dashboard ![Custom Attributes tab to edit attribute or data type][1] -If you must change the data type of a custom attribute or event (for example, from a `date` to a `string`), consider the following: +If you must change the data type of a custom attribute or event (for example, changing `time` to `string`), consider the following: - Relevant filters in segments, campaigns, Canvases, or other locations using the changed attribute or event are not automatically updated. Before you can modify attributes, you must remove the filter or triggers that reference them. - User data will not be retroactively updated. If the changed attribute was on a user profile prior to the data type change, then that value will still be the old data type. This can cause users to fall out of the segments that contain the changed attribute. The filter will actively look for the new data type, but if a profile still has the previous data type, that user will now be excluded from the segment. These users must be updated to fall back into the proper segments. You can do this with the [`users/track` endpoint]({{site.baseurl}}/api/endpoints/user_data/post_user_track/). -- New data will not be accepted if it is not the new data type. For example, an API call to the `users/track` endpoint that contains the previous data type for a changed attribute will not be accepted. You must call the new data type. +- New data will not be accepted if it's not the new data type. For example, an API call to the `users/track` endpoint that contains the previous data type for a changed attribute will not be accepted. You must call the new data type. _Last updated on May 5, 2021_ diff --git a/_docs/_help/help_articles/data/dispatch_id.md b/_docs/_help/help_articles/data/dispatch_id.md index 125eba2291d..0d01a81cd2a 100644 --- a/_docs/_help/help_articles/data/dispatch_id.md +++ b/_docs/_help/help_articles/data/dispatch_id.md @@ -1,50 +1,48 @@ --- nav_title: Dispatch ID Behavior article_title: Dispatch ID Behavior -page_order: 1 +page_order: 0 page_type: solution -description: "This help article covers dispatch ID behavior, including it's usage, implications, and limitations." +description: "This help article covers dispatch ID behavior, including its usage, implications, and limitations." --- # Dispatch ID behavior -A `dispatch_id` is the ID of the message dispatch—a unique ID for each "transmission" sent from Braze. Users who are sent a scheduled message get the same `dispatch_id`, while action-based or API-triggered messages will receive a unique `dispatch_id` per user. +A `dispatch_id` is the ID of the message dispatch—a unique ID for each "transmission" sent from Braze. Users who are sent a scheduled message receive the same `dispatch_id`, while action-based or API-triggered messages will receive a unique `dispatch_id` per user. {% alert important %} -Note that `dispatch_id`s are per user, per campaign for triggered (action-based or API-triggered) messages. +Note that dispatch IDs are per user, per campaign for triggered (action-based or API-triggered) messages. {% endalert %} -This can result in two different users having different `dispatch_id`s for a single campaign if messages were sent at two different times. This is often because the API requests were made separately. If both users were in the same campaign audience in a single send, their `dispatch_id`s would be the same. +This can result in two different users having different dispatch IDs for a single campaign if messages were sent at two different times. This is often because the API requests were made separately. If both users were in the same campaign audience in a single send, their dispatch IDs would be the same. ## Dispatch ID behavior in campaigns -Scheduled campaign messages get the same `dispatch_id`. Action-based or API-triggered campaign messages will get a unique `dispatch_id` per user. For example, two users in your scheduled campaign audience will have the same `dispatch_id`. However, two users in the audience of an API-triggered campaign will have different `dispatch_id`s. +Scheduled campaign messages get the same `dispatch_id`. Action-based or API-triggered campaign messages will get a unique `dispatch_id` per user. For example, two users in your scheduled campaign audience will have the same `dispatch_id`. However, two users in the audience of an API-triggered campaign will have different dispatch IDs. Multichannel campaigns will have the same behavior as described for their delivery type. {% alert warning %} -A `dispatch_id` is generated randomly for all Canvas Steps because Braze treats Canvas Steps as triggered events, even when they are "scheduled". This may result in inconsistencies generating the IDs. Sometimes, a Canvas component will have unique `dispatch_id`s per user per send, or it may have shared `dispatch_id`s across users per send. +A `dispatch_id` is generated randomly for all Canvas steps because Braze treats Canvas steps as triggered events, even when they are "scheduled". This may result in inconsistencies generating the IDs. Sometimes, a Canvas component will have a unique `dispatch_id` per user per send, or it may have shared dispatch IDs across users per send. {% endalert %} ## Template dispatch ID into messages with Liquid -If you want to track the dispatch of a message from within the message (in a URL, for example), you can template in the `dispatch_id`. You can find the formatting for this in our list of Supported Personalization Tags, under [Canvas Attributes]({{site.baseurl}}/user_guide/personalization_and_dynamic_content/liquid/supported_personalization_tags/). +If you want to track the dispatch of a message from within the message (in a URL, for example), you can template in the `dispatch_id`. You can find the formatting for this under Canvas Attributes in our list of [supported personalization tags]({{site.baseurl}}/user_guide/personalization_and_dynamic_content/liquid/supported_personalization_tags/). This behaves just like `api_id`, in that since the `api_id` isn't available at campaign creation, it is templated in as a placeholder and will preview as `dispatch_id_for_unsent_campaign`. The ID is generated before the message is sent, and will be included in as send time. {% alert warning %} -Liquid templating of `dispatch_id_for_unsent_campaign` does not work with in-app messages, since in-app messages don't have a `dispatch_id`. +Liquid templating of `dispatch_id_for_unsent_campaign` does not work with in-app messages since in-app messages don't have a `dispatch_id`. {% endalert %} ## Dispatch ID Currents field for email -In the effort to continue enhancing our Currents capabilities, we're adding `dispatch_id` as a field to Currents email events across all connector types. - -The `dispatch_id` is the unique ID generated for each transmission, or dispatch, sent from the Braze platform. +In the effort to continue enhancing our Currents capabilities, `dispatch_id` is also a field in Currents email events across all connector types. The `dispatch_id` is the unique ID generated for each transmission, or dispatch, sent from the Braze platform. While all customers who are sent a scheduled message get the same `dispatch_id`, customers who receive either action-based or API-triggered messages will get a unique `dispatch_id` per message. The `dispatch_id` field enables you to identify which instance of a recurring campaign is responsible for conversion, thus equipping you with more insights and information on which types of campaigns are helping push the needle on your business goals. -You can use `dispatch_id` as a [Personalization Tag]({{site.baseurl}}/user_guide/personalization_and_dynamic_content/liquid/supported_personalization_tags/#supported-personalization-tags), in [Message Engagement Events]({{site.baseurl}}/user_guide/data_and_analytics/braze_currents/message_engagement_events/), or when you use [Segment]({{site.baseurl}}/partners/data_and_infrastructure_agility/customer_data_platform/segment_for_currents/#integration-details), [Mixpanel]({{site.baseurl}}/partners/insights/behavioral_analytics/mixpanel_for_currents/#email-events), or [Amplitude]({{site.baseurl}}/partners/data_and_infrastructure_agility/analytics/amplitude/amplitude_for_currents/) for Currents. +You can use `dispatch_id` as a [personalization tag]({{site.baseurl}}/user_guide/personalization_and_dynamic_content/liquid/supported_personalization_tags/#supported-personalization-tags), in [message engagement events]({{site.baseurl}}/user_guide/data_and_analytics/braze_currents/message_engagement_events/), or when you use [Segment]({{site.baseurl}}/partners/data_and_infrastructure_agility/customer_data_platform/segment_for_currents/#integration-details), [Mixpanel]({{site.baseurl}}/partners/insights/behavioral_analytics/mixpanel_for_currents/#email-events), or [Amplitude]({{site.baseurl}}/partners/data_and_infrastructure_agility/analytics/amplitude/amplitude_for_currents/) for Currents. _Last updated on July 15, 2021_ diff --git a/_docs/_help/help_articles/email/email_bounces.md b/_docs/_help/help_articles/email/email_bounces.md index e8f7a77480e..4b8bb7bb26b 100644 --- a/_docs/_help/help_articles/email/email_bounces.md +++ b/_docs/_help/help_articles/email/email_bounces.md @@ -9,24 +9,22 @@ channel: email # Email bounces -What do you do when the message from your email campaign is bounced back from your users' email addresses? First, let's define and troubleshoot the two types of email bounces: -- Hard bounces -- Soft bounces +What do you do when the message from your email campaign is bounced back from your users' email addresses? First, let's define and troubleshoot the two types of email bounces: hard bounces and soft bounces. ## Hard bounces -When an email message hard bounces, the email address is either invalid or does not exist. When this occurs, Braze marks the email address as invalid but does not update the user's [subscription status][1]. At this point, Braze will not attempt to send messages to email addresses marked as invalid. +When an email message hard bounces, the email address is either invalid or does not exist. When this occurs, Braze marks the email address as invalid but does not update the user's [subscription status][1]. At this point, Braze will not attempt to send messages to these email addresses marked as invalid. ## Soft bounces -Soft bounces occur when your recipient's email address is valid or when the email message reaches the recipient's email server, but the message was rejected for a temporary issue. These temporary issues can include when: +Soft bounces occur when your recipient's email address is valid or when the email message reaches the recipient's email server, but the message was rejected for a temporary issue. These temporary issues may occur when: - Your recipient's inbox is full - The message is too large for your recipient's inbox - An email server was down -While soft bounces aren't tracked in your campaign analytics, you can monitor the soft bounces in the **Message Activity Log** in the **Developer** console on the Braze dashboard. Here, you can also see the reason for the soft bounces and understand possible discrepancies between the "sends" and "deliveries" for your email campaigns. +While soft bounces aren't tracked in your campaign analytics, you can monitor the soft bounces in the **Message Activity Log** tab in the **Developer Console**. Here, you can also see the reason for the soft bounces and understand possible discrepancies between the "sends" and "deliveries" for your email campaigns. -To learn more about managing your email subscriptions and campaign, check out [best practices for email][2]! +To learn more about managing your email subscriptions and campaign, check out [Best practices for email][2]. Still need help? Open a [support ticket]({{site.baseurl}}/braze_support/). diff --git a/_docs/_help/help_articles/push/push_error_codes.md b/_docs/_help/help_articles/push/push_error_codes.md index f07eb0fbf95..2181988cfbd 100644 --- a/_docs/_help/help_articles/push/push_error_codes.md +++ b/_docs/_help/help_articles/push/push_error_codes.md @@ -1,7 +1,7 @@ --- nav_title: Common Push Error Messages article_title: Common Push Error Messages -page_order: 0 +page_order: 2 page_type: solution description: "This help article covers common push-related error messages for iOS and Android, and walks you through potential solutions." diff --git a/_docs/_help/help_articles/push/push_token_migration.md b/_docs/_help/help_articles/push/push_token_migration.md index c7f8e32eb90..723b9e28575 100644 --- a/_docs/_help/help_articles/push/push_token_migration.md +++ b/_docs/_help/help_articles/push/push_token_migration.md @@ -1,7 +1,7 @@ --- nav_title: Migrating Push Tokens article_title: Migrating Push Tokens -page_order: 2 +page_order: 0 page_type: solution description: "This help article covers how to migrate push tokens so you can continue sending push messages to your users after switching to Braze." diff --git a/_docs/_hidden/archive_docs/android_12.md b/_docs/_hidden/archive_docs/android_12.md index 1400ec640b0..caf5225db70 100644 --- a/_docs/_hidden/archive_docs/android_12.md +++ b/_docs/_hidden/archive_docs/android_12.md @@ -2,6 +2,8 @@ nav_title: Android 12 Upgrade Guide article_title: Android 12 Upgrade Guide page_order: 9 +permalink: "/android_12/" +layout: "dev_guide" hidden: true platform: - Android diff --git a/_docs/_hidden/archive_docs/ios_14.md b/_docs/_hidden/archive_docs/ios_14.md index 7567866880d..d7754397010 100644 --- a/_docs/_hidden/archive_docs/ios_14.md +++ b/_docs/_hidden/archive_docs/ios_14.md @@ -5,6 +5,7 @@ page_order: 7 platform: iOS description: "This reference article covers the iOS 14 SDK update, highlighting changes such as geofences, location targeting, IDFA, and more." hidden: true +permalink: "/ios_14/" --- diff --git a/_docs/_hidden/private_betas/navigation.md b/_docs/_hidden/private_betas/navigation.md index 25edfcaf9fc..621561e1c06 100644 --- a/_docs/_hidden/private_betas/navigation.md +++ b/_docs/_hidden/private_betas/navigation.md @@ -9,27 +9,33 @@ layout: dev_guide > We're updating the Braze navigation to help you create and access your content more quickly and efficiently. To make this transition easier for you and your team, this guide covers what has changed and what you can expect next. -The new Braze navigation features a completely redesigned information architecture (how information is organized, grouped, and presented) to make each part of Braze more findable and understandable. +{% alert important %} +The new navigation is currently in early access and is being tested with a select group of customers. During the early access period, we'll be collecting feedback regularly. You can share feedback directly from the dashboard: when in the new navigation view, expand the **Tour new navigation** button and select **Send feedback**. +{% endalert %} + +![Sidebar of Braze demonstrating the submenu appearing when you hover over a main section.]({% image_buster /assets/img/navigation/sidebar_behavior.gif %}){: style="max-width:50%;float:right;margin-left:15px"} + +The new Braze navigation features a completely redesigned information architecture (how information is organized, grouped, and presented) to make each part of Braze more findable and understandable. + +Features are now organized into intuitive categories that are familiar and relevant to a marketer's workflow in Braze. Hover over a main section in the sidebar to open the submenu and view all available pages in that section. + +Some pages have been renamed to better represent their contents. For a complete list of where features are now located, refer to the **Changes** tab in the [Sidebar](#sidebar) section of this article. -Features are now organized into intuitive categories that are familiar and relevant to a marketer's workflow in Braze. Top-level categories are collapsed by default so you can get a better view of each section at a glance. Some pages have been renamed to better represent their contents. +## Switch to the new navigation Early access participants can turn on the new navigation at any time by selecting **Switch to new nav** in the global header. ![Global header of Braze with a button to switch to the new navigation.]({% image_buster /assets/img/navigation/global_header_switch.png %}){: style="max-width:70%"} -{% alert important %} -The new navigation is currently in early access and is being tested with a select group of customers. During the early access period, we'll be collecting feedback regularly. You can share feedback directly from the dashboard: when in the new navigation view, expand the **Tour new navigation** button and select **Send feedback**. -{% endalert %} - ## What to expect next -The new navigation will be released to all Braze customers in **April 2023**, and will include an updated look and feel that is different from the early access version. +The new navigation will be released to all Braze customers in **May 2023**. You will still be able to switch back and forth between the new and old navigation until **November 2023**. ## What's changed ### App group rename -As part of our navigation and information architecture changes, we have renamed "App Group" to "Workspace". We recognize that the language "App Group" doesn't reflect the way many users onboard, approach, and use the Braze platform. To better reflect the many use cases of Braze, "App Group" is now "Workspace". +As part of our navigation and information architecture changes, we have renamed "app group" to "workspace". We recognize that the language "app group" doesn't reflect the way many users onboard, approach, and use the Braze platform. To better reflect the many use cases of Braze, "app group" is now "workspace". If you're using our updated navigation, this change will appear throughout the platform. @@ -40,14 +46,12 @@ If you're using our updated navigation, this change will appear throughout the p ![]({% image_buster /assets/img/navigation/global_header_new.png %}){: style="border:0"} -1. **Braze logo** - Select to go to your Braze home page. -2. **Page name** - The name of the page you are currently on. -3. **Tour new navigation** - Retake the navigation tour or expand the dropdown to access options for documentation or to send us feedback on the new navigation. +1. **Workspace selector** - The name of the workspace you're currently in. Select this dropdown to change workspaces. +2. **Tour new navigation** - Retake the navigation tour or expand the dropdown to access options for documentation or to send us feedback on the new navigation. +3. **Support** - Check our system status and access links to Braze documentation, Braze Learning, or get help from support. 4. **Community** - Access links to the Braze Bonfire community, our blog, case studies, and the product roadmap. -5. **Support** - Check our system status and access links to Braze documentation, Braze Learning, or get help from support. -6. **Language selector** - Select the language you want to use for Braze. -7. **Your profile** - View your profile, company settings, billing, company users, or sign out. -8. **Administrator icon** - Appears next to your profile if you are an administrator for your company. +5. **Notifications** – View your dashboard notifications. +6. **Your profile** - View your account profile, change the language the dashboard appears in, or sign out. {% endtab %} {% tab Old navigation %} @@ -75,7 +79,7 @@ If you're using our updated navigation, this change will appear throughout the p - **Braze Learning** and **Documentation** are now located here - **Braze Support** is now **Get Help** - Your profile - - **Account Settings** is now **Manage Your Profile** + - **Account Settings** is now **Manage Your Account** - **Subscriptions and Usage** is now **Billing** - **Manage Users** is now **Company Users** @@ -99,7 +103,7 @@ If you're using our updated navigation, this change will appear throughout the p - 1. Workspace selector - See what workspace you're currently in or switch between workspaces.

2. Home - Braze home page. After your initial setup, this is your Overview dashboard.

3. Messaging - Create and manage your campaigns and Canvases, and access a calendar view of your upcoming scheduled messages.

4. Audience - Contains everything related to your users, such as searching or importing users, managing your segments, Global Control Group, subscription groups, and more.

5. Templates - Contains your message templates, Content Blocks, and Media Library.

6. Analytics - Contains your reports, analytics dashboard, and Predictions.

7. Partner Integrations - Contains our technology partner integrations, solutions partners, and data export (Currents).

8. Data Settings - Contains settings related to user data, such as custom user attributes, custom user events, catalogs, products, and more.

9. Settings - Manage your workspace integration, workspace settings, company settings, billing, and more.
+ 1. Home - Braze home page. After your initial setup, this is your Overview dashboard.

2. Messaging - Create and manage your campaigns and Canvases, and access a calendar view of your upcoming scheduled messages.

3. Audience - Contains everything related to your users, such as searching or importing users, managing your segments, Global Control Group, subscription groups, and more.

4. Templates - Contains your message templates, Content Blocks, and Media Library.

5. Analytics - Contains your reports, analytics dashboard, and Predictions.

6. Partner Integrations - Contains our technology partner integrations, solutions partners, and data export (Currents).

7. Data Settings - Contains settings related to user data, such as custom attributes, custom events, catalogs, products, and more.

8. Settings - Manage your workspace integration, Workspace, company settings, billing, and more.
@@ -123,59 +127,65 @@ Top-level categories are now collapsed by default so you can get a better view o The following table lists where each page is located in the new navigation. Some pages have been renamed, and the new name is referenced in the "New location" column. -| Page name | New location | -| ----------------------------- | --------------------------------------------------------------------- | -| API Settings | **Settings** > **Workspace Setup and Testing** > **API Keys** | -| Approval Workflow | **Settings** > **Workspace Settings** > **Approval Workflow** | -| Campaigns | **Messaging** > **Campaigns** | -| Calendar | **Messaging** > **Content Calendar** | -| Canvas | **Messaging** > **Canvas** | -| Catalogs | **Data Settings** > **Catalogs** | -| Connected Content | **Settings** > **Workspace Settings** > **Connected Content** | -| Content Blocks Library | **Templates** > **Content Blocks** | -| Conversions | **Analytics** > **Analytics Dashboards** > **Conversions** | -| Currents | **Partner Integrations** > **Data Export (Currents)** | -| Custom Attributes | **Data Settings** > **Custom User Attributes** | -| Custom Events (report) | **Analytics** > **Reports** > **Custom Events Reports** | -| Custom Events | **Data Settings** > **Custom User Events** | -| Data Feeds | **Data Settings** > **Data Feeds** | -| Developer Console | **Settings** > **Workspace Setup and Testing** | -| Email Performance | **Analytics** > **Analytics Dashboards** > **Email Performance** | -| Email Settings | **Settings** > **Workspace Settings** > **Email Preferences** | -| Email Templates | **Templates** > **Email Templates** | -| Engagement Reports | **Analytics** > **Reports** > **Engagement** | -| Event User Log | **Settings** > **Workspace Setup and Testing** > **Event User Log** | -| Feature Flags | **Audience** > **Feature Flags** | -| Global Control (report) | **Analytics** > **Reports** > **Global Control** | -| Global Control Group Settings | **Audience** > **Global Control Group** | -| In-App Message Templates | **Templates** > **In-App Message Templates** | -| Internal Groups | **Settings** > **Workspace Setup and Testing** > **Internal Groups** | -| Link Templates | **Templates** > **Email Link Templates** | -| Locations | **Audience** > **Locations** | -| Manage Settings | **Settings** > **Workspace Settings** | -| Manage Teams | **Settings** > **Workspace Settings** > **Internal Teams** | -| Media Library | **Templates** > **Media Library** | -| Message Activity Log | **Settings** > **Workspace Setup and Testing** > **Message Activity** | -| News Feed | **Messaging** > **News Feed** | -| Overview | **Home** | -| Predictions | **Analytics** > **Predictions** | -| Products | **Data Settings** > **Products** | -| Promotion Codes | **Data Settings** > **Promotion Codes** | -| Push TTL Settings | **Settings** > **Workspace Settings** > **Push Time-To-Live (TTL)** | -| Report Builder | **Analytics** > **Reports** > **Report Builder** | -| Revenue | **Analytics** > **Reports** > **Revenue** | -| Segments | **Audience** > **Segments** | -| Segment Extensions | **Audience** > **Segment Extensions** | -| Segment Insights | **Analytics** > **Reports** > **Segment Insights** | -| Global Message Settings | **Settings** > **Workspace Settings** > **Message Frequency** | -| SMS Performance | **Analytics** > **Analytics Dashboards** > **SMS Performance** | -| Subscription Group Management | **Audience** > **Subscription** > **Subscription Groups** | -| Subscription Groups | **Audience** > **Subscription** > **Subscription Groups** | -| Tags | **Settings** > **Workspace Settings** > **Tag Management** | -| Technology Partners | **Partner Integrations** > **Technology Partner Integrations** | -| User Import | **Audience** > **Import Users** | -| User Search | **Audience** > **Search Users** | -| Webhook Templates | **Templates** > **Webhook Templates** | +| Page name | New location | +| ----------------------------- | ---------------------------------------------------------------- | +| API Settings | **Settings** > **Setup and Testing** > **API Keys** | +| App Settings | **Settings** > **Setup and Testing** > **App Settings** | +| Approval Workflow | **Settings** > **Workspace** > **Approval Workflow** | +| Billing | **Settings** > **Company** > **Billing** | +| Campaigns | **Messaging** > **Campaigns** | +| Calendar | **Messaging** > **Content Calendar** | +| Canvas | **Messaging** > **Canvas** | +| Catalogs | **Data Settings** > **Catalogs** | +| Company Settings | **Settings** > **Company** > **Admin Settings** | +| Connected Content | **Settings** > **Workspace** > **Connected Content** | +| Content Blocks Library | **Templates** > **Content Blocks** | +| Conversions | **Analytics** > **Analytics Dashboards** > **Conversions** | +| Currents | **Partner Integrations** > **Data Export (Currents)** | +| Custom Attributes | **Data Settings** > **Custom Attributes** | +| Custom Events (report) | **Analytics** > **Reports** > **Custom Events Reports** | +| Custom Events | **Data Settings** > **Custom Events** | +| Data Feeds | **Data Settings** > **Data Feeds** | +| Data Services | **Analytics** > **Analytics Dashboards** > **Data Services** | +| Data Transformation | **Data Settings** > **Data Transformation** | +| Developer Console | **Settings** > **Setup and Testing** | +| Email Performance | **Analytics** > **Analytics Dashboards** > **Email Performance** | +| Email Settings | **Settings** > **Workspace** > **Email Preferences** | +| Email Templates | **Templates** > **Email Templates** | +| Engagement Reports | **Analytics** > **Reports** > **Engagement** | +| Event User Log | **Settings** > **Setup and Testing** > **Event User Log** | +| Feature Flags | **Messaging** > **Feature Flags** | +| Global Control (report) | **Analytics** > **Reports** > **Global Control** | +| Global Control Group Settings | **Audience** > **Global Control Group** | +| In-App Message Templates | **Templates** > **In-App Message Templates** | +| Internal Groups | **Settings** > **Setup and Testing** > **Internal Groups** | +| Link Templates | **Templates** > **Email Link Templates** | +| Locations | **Audience** > **Locations** | +| Manage Settings | **Settings** > **Workspace** | +| Manage Teams | **Settings** > **Workspace** > **Internal Teams** | +| Manage Users | **Settings** > **Company** > **Company Users** | +| Media Library | **Templates** > **Media Library** | +| Message Activity Log | **Settings** > **Setup and Testing** > **Message Activity Log** | +| News Feed | **Messaging** > **News Feed** | +| Overview | **Home** | +| Predictions | **Analytics** > **Predictions** | +| Preference Center | **Audience** > **Subscriptions** > **Preference Center** | +| Products | **Data Settings** > **Products** | +| Promotion Codes | **Data Settings** > **Promotion Codes** | +| Push TTL Settings | **Settings** > **Workspace** > **Push Time-To-Live (TTL)** | +| Report Builder | **Analytics** > **Reports** > **Report Builder** | +| Revenue | **Analytics** > **Reports** > **Revenue** | +| Segments | **Audience** > **Segments** | +| Segment Extensions | **Audience** > **Segment Extensions** | +| Segment Insights | **Analytics** > **Reports** > **Segment Insights** | +| Global Message Settings | **Settings** > **Workspace** > **Frequency Capping Rules** | +| SMS Performance | **Analytics** > **Analytics Dashboards** > **SMS Performance** | +| Subscription Groups | **Audience** > **Subscriptions** > **Subscription Groups** | +| Tags | **Settings** > **Workspace** > **Tag Management** | +| Technology Partners | **Partner Integrations** > **Technology Partners** | +| User Import | **Audience** > **Import Users** | +| User Search | **Audience** > **Search Users** | +| Webhook Templates | **Templates** > **Webhook Templates** | {: .reset-td-br-1 .reset-td-br-2} {% endtab %} diff --git a/_docs/_home/dp-technical-assistance.md b/_docs/_home/dp-technical-assistance.md index ef578fbce69..113464ae428 100644 --- a/_docs/_home/dp-technical-assistance.md +++ b/_docs/_home/dp-technical-assistance.md @@ -4,7 +4,7 @@ article_title: Data Protection Technical Assistance page_order: 10 noindex: false hide_nav: true - +layout: dev_guide page_type: reference description: "This page provides technical instructions to enable you to manage, through the Braze Platform, requests from individuals in relation to their personal data rights." permalink: /dp-technical-assistance/ diff --git a/_docs/_home/styling_test_page.md b/_docs/_home/styling_test_page.md index 07c4ce61e24..3dcb4320f19 100644 --- a/_docs/_home/styling_test_page.md +++ b/_docs/_home/styling_test_page.md @@ -450,7 +450,7 @@ video_source defaults to `youtube` {% raw %} ```yaml -layout: dev_guide_video +layout: featured_video video_id: [video_id] video_source: youtube ``` diff --git a/_docs/_partners/data_and_infrastructure_agility/ab_testing/phrasee/phrasee_react.md b/_docs/_partners/data_and_infrastructure_agility/ab_testing/phrasee/phrasee_react.md index ddb0e48bf1e..03c594da245 100644 --- a/_docs/_partners/data_and_infrastructure_agility/ab_testing/phrasee/phrasee_react.md +++ b/_docs/_partners/data_and_infrastructure_agility/ab_testing/phrasee/phrasee_react.md @@ -12,7 +12,7 @@ search_tag: Partner > [Phrasee][1] brings together artificial intelligence, computational linguistics, and a spirit of customer-centricity to help deploy brand language, at scale, across channels that are customized to your brand voice. -Phrasee [React](https://phrasee.co/platform/react/), powered by Phrasee X, leverages Braze Currents and Connected Content to collect click tracking information from your subscribers via webhooks. Phrasee then ties those events back to your language variants for real-time language optimization. +Phrasee React, powered by Phrasee X, leverages Braze Currents and Connected Content to collect click tracking information from your subscribers via webhooks. Phrasee then ties those events back to your language variants for real-time language optimization. ## Prerequisites diff --git a/_docs/_partners/data_and_infrastructure_agility/analytics/amplitude/amplitude_for_currents.md b/_docs/_partners/data_and_infrastructure_agility/analytics/amplitude/amplitude_for_currents.md index 5f0d3c25c3e..47d5bd3aa0c 100644 --- a/_docs/_partners/data_and_infrastructure_agility/analytics/amplitude/amplitude_for_currents.md +++ b/_docs/_partners/data_and_infrastructure_agility/analytics/amplitude/amplitude_for_currents.md @@ -32,7 +32,7 @@ Braze will only send event data for users who have their `external_user_id` set amplitude.setDeviceId(Apppboy.getInstance(context).getDeviceId();) ``` -You can export two types of events to Amplitude: [Message Engagement Events](#message-engagement-events) consisting of the Braze Events directly related to message sending, and [Customer Behavior Events](#customer-berhavior-events), including other app or website activity such as sessions, custom events, and purchases tracked through the platform. All regular events are prefixed with `[Appboy]`, and all custom events are prefixed with `[Appboy] [Custom Event]`. Custom event and purchase event properties are prefixed with `[Custom event property]` and `[Purchase property]`, respectively. +You can export two types of events to Amplitude: [Message Engagement Events](#supported-currents-events) consisting of the Braze Events directly related to message sending, and [Customer Behavior Events](#supported-currents-events), including other app or website activity such as sessions, custom events, and purchases tracked through the platform. All regular events are prefixed with `[Appboy]`, and all custom events are prefixed with `[Appboy] [Custom Event]`. Custom event and purchase event properties are prefixed with `[Custom event property]` and `[Purchase property]`, respectively. All cohorts named and imported into Braze will be prefixed with `[Amplitude]` and suffixed with their `cohort_id`. This means that a cohort named "TEST_COHORT" with the `cohort_id` "abcd1234" will be titled `[Amplitude] TEST_COHORT: abcd1234` in Braze filters. diff --git a/_docs/_partners/data_and_infrastructure_agility/analytics/mixpanel_for_currents.md b/_docs/_partners/data_and_infrastructure_agility/analytics/mixpanel_for_currents.md index 130e3407992..1197c996f35 100644 --- a/_docs/_partners/data_and_infrastructure_agility/analytics/mixpanel_for_currents.md +++ b/_docs/_partners/data_and_infrastructure_agility/analytics/mixpanel_for_currents.md @@ -62,7 +62,7 @@ Once saved, you can reference this segment during Canvas or campaign creation in A full list of the events that can be exported from Braze to Mixpanel can be found below. All events sent to Mixpanel will include the user's `external_user_id` as the Mixpanel Distinct ID. At this time, Braze does not send event data for users who do not have their `external_user_id` set. -You can export two types of events to Mixpanel: [Message Engagement Events](#message-engagement-events) consisting of the Braze Events directly related to message sending, and [Customer Behavior Events](#customer-behavior-events) including other app or website activity such as sessions, custom events, and purchases tracked through the platform. All custom events are prefixed with `[Braze Custom Event]`. Custom event properties and purchase event properties are prefixed with `[Custom event property]` and `[Purchase property]`, respectively. +You can export two types of events to Mixpanel: [Message Engagement Events](#supported-currents-events) consisting of the Braze Events directly related to message sending, and [Customer Behavior Events](#supported-currents-events) including other app or website activity such as sessions, custom events, and purchases tracked through the platform. All custom events are prefixed with `[Braze Custom Event]`. Custom event properties and purchase event properties are prefixed with `[Custom event property]` and `[Purchase property]`, respectively. Contact your account manager or open a [support ticket][support] if you need access to additional event entitlements. diff --git a/_docs/_partners/data_and_infrastructure_agility/cohort_import/storyly.md b/_docs/_partners/data_and_infrastructure_agility/cohort_import/storyly.md index 0084788b09e..d2561773e6d 100644 --- a/_docs/_partners/data_and_infrastructure_agility/cohort_import/storyly.md +++ b/_docs/_partners/data_and_infrastructure_agility/cohort_import/storyly.md @@ -43,7 +43,7 @@ The Braze Storyly integration is explained in the following video: Make sure that your Storyly integration holds custom parameters. These parameters will be matched to the Braze `external id` user property. Custom parameter implementation is explained here for [iOS](https://integration.storyly.io/ios/personalization-customaudience.html), [Android](https://integration.storyly.io/android/personalization-customaudience.html), [React Native](https://integration.storyly.io/react-native/personalization-customaudience.html), [Flutter](https://integration.storyly.io/flutter/personalization-customaudience.html), and [Web](https://integration.storyly.io/web/personalization-customaudience.html) . -You can also refer to the [Storyly](https://help.storyly.io/en/articles/6354805-connect-your-braze-audiences-with-storyly) documentation for more information. +You can also refer to the [Storyly](https://docs.storyly.io/page/connect-your-braze-audiences-with-storyly) documentation for more information. ### Step 1: Set the integration on Storyly dashboard diff --git a/_docs/_partners/data_and_infrastructure_agility/crash_analytics/apteligent.md b/_docs/_partners/data_and_infrastructure_agility/crash_analytics/apteligent.md index 4397e8cab96..d8912bfc8b6 100644 --- a/_docs/_partners/data_and_infrastructure_agility/crash_analytics/apteligent.md +++ b/_docs/_partners/data_and_infrastructure_agility/crash_analytics/apteligent.md @@ -10,7 +10,7 @@ search_tag: Partner # Apteligent -> [Apteligent](https://kb.vmtestdrive.com/hc/en-us/articles/360001544114-Apteligent-by-VMware-Walkthrough) is a mobile application performance platform providing tools and insights for developers and product managers. +> [Apteligent](https://www.vmware.com/products/workspace-one/intelligence-consumer-apps.html) is a mobile application performance platform providing tools and insights for developers and product managers. The Braze and Apteligent integration provides detailed iOS crash reporting, allowing you to log critical data into your existing Braze solution as well as segment, understand, and engage with users who have experienced application crashes. @@ -18,7 +18,7 @@ The Braze and Apteligent integration provides detailed iOS crash reporting, allo | Requirement | Description | |---|---| -| TestDrive account | A [TestDrive account](https://kb.vmtestdrive.com/hc/en-us/articles/360001372254-Getting-Started-with-TestDrive) is required to take advantage of this partnership. | +| TestDrive account | A TestDrive account is required to take advantage of this partnership. | {: .reset-td-br-1 .reset-td-br-2} {% alert warning %} diff --git a/_docs/_partners/data_and_infrastructure_agility/customer_data_platform/mParticle/mparticle.md b/_docs/_partners/data_and_infrastructure_agility/customer_data_platform/mParticle/mparticle.md index 49ccc950d84..b23154317ab 100644 --- a/_docs/_partners/data_and_infrastructure_agility/customer_data_platform/mParticle/mparticle.md +++ b/_docs/_partners/data_and_infrastructure_agility/customer_data_platform/mParticle/mparticle.md @@ -16,8 +16,8 @@ search_tag: Partner > mParticle's customer data platform empowers you to do more with your data. Sophisticated marketers use mParticle to orchestrate data across their entire growth stack, enabling them to win in key customer journey moments. The Braze and mParticle integration allows you to seamlessly control the flow of information between the two systems: -- [Sync mParticle audiences to Braze](#cohort-import) for Braze campaign and Canvas segmentation. -- [Share data across the two platforms](#data-import). This can be done through the mParticle kit integration and the server-to-server integration. +- Sync mParticle audiences to Braze for Braze campaign and Canvas segmentation. +- Share data across the two platforms. This can be done through the mParticle kit integration and the server-to-server integration. - [Send Braze user interaction to mParticle through Currents]({{site.baseurl}}/partners/data_and_infrastructure_agility/customer_data_platform/mParticle/mparticle_for_currents/), making it actionable across the entire growth stack. ## Prerequisites diff --git a/_docs/_partners/data_and_infrastructure_agility/customer_data_platform/rudderstack/rudderstack.md b/_docs/_partners/data_and_infrastructure_agility/customer_data_platform/rudderstack/rudderstack.md index bca7ae882d9..ade3d069b63 100644 --- a/_docs/_partners/data_and_infrastructure_agility/customer_data_platform/rudderstack/rudderstack.md +++ b/_docs/_partners/data_and_infrastructure_agility/customer_data_platform/rudderstack/rudderstack.md @@ -96,8 +96,8 @@ RudderStack's [`group` method](https://rudderstack.com/docs/destinations/marketi [0]: {% image_buster /assets/img/RudderStack/braze_settings.png %} [1]: https://rudderstack.com/ -[3]: https://docs.rudderstack.com/how-to-guides/adding-source-and-destination-rudderstack +[3]: https://www.rudderstack.com/docs/dashboard-guides/sources/adding-source-and-destination-rudderstack [15]: {{site.baseurl}}/user_guide/administrative/access_braze/braze_instances/ -[20]: https://docs.rudderstack.com/rudderstack-api-spec/rudderstack-ecommerce-events-specification +[20]: https://www.rudderstack.com/docs/event-spec/ecommerce-events-spec/ [21]: {{site.baseurl}}/user_guide/data_and_analytics/export_braze_data/exporting_revenue_data/#revenue-data [22]: https://www.rudderstack.com/docs/destinations/streaming-destinations/braze/#getting-started diff --git a/_docs/_partners/data_and_infrastructure_agility/customer_data_platform/segment/segment.md b/_docs/_partners/data_and_infrastructure_agility/customer_data_platform/segment/segment.md index d93a7faf47e..e6ad573dab0 100644 --- a/_docs/_partners/data_and_infrastructure_agility/customer_data_platform/segment/segment.md +++ b/_docs/_partners/data_and_infrastructure_agility/customer_data_platform/segment/segment.md @@ -125,6 +125,22 @@ Within the setup UI, choose **Actions** as your destination framework and **Devi ![]({% image_buster /assets/img/segment/website.png %}) +{% endtab %} +{% tab React Native %} +The source code for the [React Native Braze plugin](https://github.com/segmentio/analytics-react-native/tree/master/packages/plugins/plugin-braze) is maintained by Segment and is updated regularly to reflect new Braze SDK releases. + +When connecting a React Native Segment Source to Braze, you must set up a source and destination per operating system. For example, setting up an iOS destination and an Android destination. + +Within your app codebase, conditionally initialize the Segment SDK by device type, using the respective source write key associated with each app. + +When a push token is registered from a device and sent to Braze, it is associated with the app identifier used when initializing the SDK. The device-type conditional initialization ensures that any push tokens sent to Braze are associated with the relevant app. + +{% alert important %} +If the React Native app initializes Braze with the same Braze app identifier for all devices, then all React Native users will be considered Android or iOS users in Braze, and all push tokens will be associated with that operating system. +{% endalert %} + +To set up Braze as a device-mode destination for each source, choose **Classic** as the destination framework and click **Save**. + {% endtab %} {% endtabs %} @@ -319,7 +335,7 @@ If you use a server-to-server integration (cloud-mode), filters related to autom ## User deletion and suppression -If you need to delete or suppress users, note that [Segment.io's user delete feature](https://segment.com/docs/privacy/user-deletion-and-suppression/#which-destinations-can-i-send-deletion-requests-to) **is** mapped to the Braze [users/delete endpoint]({{site.baseurl}}/api/endpoints/user_data/#user-delete-endpoint). Note that verification of these deletions could take up to 30 days. +If you need to delete or suppress users, note that [Segment.io's user delete feature](https://segment.com/docs/privacy/user-deletion-and-suppression/#which-destinations-can-i-send-deletion-requests-to) **is** mapped to the Braze [/users/delete endpoint]({{site.baseurl}}/api/endpoints/user_data/post_user_delete/). Note that verification of these deletions could take up to 30 days. You must ensure that you select a common user identifier between Braze and Segment.io (as in `external_id`). Once you've initiated a deletion request with Segment.io, you can view the status within the deletion requests tab in your Segment.io dashboard. @@ -327,7 +343,7 @@ You must ensure that you select a common user identifier between Braze and Segme Segment.io provides a service to clients to "replay" all historical data to a new technology partner. New Braze customers who want to import all relevant historical data can do so through Segment.io. Talk to your Segment.io rep if this is something you are interested in. -Segment.io will connect to our [/users/track endpoint]({{site.baseurl}}/api/endpoints/user_data/#user-track-endpoint) to import user data into Braze on your behalf. +Segment.io will connect to our [/users/track endpoint]({{site.baseurl}}/api/endpoints/user_data/post_user_track/) to import user data into Braze on your behalf. {% alert important %} All identifiers supported in the Cloud Mode Actions destination are supported as part of Segment.io Replays. @@ -400,7 +416,7 @@ When passing user attribute data, check that you only pass values for attributes [24]: {{site.baseurl}}/user_guide/data_and_analytics/creating_a_formula/#creating-a-formula [25]: {{site.baseurl}}/user_guide/data_and_analytics/user_data_collection/#user-data-collection [26]: {{site.baseurl}}/user_guide/engagement_tools/segments/creating_a_segment/#creating-a-segment -[27]: {{site.baseurl}}/user_guide/data_and_analytics/reporting/understanding_your_app_usage_data/ +[27]: {{site.baseurl}}/user_guide/data_and_analytics/analytics/understanding_your_app_usage_data/ [28]: {{site.baseurl}}/user_guide/data_and_analytics/export_braze_data/exporting_revenue_data/#revenue-data [34]: {{site.baseurl}}/developer_guide/platform_integration_guides/ios/initial_sdk_setup/ [35]: {{site.baseurl}}/developer_guide/platform_integration_guides/android/initial_sdk_setup/android_sdk_integration/ diff --git a/_docs/_partners/data_and_infrastructure_agility/customer_data_platform/segment/segment_engage.md b/_docs/_partners/data_and_infrastructure_agility/customer_data_platform/segment/segment_engage.md index 2c1ad1949d6..62aea2cc619 100644 --- a/_docs/_partners/data_and_infrastructure_agility/customer_data_platform/segment/segment_engage.md +++ b/_docs/_partners/data_and_infrastructure_agility/customer_data_platform/segment/segment_engage.md @@ -16,17 +16,42 @@ search_tag: Partner > [Segment.io](https://segment.com) is a customer data platform that helps you collect, clean, and activate your customer data. This reference article will give an overview of the connection between [Braze and Segment.io Engage](https://segment.com/docs/destinations/braze/#Engage), as well as describe requirements and processes for proper implementation and usage. -The Braze and Segment.io integration allows you to use [Engage](https://segment.com/docs/engage/), Segment.io's built-in audience builder, to create segments of users based on data you have already collected across various sources. These users will then be assigned [custom attributes]({{site.baseurl}}/user_guide/data_and_analytics/custom_data/custom_attributes/) or [custom events]({{site.baseurl}}/user_guide/data_and_analytics/custom_data/custom_events/#custom-events) that can be used to create Braze segments to use in campaign and Canvas retargeting. +The Braze and Segment.io integration allows you to use [Engage](https://segment.com/docs/engage/), Segment.io’s built-in audience builder, to create segments of users based on data you have already collected across various sources. These audiences will then be synced to Braze as a cohort, or denoted on the user profile through [custom attributes]({{site.baseurl}}/user_guide/data_and_analytics/custom_data/custom_attributes/) or [custom events]({{site.baseurl}}/user_guide/data_and_analytics/custom_data/custom_events/#custom-events) that can be used to create Braze segments to use in campaign and Canvas retargeting. ## Prerequisites | Requirement | Description | | ----------- | ----------- | | Segment.io account | A [Segment.io account](https://app.segment.com/login) is required to take advantage of this partnership. | -| Braze destination | You must have already [set up Braze as a destination]({{site.baseurl}}/partners/data_and_infrastructure_agility/customer_data_platform/segment/segment/#connection-settings/) in your Segment.io integration.

This includes providing the correct Braze data center and REST API key in your [connection settings]({{site.baseurl}}/partners/data_and_infrastructure_agility/customer_data_platform/segment/segment/#connection-settings). | +| Braze Cloud destination | You must have already [set up Braze as a destination]({{site.baseurl}}/partners/data_and_infrastructure_agility/customer_data_platform/segment/segment/#connection-settings/) in your Segment.io integration.

This includes providing the correct Braze data center and REST API key in your [connection settings]({{site.baseurl}}/partners/data_and_infrastructure_agility/customer_data_platform/segment/segment/#connection-settings). | +| Braze data import key | To sync Engage audiences to Braze as cohorts, you must generate a Data Import key.

Cohort import is in early access, contact your Braze customer success manager to get access to this feature. | + {: .reset-td-br-1 .reset-td-br-2} -## Integration +## Cohorts Destination integration + +{% alert note %} +The Cohorts Destination is currently in early access. To get access to this feature, reach out to your Braze customer team. +{% endalert %} + +### Step 1: Create an Engage audience +1. In Segment.io, navigate to the **Audiences** tab in Engage, and click **New**. +2. Create your audience. A lightning bolt in the top corner of the page will indicate if the audience updates in real-time. +3. Next, select Braze as your destination. +4. Preview your audience by clicking **Review & Create**. By default, Segment.io queries all historical data to set the current value of the computed trait and audience. To omit this data, uncheck **Historical Backfill**. + +### Step 2: Capture your cohort data import key +In Braze, navigate to **Technology Partners** and select **Segment**. Here, you will find your REST endpoint and generate your Braze data import key. Once generated, you can create a new key or invalidate an existing one. + +### Step 3: Connect the Braze Cohorts Destination +Follow [Segment’s instructions](https://segment.com/docs/connections/destinations/catalog/actions-braze-cohorts/#getting-started) on setting up the Cohorts Destination to sync your Engage audiences as cohorts to Braze. + +### Step 4: Create a Braze segment from the Engage audience +In Braze, navigate to **Segments**, create a new segment, and select **Segment Cohorts** as your filter. From here, you can choose which Segment cohort you wish to include. Once created, you can select your Segment cohort segment as an audience filter when creating a campaign or Canvas. + +![][1] + +## Cloud Mode integration ### Step 1: Create a Segment.io computed trait or audience @@ -87,4 +112,6 @@ Segment.io's dashboard provides a "Debugger" feature that allows customers to te This feature connects to Braze's [users/track endpoint]({{site.baseurl}}/api/endpoints/user_data/post_user_track/), meaning that it can only be used for identified users (users who already have a user ID for their Braze user profile). -This will not work for a side-by-side Braze integration. No server data will go through if you haven't input the correct Braze REST API information. \ No newline at end of file +This will not work for a side-by-side Braze integration. No server data will go through if you haven't input the correct Braze REST API information. + +[1]: {% image_buster /assets/img/segment/segment3.png %} \ No newline at end of file diff --git a/_docs/_partners/data_and_infrastructure_agility/support/pypestream.md b/_docs/_partners/data_and_infrastructure_agility/support/pypestream.md index 35f6ba3a02f..0c2e82e741a 100644 --- a/_docs/_partners/data_and_infrastructure_agility/support/pypestream.md +++ b/_docs/_partners/data_and_infrastructure_agility/support/pypestream.md @@ -21,7 +21,7 @@ The Braze and Pypestream integration allows you to seamlessly orchestrate the en |---|---| | Pypestream account | A [Pypestream account](https://www.pypestream.com/contact-us/) is required to take advantage of this partnership.

Once subscribed, the Pypestream team will help you set up your dedicated environment to begin building your conversational AI solution to integrate with Braze. | | Braze REST API key | A Braze REST API key with `users.track` permissions.

This can be created within the **Braze Dashboard > Developer Console > REST API Key > Create New API Key**. | -| Braze REST endpoint | Your REST endpoint URL. Your endpoint will depend on the [Braze URL for your instance]({site.baseurl}}/api/basics/?redirected=true). | +| Braze REST endpoint | Your REST endpoint URL. Your endpoint will depend on the [Braze URL for your instance]({{site.baseurl}}/api/basics/). | {: .reset-td-br-1 .reset-td-br-2} ## Use cases diff --git a/_docs/_partners/data_and_infrastructure_agility/workflow_automation/hightouch/hightouch_personalization_api.md b/_docs/_partners/data_and_infrastructure_agility/workflow_automation/hightouch/hightouch_personalization_api.md index 2bb219eb3c9..150fd82a41a 100644 --- a/_docs/_partners/data_and_infrastructure_agility/workflow_automation/hightouch/hightouch_personalization_api.md +++ b/_docs/_partners/data_and_infrastructure_agility/workflow_automation/hightouch/hightouch_personalization_api.md @@ -87,7 +87,7 @@ Follow these instructions to complete both: 4. Enter an alphanumeric collection name. Collections are conceptually similar to database tables. Each should represent a particular data type, such as customers or invoices. Collection names must be alphanumeric and will become part of your Personalization API endpoint.

5. Next, specify which column from your model should serve as the primary index for record lookups. This field must uniquely identify each record in the collection and is often the same as your model's primary key. The personalization API supports lookups on multiple indices. For example, you might want to retrieve customer profiles using `user_id`, `anonymous_id`, or `email_address`. To enable multiple indices, contact [Hightouch support](mailto:friends@hightouch.com).

6. Use the field mapper to specify which columns from your model should be included in the API response payload. You can rename these fields and use the advanced mapper to apply transformations using the Liquid template language.

-7. Select the appropriate [delete behavior](www.hightouch.com/docs/destinations/personalization-api#delete-behavior) for your use case.

+7. Select the appropriate [delete behavior](https://www.hightouch.com/docs/destinations/personalization-api#delete-behavior) for your use case.

8. Lastly, click **Continue** and then select a [sync schedule](https://hightouch.com/docs/syncs/schedule-sync-ui). Hightouch will now sync the data in your warehouse to a managed database and expose it via the Personalization API. diff --git a/_docs/_partners/data_and_infrastructure_agility/wrapper_sdks.md b/_docs/_partners/data_and_infrastructure_agility/wrapper_sdks.md index b4ad1e59f4f..4b58932c98a 100644 --- a/_docs/_partners/data_and_infrastructure_agility/wrapper_sdks.md +++ b/_docs/_partners/data_and_infrastructure_agility/wrapper_sdks.md @@ -33,10 +33,10 @@ guide_featured_list: link: /docs/developer_guide/platform_integration_guides/unity/sdk_integration/ios/ image: /assets/img/unity.png - name: Xamarin - link: /docs/developer_guide/platform_integration_guides/xamarin/initial_sdk_setup/sdk_integration/ + link: /docs/developer_guide/platform_integration_guides/xamarin/initial_sdk_setup/ image: /assets/img/xamarin.png - name: Flutter - link: /docs/developer_guide/platform_integration_guides/flutter/preview/ + link: /docs/developer_guide/platform_integration_guides/flutter/flutter_sdk_integration/ image: /assets/img/flutter_icon.png --- diff --git a/_docs/_partners/message_orchestration/additional_channels/calendar/rokt_calendar.md b/_docs/_partners/message_orchestration/additional_channels/calendar/rokt_calendar.md index 25691c81699..3708f6a7bf9 100644 --- a/_docs/_partners/message_orchestration/additional_channels/calendar/rokt_calendar.md +++ b/_docs/_partners/message_orchestration/additional_channels/calendar/rokt_calendar.md @@ -181,7 +181,7 @@ The following fields include information that can be customized at the event lev {% endtabs %} {% alert tip %} -For a list of valid time zones, see [https://roktcalendar-api.readme.io/docs/timezones](https://roktcalendar.readme.io/docs/timezones). +For a list of valid time zones, see [https://roktcalendar-api.readme.io/reference/timezones](https://roktcalendar-api.readme.io/reference/timezones). {% endalert %} ### Step 3: Preview your request diff --git a/_docs/_partners/message_orchestration/additional_channels/direct_mail/inkit.md b/_docs/_partners/message_orchestration/additional_channels/direct_mail/inkit.md index d274e129755..3db3fb8307a 100644 --- a/_docs/_partners/message_orchestration/additional_channels/direct_mail/inkit.md +++ b/_docs/_partners/message_orchestration/additional_channels/direct_mail/inkit.md @@ -18,7 +18,7 @@ The Braze and Inkit integration allows you to send Inkit mail to Braze users thr |Requirement| Description| | ---| ---| -|Inkit account | An [Inkit account](https://console.liftigniter.com/login) is required to take advantage of this partnership. | +|Inkit account | An [Inkit account](https://www.inkit.com/) is required to take advantage of this partnership. | | Inkit API key

`` | This key is found on your [Inkit Dashboard](https://app.inkit.io/#/account/integrations) will enable you to connect your Braze and Inkit accounts.| | Inkit template ID

`` | This key is found within the URL for each template, enabling you to send your template to Braze.

For example, within the URL `https://app.inkit.io/#/templates/design/bd9b0b8c-c47b-40ae-8787-80dd76f6d2bb`, the Template ID is `bd9b0b8c-c47b-40ae-8787-80dd76f6d2bb`. | | HTTP header | Found on your Inkit account, you will combine this with your Inkit API Key to authorize the connection as a key-value pair within your Braze template. | diff --git a/_docs/_partners/message_orchestration/attribution/adjust.md b/_docs/_partners/message_orchestration/attribution/adjust.md index f2c138b8f0b..50f43a4865d 100644 --- a/_docs/_partners/message_orchestration/attribution/adjust.md +++ b/_docs/_partners/message_orchestration/attribution/adjust.md @@ -52,7 +52,7 @@ If set to `true`, you must implement the iOS device ID mapping for Swift in orde If you have an iOS app, your IDFV will be collected by Adjust and sent to Braze. This ID will then be mapped to a unique device ID in Braze. -Braze will still store IDFA values for users that have opted-in if you are collecting the IDFA with Braze, as described in our [iOS 14 Upgrade Guide]({{site.baseurl}}/developer_guide/platform_integration_guides/ios/ios_14/#idfa). Otherwise, the IDFV will be used as a fallback identifier to map users. +Braze will still store IDFA values for users that have opted-in if you are collecting the IDFA with Braze, as described in our [iOS 14 Upgrade Guide]({{site.baseurl}}/android_12/). Otherwise, the IDFV will be used as a fallback identifier to map users. {% endtab %} {% tab Swift %} diff --git a/_docs/_partners/message_orchestration/attribution/appsflyer/appsflyer_audiences.md b/_docs/_partners/message_orchestration/attribution/appsflyer/appsflyer_audiences.md index 62497b639d8..6ad06c6a325 100644 --- a/_docs/_partners/message_orchestration/attribution/appsflyer/appsflyer_audiences.md +++ b/_docs/_partners/message_orchestration/attribution/appsflyer/appsflyer_audiences.md @@ -20,7 +20,7 @@ The Braze and AppsFlyer integration allows you to drive user engagement and incr |---|---| | AppsFlyer account | An AppsFlyer account is required to take advantage of this partnership. | | iOS or Android app | This integration supports iOS and Android apps. Depending on your platform, code snippets may be required in your application. Details on these requirements can be found in step 1 of the integration process. | -| AppsFlyer SDK | In addition to the required Braze SDK, you must install the [AppsFlyer SDK](https://support.appsflyer.com/hc/en-us/categories/201114756-SDK-integration-). | +| AppsFlyer SDK | In addition to the required Braze SDK, you must install the [AppsFlyer SDK](https://support.appsflyer.com/hc/en-us/articles/207032126-SDK-integration-overview). | {: .reset-td-br-1 .reset-td-br-2} ## Data import integration diff --git a/_docs/_partners/message_orchestration/channel_extensions/loyalty/punchh/punchh.md b/_docs/_partners/message_orchestration/channel_extensions/loyalty/punchh/punchh.md index 392dc9a8fbb..bbac17b7fc9 100644 --- a/_docs/_partners/message_orchestration/channel_extensions/loyalty/punchh/punchh.md +++ b/_docs/_partners/message_orchestration/channel_extensions/loyalty/punchh/punchh.md @@ -58,7 +58,7 @@ The `external_source` and `external_source_id` field values must be unique to Pu 1. New Punchh users
Create new users in Punchh with a Punchh sign-up endpoint using the `external_source` and `external_source_id` fields. Punchh allows external identifiers to be sent with a user profile via one of the following sign-up endpoints: -- [Mobile Signup API](https://developers.punchh.com/mobile-apis/users/mobile-sign-up) +- [Mobile Signup API](https://developers.punchh.com/docs/dev-portal-mobile/2e67abf6f8e12-sign-up-register) - [SSO Signup API](https://developers.punchh.com/sso-online-apis/single-sign-on/sso-signup)

2. Existing Punchh users
Update `external_source_id` for existing Punchh users. Punchh allows external identifiers to be added to a profile via a user API update endpoint: diff --git a/_docs/_partners/message_personalization/dynamic_content/dynamic_yield.md b/_docs/_partners/message_personalization/dynamic_content/dynamic_yield.md index b8f833d5a51..6a8afc73af7 100644 --- a/_docs/_partners/message_personalization/dynamic_content/dynamic_yield.md +++ b/_docs/_partners/message_personalization/dynamic_content/dynamic_yield.md @@ -68,7 +68,7 @@ Use Dynamic Content to target different promotions and messages to different use ### Step 3: Integrate your Email with Braze -This integration allows you to add personalized [recommendation widgets](https://support.dynamicyield.com/hc/en-us/articles/360022547394) and [dynamic content](https://support.dynamicyield.com/hc/en-us/articles/360022547994) powered by Dynamic Yield into your Braze email campaigns. Embedding these campaigns into Braze campaigns is done with a simple embed code that you paste into the Braze email editor. +This integration allows you to add personalized recommendation widgets and dynamic content powered by Dynamic Yield into your Braze email campaigns. Embedding these campaigns into Braze campaigns is done with a simple embed code that you paste into the Braze email editor. 1. Click the ESP Integration icon on the Experience Email list page.

2. Enter the relevant token from Braze that inserts the user's CUID and Email ID.
![][3] diff --git a/_docs/_partners/message_personalization/dynamic_content/movable_ink.md b/_docs/_partners/message_personalization/dynamic_content/movable_ink.md index 912f030c9e8..d373c8c03ac 100644 --- a/_docs/_partners/message_personalization/dynamic_content/movable_ink.md +++ b/_docs/_partners/message_personalization/dynamic_content/movable_ink.md @@ -10,7 +10,7 @@ search_tag: Partner # Movable Ink -> [Movable Ink][1] is a cloud-based software platform that offers digital marketers a way to create compelling and unique visual experiences that move customers. The Movable Ink platform provides valuable customization options that can easily be inserted into your campaigns. +> [Movable Ink](https://www.movableink.com/) is a cloud-based software platform that offers digital marketers a way to create compelling and unique visual experiences that move customers. The Movable Ink platform provides valuable customization options that can easily be inserted into your campaigns. Expand Braze's creative capabilities by leveraging Movable Ink's Intelligent Creative features like polling, countdown timer, and scratch-off. The Movable Ink and Braze integration powers a more well-rounded approach to dynamic data-driven messages, providing users with real-time elements about the things that matter. @@ -163,7 +163,7 @@ This template will take the current time (in seconds), append it to the end of t #### Having trouble showing GIFs on Android? - Android requires GIF support in implementation. Follow the Android [in-app message customization][GIFsupport] article if you do not have this setup. -[1]: https://movableink.com/ +[1]: https://www.movableink.com/ [datasource]: ({% image_buster /assets/img/movable_ink/movable_ink1.png %}) [support]: https://support.movableink.com/ [GIFsupport]: {{site.baseurl}}/developer_guide/platform_integration_guides/android/in-app_messaging/customization/gifs/ diff --git a/_docs/_partners/message_personalization/location/bluedot.md b/_docs/_partners/message_personalization/location/bluedot.md index 7091a1b3402..12c9775d3bc 100644 --- a/_docs/_partners/message_personalization/location/bluedot.md +++ b/_docs/_partners/message_personalization/location/bluedot.md @@ -31,7 +31,7 @@ The custom event location information provided by Bluedot can be used in your ca ## Integration ### Step 1: Create a Bluedot project -Set up your Bluedot account and log into your [Bluedot Canvas dashboard](https://docs.bluedot.io/canvas/). Visit the [Bluedot documentation]((https://docs.bluedot.io/canvas/creating-a-new-project/)) to learn how to create a new project. +Set up your Bluedot account and log into your [Bluedot Canvas dashboard](https://docs.bluedot.io/canvas/). Visit the [Bluedot documentation](https://docs.bluedot.io/canvas/creating-a-new-project/) to learn how to create a new project. ### Step 2: Integrate the SDKs Integrate the Bluedot Point SDK and the Braze SDK in your app using the steps provided in the [Bluedot-Braze integration](https://docs.bluedot.io/integrations/braze-integration/) documentation. diff --git a/_docs/_user_guide/data_and_analytics/analytics.md b/_docs/_user_guide/data_and_analytics/analytics.md index 5f2a4cde9cf..fbc28114e59 100644 --- a/_docs/_user_guide/data_and_analytics/analytics.md +++ b/_docs/_user_guide/data_and_analytics/analytics.md @@ -15,7 +15,7 @@ guide_featured_list: - name: Overview Data link: /docs/user_guide/data_and_analytics/analytics/understanding_your_app_usage_data/ fa_icon: fas fa-mobile - - name: Email Performance Dashboard + - name: Channel Performance Dashboard link: /docs/user_guide/data_and_analytics/analytics/email_performance_dashboard/ fa_icon: fas fa-chart-line - name: Conversions Dashboard diff --git a/_docs/_user_guide/data_and_analytics/braze_currents/event_glossary/customer_behavior_events.md b/_docs/_user_guide/data_and_analytics/braze_currents/event_glossary/customer_behavior_events.md index c7a582c7c90..c4f645339e8 100644 --- a/_docs/_user_guide/data_and_analytics/braze_currents/event_glossary/customer_behavior_events.md +++ b/_docs/_user_guide/data_and_analytics/braze_currents/event_glossary/customer_behavior_events.md @@ -59,18 +59,13 @@ This event occurs when a specific custom event is triggered. Use this to track w "id": (required, string) unique id of this event, "user_id": (required, string) Braze user id of the user, "external_user_id": (optional, string) External ID of the user, - "app_group_id": (required, string) BSON id of the app group this user belongs to, "app_id": (optional, string) id for the app on which the user action occurred, "time": (required, int) 10-digit UTC time of the event in seconds since the epoch, - "gender": (optional, string) [PII] gender of the user, - "country": (optional, string) [PII] country of the user, "timezone": (optional, string) IANA time zone of the user at the time of the event, - "language": (optional, string) [PII] language of the user, - "device_id": (optional, string) id of the device on which the event occurred, - "sdk_version": (optional, string) version of the Braze SDK in use during the event, "platform": (optional, string) platform of the device (one of 'ios', 'android', 'web', 'kindle', 'tvos', OR 'roku'), "os_version": (optional, string) os version of device used for the action, "device_model": (optional, string) hardware model of the device, + "device_id": (optional, string) id of the device on which the event occurred, "name": (required, string) name of the custom event, "properties": (string) JSON encoded string of the properties for this event, "ad_id": (optional, string) advertising identifier, @@ -104,14 +99,12 @@ Purchases are special custom events and come with a JSON encoded string of custo "id": (required, string) unique id of this event, "user_id": (required, string) Braze user id of the user, "external_user_id": (optional, string) External ID of the user, - "app_group_id": (required, string) BSON id of the app group this user belongs to, "app_id": (optional, string) id for the app on which the user action occurred, "time": (required, int) 10-digit UTC time of the event in seconds since the epoch, - "device_id": (optional, string) id of the device on which the event occurred, - "sdk_version": (optional, string) version of the Braze SDK in use during the purchase, "platform": (optional, string) platform of the device (one of 'ios', 'android', 'web', 'kindle', 'tvos', OR 'roku'), "os_version": (optional, string) os version of device used for the action, "device_model": (optional, string) hardware model of the device, + "device_id": (optional, string) id of the device on which the event occurred, "product_id": (required, string) id of the product purchased, "price": (required, float) price of the purchase, "currency": (required, string) three letter alpha ISO 4217 currency code, @@ -183,9 +176,8 @@ When a user starts their first session, both a `FirstSession` and a `SessionStar "id": (required, string) unique id of this event, "user_id": (required, string) Braze user id of the user, "external_user_id": (optional, string) External ID of the user, - "time": (required, int) 10-digit UTC time of the event in seconds since the epoch, - "session_id": (required, string) id of the session, "app_id": (required, string) id for the app on which the user action occurred, + "time": (required, int) 10-digit UTC time of the event in seconds since the epoch, "platform": (optional, string) platform of the device (one of 'ios', 'android', 'web', 'kindle', 'tvos', OR 'roku'), "os_version": (optional, string) os version of the device used for the action, "device_model": (optional, string) hardware model of the device, @@ -215,10 +207,10 @@ When a user starts their first session, both a `FirstSession` and a `SessionStar "id": (required, string) unique id of this event, "user_id": (required, string) Braze user id of the user, "external_user_id": (optional, string) External ID of the user, + "app_id": (required, string) id for the app on which the user action occurred, "time": (required, int) 10-digit UTC time of the event in seconds since the epoch, - "session_id": (required, string) id of the session, "duration": (optional, float) seconds session lasted, - "app_id": (required, string) id for the app on which the user action occurred, + "session_id": (required, string) id of the session, "platform": (optional, string) platform of the device (one of 'ios', 'android', 'web', 'kindle', 'tvos', OR 'roku'), "os_version": (optional, string) os version of the device used for the action, "device_model": (optional, string) hardware model of the device, @@ -243,19 +235,17 @@ This event is triggered when a user visits a specified location. Use this to tra "id": (required, string) unique id of this event, "user_id": (required, string) Braze user id of the user, "external_user_id": (optional, string) External ID of the user, - "app_group_id": (required, string) BSON id of the app group this user belongs to, "app_id": (required, string) id for the app on which the user action occurred, "time": (required, int) 10-digit UTC time of the event in seconds since the epoch, - "longitude": (required, float) longitude of recorded location, "latitude": (required, float) latitude of recorded location, + "longitude": (required, float) longitude of recorded location, "altitude": (optional, float) altitude of recorded location, "ll_accuracy": (optional, float) latitude/longitude accuracy of recorded location, "alt_accuracy": (optional, float) altitude accuracy of recorded location, - "device_id": (optional, string) id of the device on which the event occurred, - "sdk_version": (optional, string) version of the Braze SDK in use when the location was recorded, "platform": (optional, string) platform of the device (one of 'ios', 'android', 'web', 'kindle', 'tvos', OR 'roku'), "os_version": (optional, string) os version of device used for the action, "device_model": (optional, string) hardware model of the device, + "device_id": (optional, string) id of the device on which the event occurred, "ad_id": (optional, string) advertising identifier, "ad_id_type": (optional, string) One of 'ios_idfa', 'google_ad_id', OR 'roku_ad_id', "ad_tracking_enabled": (optional, boolean) whether advertising tracking is enabled for the device @@ -316,8 +306,6 @@ This event occurs when an app installation is attributed to a source. Use this t "id": (required, string) unique id of this event, "user_id": (required, string) Braze user id of the user, "external_user_id": (optional, string) External ID of the user, - "device_id": (optional, string) device_id that is tied to this user if user is anonymous, - "app_group_id": (required, string) BSON id of the app group this user belongs to, "time": (requierd, int) 10-digit UTC time of the event in seconds since the epoch, "source": (required, string) the source of the attribution } diff --git a/_docs/_user_guide/data_and_analytics/braze_currents/event_glossary/message_engagement_events.md b/_docs/_user_guide/data_and_analytics/braze_currents/event_glossary/message_engagement_events.md index 5971d14bb93..d761e900e27 100644 --- a/_docs/_user_guide/data_and_analytics/braze_currents/event_glossary/message_engagement_events.md +++ b/_docs/_user_guide/data_and_analytics/braze_currents/event_glossary/message_engagement_events.md @@ -54,23 +54,24 @@ Campaign, Abort This event occurs if a campaign message was aborted based on quiet hours, rate limiting, frequency capping, or Liquid aborts. ```json -// Campaign Message Abort: users_campaigns_abort +// Campaign Message Abort: users.campaigns.abort { - "id": (string) globally unique ID of this event, - "user_id": (string) BSON id of the user that performed this event, - "external_user_id": (string) External user ID of the user, - "app_group_id": (string) BSON id of the app group this user belongs to, - "time": (int) unix timestamp at which the event happened, - "device_id": (string) id of the device on which the event occurred, - "abort_type": (string) type of abort, one of: "liquid_abort_message", "quiet_hours", "rate_limit", "abort_log": (string) log message describing abort details (MAX: 128 CHARS), - "dispatch_id" (string) ID of the dispatch this message belongs to, - "send_id": (string) message send ID this message belongs to, + "abort_type": (string) type of abort, one of: "liquid_abort_message", "quiet_hours", "rate_limit", + "app_group_id": (string) BSON id of the app group this user belongs to, "campaign_id": (string) internal-use Braze ID of the campaign this event belongs to, "campaign_name": (string) name of the campaign, - "message_variation_name": (string) the name of the message variation if from a campaign, - "timezone": (string) timezone of the user + "canvas_id": (string) id of the Canvas if from a Canvas, + "device_id": (string) id of the device on which the event occurred, + "dispatch_id": (string) ID of the dispatch this message belongs to, + "external_user_id": (string) External user ID of the user, + "id": (string) globally unique ID of this event, "message_variation_id": (string) message variation ID of the variation this user received, + "message_variation_name": (string) the name of the message variation if from a campaign, + "send_id": (string) message send ID this message belongs to, + "time": (int) unix timestamp at which the event happened, + "timezone": (string) timezone of the user, + "user_id": (string) BSON id of the user that performed this event } ``` @@ -87,24 +88,24 @@ Canvas, Abort This event occurs if a Canvas message was aborted based on quiet hours, rate limiting, frequency capping, or Liquid aborts. ```json -// Canvas Message Abort: users_canvas_abort +// Canvas Message Abort: users.canvas.abort { - "id": (string) globally unique ID of this event, - "user_id": (string) BSON id of the user that performed this event, - "external_user_id": (string) External user ID of the user, - "app_group_id": (string) BSON id of the app group this user belongs to, - "time": (int) unix timestamp at which the event happened, - "device_id": (string) id of the device on which the event occurred, - "abort_type": (string) type of abort, one of: "liquid_abort_message", "quiet_hours", "rate_limit", "abort_log": (string) log message describing abort details (MAX: 128 CHARS), + "abort_type": (string) type of abort, one of: "liquid_abort_message", "quiet_hours", "rate_limit", + "app_group_id": (string) BSON id of the app group this user belongs to, "canvas_id": (string) id of the Canvas if from a Canvas, "canvas_name": (string) name of the Canvas, "canvas_step_id": (string) id of the canvas step this event belongs to, "canvas_step_message_variation_id": (string) id of the canvas step message variation this user received, - "canvas_step_name": (string) name of the step for this message if from a Canvas, + "canvas_step_name": (string)name of the canvas step this event belongs to, "canvas_variation_id": (string) Canvas variation ID of the variation this event belongs to, "canvas_variation_name": (string) name of the Canvas variation this event belongs to, - "timezone": (string) timezone of the user + "device_id": (string) id of the device on which the event occurred, + "external_user_id": (string) External user ID of the user, + "id": (string) globally unique ID of this event, + "time": (int) unix timestamp at which the event happened, + "timezone": (string) timezone of the user, + "user_id": (string) BSON id of the user that performed this event } ``` @@ -137,7 +138,7 @@ This event occurs if a Content Card message was aborted based on quiet hours, ra "canvas_variation_id": (string) Canvas variation ID of the variation this event belongs to, "canvas_variation_name": (string) name of the Canvas variation this event belongs to, "device_id": (string) id of the device on which the event occurred, - "dispatch_id" (string) ID of the dispatch this message belongs to, + "dispatch_id": (string) ID of the dispatch this message belongs to, "external_user_id": (string) External user ID of the user, "id": (string) globally unique ID of this event, "message_variation_id": (string) message variation ID of the variation this user received, @@ -177,8 +178,8 @@ This event occurs if an email message was aborted based on quiet hours, rate lim "canvas_variation_id": (string) Canvas variation ID of the variation this event belongs to, "canvas_variation_name": (string) name of the Canvas variation this event belongs to, "device_id": (string) id of the device on which the event occurred, - "dispatch_id" (string) ID of the dispatch this message belongs to, - "email_address" (string) email address of the user, + "dispatch_id": (string) ID of the dispatch this message belongs to, + "email_address": (string) email address of the user, "external_user_id": (string) External user ID of the user, "id": (string) globally unique ID of this event, "ip_pool": (string) IP Pool from which the email send was made @@ -223,10 +224,10 @@ This event occurs if an in-app message message was aborted based on quiet hours, "canvas_variation_id": (string) id of the canvas variation this event belongs to, "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, "card_id": (string) BSON id of the card this in app message comes from, - "carrier:" (string) carrier of the device, + "carrier:": (string) carrier of the device, "device_id": (string) id of the device on which the event occurred, - "device_model" (string) model of the device, - "dispatch_id" (string) ID of the dispatch this message belongs to, + "device_model": (string) model of the device, + "dispatch_id": (string) ID of the dispatch this message belongs to, "external_user_id": (string) External user ID of the user, "message_variation_id": (string) ID of the message variation this user received, "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, @@ -266,9 +267,9 @@ This event occurs if a News Feed card was aborted based on quiet hours, rate lim "canvas_step_name": (string) API id of the canvas step this event belongs to, "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, "card_id": (string) BSON id of the card this in app message comes from, - "carrier:" (string) carrier of the device, + "carrier:": (string) carrier of the device, "device_id": (string) id of the device on which the event occurred, - "device_model" (string) model of the device, + "device_model": (string) model of the device, "external_user_id": (string) External user ID of the user, "id": (string) globally unique ID of this event, "message_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, @@ -309,7 +310,7 @@ This event occurs if a push notification message was aborted based on quiet hour "canvas_step_name": (string) API id of the canvas step this event belongs to, "canvas_variation_id": (string) id of the canvas variation this event belongs to, "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, - "dispatch_id" (string) ID of the dispatch this message belongs to, + "dispatch_id": (string) ID of the dispatch this message belongs to, "external_user_id": (string) External user ID of the user, "message_variation_id": (string) ID of the message variation this user received, "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, @@ -387,7 +388,7 @@ This event occurs if a webhook message was aborted based on quiet hours, rate li "canvas_variation_id": (string) id of the canvas variation this event belongs to, "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, "device_id": (string) id of the device on which the event occurred, - "dispatch_id" (string) ID of the dispatch this message belongs to, + "dispatch_id": (string) ID of the dispatch this message belongs to, "external_user_id": (string) External user ID of the user, "id": (string) globally unique ID of this event, "message_variation_id": (string) ID of the message variation this user received, @@ -422,9 +423,11 @@ This event occurs when a user has exited a Canvas by performing an event. "app_group_api_id": (string) API ID of the app group this user belongs to, "time": (int) unix timestamp at which the event happened, "canvas_id": (string) id of the Canvas if from a Canvas, + "canvas_variation_id": (string) id of the Canvas variation the user is in if from a Canvas, + "canvas_step_id": (string) id of the step for this message if from a Canvas, "canvas_api_id": (string) BSON id of the experiment step this event belongs to, "canvas_variation_api_id": (string) API id of the canvas variation this event belongs to, - "canvas_step_api_id": (string) API id of the canvas step this event belongs to, + "canvas_step_api_id": (string) API id of the canvas step this event belongs to } ``` {% endapi %} @@ -454,7 +457,7 @@ This event occurs when a user has exited a Canvas by matching an audience. "canvas_step_id": (string) id of the step for this message if from a Canvas, "canvas_api_id": (string) BSON id of the experiment step this event belongs to, "canvas_variation_api_id": (string) API id of the canvas variation this event belongs to, - "canvas_step_api_id": (string) API id of the canvas step this event belongs to, + "canvas_step_api_id": (string) API id of the canvas step this event belongs to } ``` {% endapi %} @@ -537,9 +540,10 @@ This event occurs when Braze processes a push message for a user, communicating "id": (string) unique id of this event, "user_id": (string) Braze user id of the user, "external_user_id": (string) External ID of the user, - "time": (int) 10-digit UTC time of the event in seconds since the epoch, - "timezone": (string) IANA time zone of the user at the time of the event, "app_id": (string) id for the app on which the user action occurred, + "time": (int) 10-digit UTC time of the event in seconds since the epoch, + "timezone": (string) IANA time zone of the user at the time of the event, + "platform": (string) platform of the device (one of 'ios', 'android', 'web', 'kindle', 'tvos', OR 'roku'), "campaign_id": (string) id of the campaign if from a campaign, "campaign_name": (string) name of the campaign, "message_variation_id": (string) id of the message variation if from a campaign, @@ -549,11 +553,10 @@ This event occurs when Braze processes a push message for a user, communicating "canvas_variation_id": (string) id of the Canvas variation the user is in if from a Canvas, "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, "canvas_step_id": (string) id of the step for this message if from a Canvas, - "canvas_step_name": (string) name of the step for this message if from a Canvas, - "platform": (string) platform of the device (one of 'ios', 'android', 'web', 'kindle', 'tvos', OR 'roku'), - "device_id": (string) id of the device that we made a delivery attempt to, + "canvas_step_name": (string) name of the step for this message if from a Canvas, "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform). Users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user., + "device_id": (string) id of the device that we made a delivery attempt to, "ad_id": (string) advertising identifier, "ad_id_type": (string) One of 'ios_idfa', 'google_ad_id', OR 'roku_ad_id', "ad_tracking_enabled": (boolean) whether advertising tracking is enabled for the device, @@ -599,13 +602,13 @@ This event occurs when a user directly clicks on the Push notification to open t "platform": (string) platform of the device (one of 'ios', 'android', 'web', 'kindle', 'tvos', OR 'roku'), "os_version": (string) os version of device used for the action, "device_model": (string) hardware model of the device, + "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), + "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform). Users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user., "device_id": (string) id of the device that we made a delivery attempt to, "button_action_type": (string) Action type of the push notification, button. One of [URI, DEEP_LINK, NONE, CLOSE, SHARE]. null if not from a button click, "button_string": (string) identifier (button_string) of the push notification button clicked. null if not from a button click, - "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), - "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform). Users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user., "ad_id": (string) advertising identifier, "ad_id_type": (string) One of 'ios_idfa', 'google_ad_id', OR 'roku_ad_id', "ad_tracking_enabled": (boolean) whether advertising tracking is enabled for the device @@ -633,9 +636,10 @@ This event is now deprecated using our [Obj-C SDK](https://github.com/Appboy/app "id": (string) unique id of this event, "user_id": (string) Braze user id of the user, "external_user_id": (string) External ID of the user, + "app_id": (string) id for the app on which the user action occurred, "time": (int) 10-digit UTC time of the event in seconds since the epoch, "timezone": (string) IANA time zone of the user at the time of the event, - "app_id": (string) id for the app on which the user action occurred, + "platform": (string) platform of the device (one of 'ios', 'android', 'web', 'kindle', 'tvos', OR 'roku'), "campaign_id": (string) id of the campaign if from a campaign, "campaign_name": (string) name of the campaign, "message_variation_id": (string) id of the message variation if from a campaign, @@ -646,10 +650,9 @@ This event is now deprecated using our [Obj-C SDK](https://github.com/Appboy/app "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, "canvas_step_id": (string) id of the step for this message if from a Canvas, "canvas_step_name": (string) name of the step for this message if from a Canvas, - "platform": (string) platform of the device (one of 'ios', 'android', 'web', 'kindle', 'tvos', OR 'roku'), - "device_id": (string) id of the device that we made a delivery attempt to, "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform). Users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user., + "device_id": (string) id of the device that we made a delivery attempt to, "ad_id": (string) advertising identifier, "ad_id_type": (string) One of 'ios_idfa', 'google_ad_id', OR 'roku_ad_id', "ad_tracking_enabled": (boolean) whether advertising tracking is enabled for the device @@ -675,9 +678,10 @@ This event occurs when an error is received from either Apple Push Notification "id": (string) unique id of this event, "user_id": (string) Braze user id of the user, "external_user_id": (string) External ID of the user, + "app_id": (string) id for the app on which the bounce occurred, "time": (int) 10-digit UTC time of the event in seconds since the epoch, "timezone": (string) IANA time zone of the user at the time of the event, - "app_id": (string) id for the app on which the bounce occurred, + "platform": (string) platform of the device (one of 'ios', 'android', 'web', 'kindle', 'tvos', OR 'roku'), "campaign_id": (string) id of the campaign if from a campaign, "campaign_name": (string) name of the campaign, "message_variation_id": (string) id of the message variation if from a campaign, @@ -688,10 +692,9 @@ This event occurs when an error is received from either Apple Push Notification "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, "canvas_step_id": (string) id of the step for this message if from a Canvas, "canvas_step_name": (string) name of the step for this message if from a Canvas, - "platform": (string) platform of the device (one of 'ios', 'android', 'web', 'kindle', 'tvos', OR 'roku'), - "device_id": (string) id of the device that we made a delivery attempt to, "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform). Users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user., + "device_id": (string) id of the device that we made a delivery attempt to, "ad_id": (string) advertising identifier, "ad_id_type": (string) One of 'ios_idfa', 'google_ad_id', OR 'roku_ad_id', "ad_tracking_enabled": (boolean) whether advertising tracking is enabled for the device @@ -713,27 +716,24 @@ This event occurs when an email send request was successfully communicated betwe ```json // Email Send: users.messages.email.Send { - // User Specific Properties "id": (string) unique id of this event, "user_id": (string) Braze user id of the user, + "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform). Users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user, "external_user_id": (string) External ID of the user, "time": (int) 10-digit UTC time of the event in seconds since the epoch, "timezone": (string) IANA time zone of the user at the time of the event, - // Campaign/Canvas Tracking Properties "campaign_id": (string) id of the campaign if from a campaign, "campaign_name": (string) name of the campaign, "message_variation_id": (string) id of the message variation if from a campaign, "message_variation_name": (string) the name of the message variation if from a campaign, + "email_address": (string) email address for this event, "canvas_id": (string) id of the Canvas if from a Canvas, "canvas_name": (string) name of the Canvas, "canvas_variation_id": (string) id of the Canvas variation the user is in if from a Canvas, "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, "canvas_step_id": (string) id of the step for this message if from a Canvas, "canvas_step_name": (string) name of the step for this message if from a Canvas, - // Event Specific Properties "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), - "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform). Users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user, - "email_address": (string) email address for this event, "ip_pool": (string) IP pool used for message sending, "message_extras": (object) key-value pairs sent with this event } @@ -759,6 +759,7 @@ This event occurs when an email sent made it successfully to the end-users inbox { "id": (string) unique id of this event, "user_id": (string) Braze user id of the user, + "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform). Users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user., "external_user_id": (string) External ID of the user, "time": (int) 10-digit UTC time of the event in seconds since the epoch, "timezone": (string) IANA time zone of the user at the time of the event, @@ -766,15 +767,14 @@ This event occurs when an email sent made it successfully to the end-users inbox "campaign_name": (string) name of the campaign, "message_variation_id": (string) id of the message variation if from a campaign, "message_variation_name": (string) the name of the message variation if from a campaign, + "email_address": (string) email address for this event, "canvas_id": (string) id of the Canvas if from a Canvas, "canvas_name": (string) name of the Canvas, "canvas_variation_id": (string) id of the Canvas variation the user is in if from a Canvas, "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, "canvas_step_id": (string) id of the step for this message if from a Canvas, - "canvas_step_name": (string) name of the step for this message if from a Canvas, + "canvas_step_name": (string) name of the step for this message if from a Canvas, "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), - "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform). Users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user., - "email_address": (string) email address for this event, "sending_ip": (string) the IP address from which the message was sent (Email Delivery, Bounce, and SoftBounce events only. Will only be shown on events if the message was actually attempted for delivery. For certain other bounces, the information could be lost if the recipient server has already accepted the mail and only later after the connection is closed decided it could not deliver the mail), "ip_pool": (string) IP pool used for message sending, "esp": (string) ESP related to the event (SparkPost or SendGrid), @@ -801,6 +801,7 @@ This event occurs when a user opens an email. Multiple events may be generated f { "id": (string) unique id of this event, "user_id": (string) Braze user id of the user, + "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform). Users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user., "external_user_id": (string) External ID of the user, "time": (int) 10-digit UTC time of the event in seconds since the epoch, "timezone": (string) IANA time zone of the user at the time of the event, @@ -808,17 +809,16 @@ This event occurs when a user opens an email. Multiple events may be generated f "campaign_name": (string) name of the campaign, "message_variation_id": (string) id of the message variation if from a campaign, "message_variation_name": (string) the name of the message variation if from a campaign, + "email_address": (string) email address for this event, "canvas_id": (string) id of the Canvas if from a Canvas, "canvas_name": (string) name of the Canvas, "canvas_variation_id": (string) id of the Canvas variation the user is in if from a Canvas, "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, "canvas_step_id": (string) id of the step for this message if from a Canvas, "canvas_step_name": (string) name of the step for this message if from a Canvas, - "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), - "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform). Users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user., - "email_address": (string) email address for this event, - "ip_pool": (string) IP pool used for message sending, + "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), "user_agent": (string) description of the user's system and browser for the event, + "ip_pool": (string) IP pool used for message sending, "machine_open": (string) Indicator of whether the email was opened by an automated process, such as Apple or Google mail pre-fetching. Currently "true" or null, but additional granularity (e.g., "Apple" or "Google" to indicate which process made the fetch) may be added in the future., "esp": (string) ESP related to the event (SparkPost or SendGrid), "from_domain": (string) sending domain for the email, @@ -844,6 +844,7 @@ This event occurs when a user clicks an email. Multiple events may be generated { "id": (string) unique id of this event, "user_id": (string) Braze user id of the user, + "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform). Only included when campaign_id is present. Users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user., "external_user_id": (string) External ID of the user, "time": (int) 10-digit UTC time of the event in seconds since the epoch, "timezone": (string) IANA time zone of the user at the time of the event, @@ -851,6 +852,8 @@ This event occurs when a user clicks an email. Multiple events may be generated "campaign_name": (string) name of the campaign, "message_variation_id": (string) id of the message variation if from a campaign, "message_variation_name": (string) the name of the message variation if from a campaign, + "email_address": (string) email address for this event, + "url": (string) the URL that was clicked, "canvas_id": (string) id of the Canvas if from a Canvas, "canvas_name": (string) name of the Canvas, "canvas_variation_id": (string) id of the Canvas variation the user is in if from a Canvas, @@ -858,11 +861,8 @@ This event occurs when a user clicks an email. Multiple events may be generated "canvas_step_id": (string) id of the step for this message if from a Canvas, "canvas_step_name": (string) name of the step for this message if from a Canvas, "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), - "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform). Only included when campaign_id is present. Users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user., - "email_address": (string) email address for this event, - "url": (string) the URL that was clicked, - "ip_pool": (string) IP pool used for message sending, "user_agent": (string) description of the user's system and browser for the event, + "ip_pool": (string) IP pool used for message sending, "link_id": (string) unique value generated by Braze for the URL - null unless link aliasing is enabled, "link_alias": (string) alias name set when the message was sent - null unless link aliasing is enabled, "esp": (string) ESP related to the event (SparkPost or SendGrid), @@ -889,6 +889,7 @@ This event occurs when an Internet Service Provider returns a hard bounce. A har { "id": (string) unique id of this event, "user_id": (string) Braze user id of the user, + "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform). Users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user., "external_user_id": (string) External ID of the user, "time": (int) 10-digit UTC time of the event in seconds since the epoch, "timezone": (string) IANA time zone of the user at the time of the event, @@ -896,6 +897,7 @@ This event occurs when an Internet Service Provider returns a hard bounce. A har "campaign_name": (string) name of the campaign, "message_variation_id": (string) id of the message variation if from a campaign, "message_variation_name": (string) the name of the message variation if from a campaign, + "email_address": (string) email address for this event, "canvas_id": (string) id of the Canvas if from a Canvas, "canvas_name": (string) name of the Canvas, "canvas_variation_id": (string) id of the Canvas variation the user is in if from a Canvas, @@ -903,8 +905,6 @@ This event occurs when an Internet Service Provider returns a hard bounce. A har "canvas_step_id": (string) id of the step for this message if from a Canvas, "canvas_step_name": (string) name of the step for this message if from a Canvas, "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), - "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform). Users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user., - "email_address": (string) email address for this event, "sending_ip": (string) the IP address from which the message was sent (Email Delivery, Bounce, and SoftBounce events only. Will only be shown on events if the message was actually attempted for delivery. For certain other bounces, the information could be lost if the recipient server has already accepted the mail and only later after the connection is closed decided it could not deliver the mail), "ip_pool": (string) IP pool used for message sending (for certain bounce cases, IP pool will not be provided) , "bounce_reason": (string) reason for bounce provided by server, @@ -932,6 +932,7 @@ This event occurs when an Internet Service Provider returns a soft bounce. A sof { "id": (string) unique id of this event, "user_id": (string) Braze user id of the user, + "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform). Users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user., "external_user_id": (string) External ID of the user, "time": (int) 10-digit UTC time of the event in seconds since the epoch, "timezone": (string) IANA time zone of the user at the time of the event, @@ -939,6 +940,7 @@ This event occurs when an Internet Service Provider returns a soft bounce. A sof "campaign_name": (string) name of the campaign, "message_variation_id": (string) id of the message variation if from a campaign, "message_variation_name": (string) the name of the message variation if from a campaign, + "email_address": (string) email address for this event, "canvas_id": (string) id of the Canvas if from a Canvas, "canvas_name": (string) name of the Canvas, "canvas_variation_id": (string) id of the Canvas variation the user is in if from a Canvas, @@ -946,8 +948,6 @@ This event occurs when an Internet Service Provider returns a soft bounce. A sof "canvas_step_id": (string) id of the step for this message if from a Canvas, "canvas_step_name": (string) name of the step for this message if from a Canvas, "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), - "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform). Users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user., - "email_address": (string) email address for this event, "sending_ip": (string) the IP address from which the message was sent (Email Delivery, Bounce, and SoftBounce events only. Will only be shown on events if the message was actually attempted for delivery. For certain other bounces, the information could be lost if the recipient server has already accepted the mail and only later after the connection is closed decided it could not deliver the mail), "ip_pool": (string) IP pool used for message sending(for certain bounce cases, IP pool will not be provided), "bounce_reason": (string) reason for bounce provided by server, @@ -974,6 +974,7 @@ This event occurs when the end-user hits the "spam" button on the email. Note th { "id": (string) unique id of this event, "user_id": (string) Braze user id of the user, + "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform). Users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user., "external_user_id": (string) External ID of the user, "time": (int) 10-digit UTC time of the event in seconds since the epoch, "timezone": (string) IANA time zone of the user at the time of the event, @@ -981,6 +982,7 @@ This event occurs when the end-user hits the "spam" button on the email. Note th "campaign_name": (string) name of the campaign, "message_variation_id": (string) id of the message variation if from a campaign, "message_variation_name": (string) the name of the message variation if from a campaign, + "email_address": (string) email address for this event, "canvas_id": (string) id of the Canvas if from a Canvas, "canvas_name": (string) name of the Canvas, "canvas_variation_id": (string) id of the Canvas variation the user is in if from a Canvas, @@ -988,10 +990,8 @@ This event occurs when the end-user hits the "spam" button on the email. Note th "canvas_step_id": (string) id of the step for this message if from a Canvas, "canvas_step_name": (string) name of the step for this message if from a Canvas, "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), - "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform). Users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user., - "email_address": (string) email address for this event, - "ip_pool": (string) IP pool used for message sending, "user_agent": (string) This field is no longer used in any destination for this event and will always be empty, + "ip_pool": (string) IP pool used for message sending, "esp": (string) ESP related to the event (SparkPost or SendGrid), "from_domain": (string) sending domain for the email } @@ -1021,6 +1021,7 @@ The `Unsubscribe` event is actually a specialized click event that is fired when { "id": (string) unique id of this event, "user_id": (string) Braze user id of the user, + "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform). Users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user., "external_user_id": (string) External ID of the user, "time": (int) 10-digit UTC time of the event in seconds since the epoch, "timezone": (string) IANA time zone of the user at the time of the event, @@ -1028,6 +1029,7 @@ The `Unsubscribe` event is actually a specialized click event that is fired when "campaign_name": (string) name of the campaign, "message_variation_id": (string) id of the message variation if from a campaign, "message_variation_name": (string) the name of the message variation if from a campaign, + "email_address": (string) email address for this event, "canvas_id": (string) id of the Canvas if from a Canvas, "canvas_name": (string) name of the Canvas, "canvas_variation_id": (string) id of the Canvas variation the user is in if from a Canvas, @@ -1035,8 +1037,6 @@ The `Unsubscribe` event is actually a specialized click event that is fired when "canvas_step_id": (string) id of the step for this message if from a Canvas, "canvas_step_name": (string) name of the step for this message if from a Canvas, "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), - "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform). Users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user., - "email_address": (string) email address for this event, "ip_pool": (string) IP pool used for message sending } ``` @@ -1063,6 +1063,7 @@ This event occurs when a user views an in-app message. "external_user_id": (string) External ID of the user, "time": (int) 10-digit UTC time of the event in seconds since the epoch, "timezone": (string) IANA time zone of the user at the time of the event, + "app_id": (string) id for the app on which the user action occurred, "campaign_id": (string) id of the campaign if from a campaign, "campaign_name": (string) name of the campaign, "message_variation_id": (string) id of the message variation if from a campaign, @@ -1073,11 +1074,11 @@ This event occurs when a user views an in-app message. "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, "canvas_step_id": (string) id of the step for this message if from a Canvas, "canvas_step_name": (string) name of the step for this message if from a Canvas, - "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), - "app_id": (string) id for the app on which the user action occurred, + "card_id": (string) id of the card that was viewed, "platform": (string) platform of the device (one of 'ios', 'android', 'web', 'kindle', 'tvos', OR 'roku'), "os_version": (string) os version of device used for the action, "device_model": (string) hardware model of the device, + "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), "device_id": (string) id of the device on which the event occurred, "ad_id": (string) advertising identifier, "ad_id_type": (string) One of 'ios_idfa', 'google_ad_id', OR 'roku_ad_id', @@ -1105,9 +1106,9 @@ This event occurs when a user clicks on an in-app message. "id": (string) unique id of this event, "user_id": (string) Braze user id of the user, "external_user_id": (string) External ID of the user, + "app_id": (string) id for the app on which the user action occurred, "time": (int) 10-digit UTC time of the event in seconds since the epoch, "timezone": (string) IANA time zone of the user at the time of the event, - "button_id": (string) index of the button clicked if it was a button that was clicked, tracking ID of the click if the event came from an appboyBridge.logClick invocation, or choice_id if the in app-message type is a simple survey, "campaign_id": (string) id of the campaign if from a campaign, "campaign_name": (string) name of the campaign, "message_variation_id": (string) id of the message variation if from a campaign, @@ -1118,11 +1119,12 @@ This event occurs when a user clicks on an in-app message. "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, "canvas_step_id": (string) id of the step for this message if from a Canvas, "canvas_step_name": (string) name of the step for this message if from a Canvas, - "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), - "app_id": (string) id for the app on which the user action occurred, + "card_id": (string) id of the card that was viewed, "platform": (string) platform of the device (one of 'ios', 'android', 'web', 'kindle', 'tvos', OR 'roku'), "os_version": (string) os version of device used for the action, "device_model": (string) hardware model of the device, + "button_id": (string) index of the button clicked if it was a button that was clicked, tracking ID of the click if the event came from an appboyBridge.logClick invocation, or choice_id if the in app-message type is a simple survey, + "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), "device_id": (string) id of the device on which the event occurred, "ad_id": (string) advertising identifier, "ad_id_type": (string) One of 'ios_idfa', 'google_ad_id', OR 'roku_ad_id', @@ -1188,20 +1190,20 @@ This event occurs when a Content Card gets sent to a user. "id": (string) unique id of this event, "user_id": (string) Braze user id of the user, "external_user_id": (string) External ID of the user, - "time": (int) 10-digit UTC time of the event in seconds since the epoch, - "timezone": (string) IANA time zone of the user at the time of the event, "content_card_id": (string) id of the content card that was sent, + "time": (int) 10-digit UTC time of the event in seconds since the epoch, + "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), "campaign_id": (string) id of the campaign if from a campaign, "campaign_name": (string) name of the campaign, "message_variation_id": (string) id of the message variation if from a campaign, "message_variation_name": (string) the name of the message variation if from a campaign, "canvas_id": (string) id of the Canvas if from a Canvas, - "canvas_name": (string) name of the Canvas, "canvas_variation_id": (string) id of the Canvas variation the user is in if from a Canvas, "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, "canvas_step_id": (string) id of the step for this message if from a Canvas, "canvas_step_name": (string) name of the step for this message if from a Canvas, - "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), + "canvas_name": (string) name of the Canvas, + "timezone": (string) IANA time zone of the user at the time of the event, "device_id": (string) id of the device on which the event occurred, "message_extras": (object) key-value pairs sent with this event } @@ -1226,10 +1228,10 @@ This event occurs when a user views a Content Card. "id": (string) unique id of this event, "user_id": (string) Braze user id of the user, "external_user_id": (string) External ID of the user, + "content_card_id": (string) id of the content card that was viewed/clicked/dismissed, "time": (int) 10-digit UTC time of the event in seconds since the epoch, - "timezone": (string) IANA time zone of the user at the time of the event, "app_id": (string) id for the app on which the user action occurred, - "content_card_id": (string) id of the content card that was viewed/clicked/dismissed, + "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), "campaign_id": (string) id of the campaign if from a campaign, "campaign_name": (string) name of the campaign, "message_variation_id": (string) id of the message variation if from a campaign, @@ -1240,11 +1242,12 @@ This event occurs when a user views a Content Card. "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, "canvas_step_id": (string) id of the step for this message if from a Canvas, "canvas_step_name": (string) name of the step for this message if from a Canvas, - "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), + "canvas_name" + "timezone": (string) IANA time zone of the user at the time of the event, + "device_id": (string) id of the device on which the event occurred, "platform": (string) platform of the device (one of 'ios', 'android', 'web', 'kindle', 'tvos', OR 'roku'), "os_version": (string) os version of device used for the action, "device_model": (string) hardware model of the device, - "device_id": (string) id of the device on which the event occurred, "ad_id": (string) advertising identifier, "ad_id_type": (string) One of 'ios_idfa', 'google_ad_id', OR 'roku_ad_id', "ad_tracking_enabled": (boolean) whether advertising tracking is enabled for the device @@ -1270,25 +1273,25 @@ This event occurs when a user clicks a Content Card. "id": (string) unique id of this event, "user_id": (string) Braze user id of the user, "external_user_id": (string) External ID of the user, + "content_card_id": (string) id of the content card that was viewed/clicked/dismissed, "time": (int) 10-digit UTC time of the event in seconds since the epoch, - "timezone": (string) IANA time zone of the user at the time of the event, "app_id": (string) id for the app on which the user action occurred, - "content_card_id": (string) id of the content card that was viewed/clicked/dismissed, + "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), "campaign_id": (string) id of the campaign if from a campaign, "campaign_name": (string) name of the campaign, "message_variation_id": (string) id of the message variation if from a campaign, "message_variation_name": (string) the name of the message variation if from a campaign, "canvas_id": (string) id of the Canvas if from a Canvas, - "canvas_name": (string) name of the Canvas, "canvas_variation_id": (string) id of the Canvas variation the user is in if from a Canvas, - "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, "canvas_step_id": (string) id of the step for this message if from a Canvas, + "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, "canvas_step_name": (string) name of the step for this message if from a Canvas, - "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), + "canvas_name": (string) name of the Canvas, + "timezone": (string) IANA time zone of the user at the time of the event, + "device_id": (string) id of the device on which the event occurred, "platform": (string) platform of the device (one of 'ios', 'android', 'web', 'kindle', 'tvos', OR 'roku'), "os_version": (string) os version of device used for the action, "device_model": (string) hardware model of the device, - "device_id": (string) id of the device on which the event occurred, "ad_id": (string) advertising identifier, "ad_id_type": (string) One of 'ios_idfa', 'google_ad_id', OR 'roku_ad_id', "ad_tracking_enabled": (boolean) whether advertising tracking is enabled for the device @@ -1368,10 +1371,10 @@ The [News Feed Impression]({{site.baseurl}}/user_guide/data_and_analytics/braze_ "id": (string) unique id of this event, "user_id": (string) Braze user id of the user, "external_user_id": (string) External ID of the user, + "app_id": (string) id for the app on which the user action occurred, "time": (int) 10-digit UTC time of the event in seconds since the epoch, "timezone": (string) IANA time zone of the user at the time of the event, - "card_id": (string) id of the card that was viewed, - "app_id": (string) id for the app on which the user action occurred, + "card_id": (string) id of the card that was viewed, "platform": (string) platform of the device (one of 'ios', 'android', 'web', 'kindle', 'tvos', OR 'roku'), "os_version": (string) os version of device used for the action, "device_model": (string) hardware model of the device, @@ -1401,10 +1404,10 @@ The [News Feed Impression]({{site.baseurl}}/user_guide/data_and_analytics/braze_ "id": (string) unique id of this event, "user_id": (string) Braze user id of the user, "external_user_id": (string) External ID of the user, - "time": (int) 10-digit UTC time of the event in seconds since the epoch, - "timezone": (string) IANA time zone of the user at the time of the event, - "card_id": (string) id of the card that was clicked, "app_id": (string) id for the app on which the user action occurred, + "time": (int) 10-digit UTC time of the event in seconds since the epoch, + "timezone": (string) IANA time zone of the user at the time of the event, + "card_id": (string) id of the card that was clicked, "platform": (string) platform of the device (one of 'ios', 'android', 'web', 'kindle', 'tvos', OR 'roku'), "os_version": (string) os version of device used for the action, "device_model": (string) hardware model of the device, @@ -1474,7 +1477,7 @@ This event occurs when a user sends an SMS. "canvas_step_id": (string) id of the step for this message if from a Canvas, "canvas_step_name": (string) name of the step for this message if from a Canvas, "send_id": (string) message send ID this message belongs to, - "category" : (string) If the SMS was sent as a result of auto-response to one of your global SMS keywords, the Category will be reflected here (e.g Opt-In, Opt-Out, Help) + "category": (string) If the SMS was sent as a result of auto-response to one of your global SMS keywords, the Category will be reflected here (e.g Opt-In, Opt-Out, Help) "message_extras": (object) key-value pairs sent with this event } ``` @@ -1498,23 +1501,23 @@ This event occurs when an SMS is sent to the carrier. { "id": (string) unique id of this event, "user_id": (string) Braze user id of the user, + "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform and users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user, "external_user_id": (string) External ID of the user, "time": (int) 10-digit UTC time of the event in seconds since the epoch, "timezone": (string) IANA time zone of the user at the time of the event, - "from_phone_number": (string) the from phone number of the message (Delivered and Undelivered only), - "subscription_group_id": (string) id of the subscription group targeted for this SMS message, - "to_phone_number": (string) the number the message was sent to, "campaign_id": (string) id of the campaign if from a campaign, "campaign_name": (string) name of the campaign, "message_variation_id": (string) id of the message variation if from a campaign, "message_variation_name": (string) the name of the message variation if from a campaign, + "to_phone_number": (string) the number the message was sent to, + "subscription_group_id": (string) id of the subscription group targeted for this SMS message, + "from_phone_number": (string) the from phone number of the message (Delivered and Undelivered only), "canvas_id": (string) id of the Canvas if from a Canvas, "canvas_name": (string) name of the Canvas, "canvas_variation_id": (string) id of the Canvas variation the user is in if from a Canvas, "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, "canvas_step_id": (string) id of the step for this message if from a Canvas, "canvas_step_name": (string) name of the step for this message if from a Canvas, - "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform and users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user, "send_id": (string) message send ID this message belongs to } ``` @@ -1535,23 +1538,23 @@ This event occurs when an SMS was successfully delivered to the users mobile pho { "id": (string) unique id of this event, "user_id": (string) Braze user id of the user, + "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform and users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user, "external_user_id": (string) External ID of the user, "time": (int) 10-digit UTC time of the event in seconds since the epoch, "timezone": (string) IANA time zone of the user at the time of the event, - "from_phone_number": (string) the from phone number of the message (Delivered and Undelivered only), - "subscription_group_id": (string) id of the subscription group targeted for this SMS message, - "to_phone_number": (string) the number the message was sent to, "campaign_id": (string) id of the campaign if from a campaign, "campaign_name": (string) name of the campaign, "message_variation_id": (string) id of the message variation if from a campaign, "message_variation_name": (string) the name of the message variation if from a campaign, + "to_phone_number": (string) the number the message was sent to, + "subscription_group_id": (string) id of the subscription group targeted for this SMS message, + "from_phone_number": (string) the from phone number of the message (Delivered and Undelivered only), "canvas_id": (string) id of the Canvas if from a Canvas, "canvas_name": (string) name of the Canvas, "canvas_variation_id": (string) id of the Canvas variation the user is in if from a Canvas, "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, "canvas_step_id": (string) id of the step for this message if from a Canvas, "canvas_step_name": (string) name of the step for this message if from a Canvas, - "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform and users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user, "send_id": (string) message send ID this message belongs to } ``` @@ -1612,27 +1615,25 @@ This event occurs when an SMS experiences delivery failure. Use this event and t { "id": (string) unique id of this event, "user_id": (string) Braze user id of the user, + "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform and users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user, "external_user_id": (string) External ID of the user, "time": (int) 10-digit UTC time of the event in seconds since the epoch, "timezone": (string) IANA time zone of the user at the time of the event, - "from_phone_number": (string) the from phone number of the message (Delivered and Undelivered only), - "subscription_group_id": (string) id of the subscription group targeted for this SMS message, - "subscription_group_api_id": (string) api id of the subscription group targeted for this SMS message, - "to_phone_number": (string) the number the message was sent to, "campaign_id": (string) id of the campaign if from a campaign, - "campaign_name": (string) name of the campaign, + "campaign_name": (string) name of the campaign, "message_variation_id": (string) id of the message variation if from a campaign, "message_variation_name": (string) the name of the message variation if from a campaign, + "to_phone_number": (string) the number the message was sent to, + "subscription_group_id": (string) id of the subscription group targeted for this SMS message, + "error": (string) the Braze provided error (Rejection and Delivery Failure events only), + "provider_error_code": (string) the provider's reason code as to why the message was not sent (Rejection and Delivery Failure events only), "canvas_id": (string) id of the Canvas if from a Canvas, "canvas_name": (string) name of the Canvas, "canvas_variation_id": (string) id of the Canvas variation the user is in if from a Canvas, "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, "canvas_step_id": (string) id of the step for this message if from a Canvas, "canvas_step_name": (string) name of the step for this message if from a Canvas, - "dispatch_id": (string) id of the message dispatch (unique id for each 'transmission' sent from the Braze platform and users who are sent a schedule message get the same dispatch_id. Action-based or API-triggered messages get a unique dispatch_id per user, - "send_id": (string) message send ID this message belongs to, - "error": (string) the Braze provided error (Rejection and Delivery Failure events only), - "provider_error_code": (string) the provider's reason code as to why the message was not sent (Rejection and Delivery Failure events only) + "send_id": (string) message send ID this message belongs to } ``` {% endapi %} @@ -1662,8 +1663,9 @@ If we detect that this inbound message is a reply to an outbound campaign or Can "subscription_group_id": (string) id of the subscription group which the phone number the user messaged belongs to, "inbound_phone_number": (string) the phone number the message was sent to, "inbound_media_urls": (string) the URLs of inbound media attachments if received, - "action" : (string) the subscription action Braze took as a result of this message (either `subscribed`, `unsubscribed` or `none` based on the message body. `None` indicates this inbound message did not match any of your keywords to opt-in or opt-out a user), - "message_body" : (string) the body of the message sent by the user, + "action": (string) the subscription action Braze took as a result of this message (either `subscribed`, `unsubscribed` or `none` based on the message body. `None` indicates this inbound message did not match any of your keywords to opt-in or opt-out a user), + "message_body": (string) the body of the message sent by the user, + "message_urls": (array of string) the message URLs sent by the user, "campaign_id": (string) id of the campaign if Braze identifies this inbound message is a reply to a campaign, "campaign_name": (string) name of the campaign, "message_variation_id": (string) id of the message variation if Braze identifies this inbound message is a reply to a campaign, @@ -1699,16 +1701,16 @@ Note that the conversion event is encoded in the `conversion_behavior` field, wh "id": (string) unique id of this event, "user_id": (string) Braze user id of the user, "external_user_id": (string) External ID of the user, + "app_id": (string) id for the app on which the user action occurred, "time": (int) 10-digit UTC time of the event in seconds since the epoch, "timezone": (string) IANA time zone of the user at the time of the event, - "app_id": (string) id for the app on which the user action occurred, "campaign_id": (string) id of the campaign, "campaign_name": (string) name of the campaign, - "conversion_behavior_index": (int) index of the conversion behavior, - "conversion_behavior": (string) JSON-encoded string describing the conversion behavior, "message_variation_id": (string) id of the message variation, "message_variation_name": (string) the name of the message variation, "send_id": (string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types) + "conversion_behavior_index": (int) index of the conversion behavior, + "conversion_behavior": (string) JSON-encoded string describing the conversion behavior } ``` {% endapi %} @@ -1734,16 +1736,17 @@ Note that the conversion event is encoded in the `conversion_behavior` field, wh "id": (string) unique id of this event, "user_id": (string) Braze user id of the user, "external_user_id": (string) External ID of the user, + "app_id": (string) id for the app on which the user action occurred, "time": (int) 10-digit UTC time of the event in seconds since the epoch, "timezone": (string) IANA time zone of the user at the time of the event, - "app_id": (string) id for the app on which the user action occurred, "canvas_id": (string) id of the Canvas, "canvas_name": (string) name of the Canvas, - "conversion_behavior_index": (int) index of the conversion behavior, - "conversion_behavior": (string) JSON-encoded string describing the conversion behavior, + "canvas_variation_id": (string) id of the Canvas variation the user is in if from a Canvas, "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, "canvas_step_id": (string) id of the last step the user was sent before the conversion - "canvas_step_name": (string) name of the step for this message if from a Canvas, + "canvas_step_name": (string) name of the step for this message if from a Canvas + "conversion_behavior_index": (int) index of the conversion behavior, + "conversion_behavior": (string) JSON-encoded string describing the conversion behavior } ``` {% endapi %} @@ -1769,6 +1772,7 @@ This event occurs when a user enters into the Canvas. This event tells you which "timezone": (string) IANA time zone of the user at the time of the event, "canvas_id": (string) id of the Canvas, "canvas_name": (string) name of the Canvas, + "canvas_variation_id": (string) id of the Canvas variation the user is in if from a Canvas, "canvas_variation_name": (string) name of the Canvas variation the user is in if from a Canvas, "canvas_step_id": (string) id of the step the user entered into, "canvas_step_name": (string) name of the step for this message if from a Canvas, @@ -1826,23 +1830,26 @@ Subscription groups are only available for email and SMS channels at this time. "id": (required, string) unique id of this event, "user_id": (required, string) Braze user id of the user, "external_user_id": (optional, string) External ID of the user, - "device_id": (optional, string) device_id that is tied to this user if user is anonymous, - "app_group_id": (required, string) BSON id of the app group this user belongs to, "email_address": (optional, string) email address for this user, "phone_number": (optional, string) phone number of the user (presented in e.164 format), "app_id": (optional, string) id for the app on which the user action occurred, "campaign_id": (optional, string) id of the campaign if from a campaign, + "campaign_name": (optional, string) name of the campaign, "message_variation_id": (optional, string) id of the message variation if from a campaign, + "message_variation_name": (string) the name of the message variation if from a campaign, "canvas_id": (optional, string) id of the Canvas if from a canvas, + "canvas_name": (optional, string) name of the Canvas, "canvas_variation_id": (optional, string) id of the Canvas variation the user is in if from a Canvas, + "canvas_variation_name": (optional, string) name of the Canvas variation the user is in if from a Canvas, "canvas_step_id": (optional, string) id of the step for this message if from a Canvas, + "canvas_step_name": (optional, string) name of the step for this message if from a Canvas, "subscription_group_id": (required, string) id of the subscription group, + "subscription_status": (required, string) status of the subscription after the change: 'Subscribed' or 'Unsubscribed', "channel": (optional, string) either 'sms', 'email', or 'whats_app', "time": (required, int) 10-digit UTC time of the event in seconds since the epoch, - "subscription_status": (required, string) status of the subscription after the change: 'Subscribed' or 'Unsubscribed' "timezone": (optional, string) IANA time zone of the user at the time of the event, "send_id": (optional, string) id of the message if specified for the campaign (See Send Identifier under API Identifier Types), - "state_change_source": (optional, string) Source of the state change, e.g: REST, SDK, Dashboard, Preference Center etc., + "state_change_source": (optional, string) Source of the state change, e.g: REST, SDK, Dashboard, Preference Center etc. } ``` @@ -1948,7 +1955,6 @@ This event is not fired when the user actually uninstalls the app, as that's imp "user_id": (required, string) Braze user id of the user, "external_user_id": (optional, string) External ID of the user, "device_id": (optional, string) id of the device on which the session occurred, - "app_group_id": (optional, string) BSON id of the app group this user belongs to, "app_id": (required, string) id for the app on which the user action occurred, "time": (required, int) 10-digit UTC time of the event in seconds since the epoch } diff --git a/_docs/_user_guide/engagement_tools/campaigns/ideas_and_strategies/install_attribution.md b/_docs/_user_guide/engagement_tools/campaigns/ideas_and_strategies/install_attribution.md index f3f6e440f82..a5bcfa6efe1 100644 --- a/_docs/_user_guide/engagement_tools/campaigns/ideas_and_strategies/install_attribution.md +++ b/_docs/_user_guide/engagement_tools/campaigns/ideas_and_strategies/install_attribution.md @@ -1,5 +1,5 @@ --- -nav_title: Understanding user installs +nav_title: Understanding User Installs article_title: Understanding User Installs page_order: 7 page_type: reference diff --git a/_docs/_user_guide/engagement_tools/locations_and_geofences.md b/_docs/_user_guide/engagement_tools/locations_and_geofences.md index e67c7421643..2492546fb38 100644 --- a/_docs/_user_guide/engagement_tools/locations_and_geofences.md +++ b/_docs/_user_guide/engagement_tools/locations_and_geofences.md @@ -4,7 +4,7 @@ article_title: Locations and Geofences page_order: 6 layout: dev_guide guide_top_header: "Locations and Geofences" -guide_top_text: "The ubiquity and flexibility of mobile technology allows marketers, product managers, and growth teams to reach their users everywhere, blurring the lines between digital and real-world experiences. Refer to the articles in this section to learn more about location tracking, creating geofences, mobile integrations, and more.

**Geofences are only available in select Braze packages. Reach out to your Braze customer success manager to get started.**" +guide_top_text: "The ubiquity and flexibility of mobile technology allows marketers, product managers, and growth teams to reach their users everywhere, blurring the lines between digital and real-world experiences. Refer to the articles in this section to learn more about location tracking, creating geofences, mobile integrations, and more." page_type: landing tool: Location description: "This landing page is home to articles on Locations and Geofences. Here, you can find resources on location tracking, creating geofences, mobile integrations, and more." @@ -38,5 +38,5 @@ With Braze, you can create and enhance relationships with your users based upon You can gather and utilize user location data in a couple of ways: - When a user opens your app, location tracking captures their most recent locations using GPS location data. This allows you to see where your users have been and segment based on this data. -- Geofences are defined virtual geographic areas. If a user has enabled background location tracking, you can use geofences to trigger campaigns in real-time when a user is in a geofence. Geofences are only available in select Braze packages. For access, reach out to your Braze representative. +- Geofences are defined virtual geographic areas. If a user has enabled background location tracking, you can use geofences to trigger campaigns in real-time when a user is in a geofence.


\ No newline at end of file diff --git a/_docs/_user_guide/message_building_by_channel/email/gmail_promotions_tab.md b/_docs/_user_guide/message_building_by_channel/email/gmail_promotions_tab.md index 777d16e89f1..c9a5b11166c 100644 --- a/_docs/_user_guide/message_building_by_channel/email/gmail_promotions_tab.md +++ b/_docs/_user_guide/message_building_by_channel/email/gmail_promotions_tab.md @@ -24,35 +24,36 @@ channel: The Promotions script will only appear if your email lands in the Gmail **Promotions Tab**. Currently, Gmail uses algorithms to determine where your email will land. However, if a user ever marks your email as a promotion, Gmail's algorithm would be ignored, and your email will automatically land in the **Promotions Tab** moving forward. {% endalert %} -### Customize your card +### Include a discount offer -You can customize many variables for your card, which will map to the following locations shown in the card layout. +Setting up a discount offer allows you to specify the valid dates for a discount. After determining your discount offer, select a start date and time. You'll have the option of ending your discount offer at a specific time, or selecting to never end it. -![Card layout that maps out the parameters for the company logo, sender, subject line, discount offer and discount code, and related images.][4] +### Customize your product carousel + +Promotion cards in your product carousel are helpful to provide images to your offer. You can also customize variables in your product carousel and include up to 10 image previews, where each image is unique. | Customizable Variable | Description | |---|---| -| Company Logo | Logos should be a square or circle shape and uploaded in `https`, not `http`.| -| Product Image (Single Image Preview) | This is a blank canvas for bringing in product or lifestyle images. In Gmail's preview, they show a sample image that is "`538x138` "with a "`3.9` "aspect ratio. | -| Discount Offer (Deal Badge) | One or two words used to quickly highlight an offer or as a call to action, such as "Free Gift", "2 for 1", or "Limited Offer." | -| Discount Code (Promotion Code) | Use your regular promo code. Only use if there is a promo code. | -| Expiration Date | The start date should be when your email sends, or the promotion starts (if this date is in the future, your email **will not populate** in a bundle). The end date should only be used if you have an expiring offer, and the date needs to be in the future. Old or past-due expiration dates will cause our system to see the offer as stale and will not preview your email. | +| Image URL | The URL to your image. Each image in your produc carousel must have a unique URL and use the same aspect ratio (4:5, 1:1, 1.91:1). | +| Target URL | The link for your promotion. | +| Headline | (optional) One or two sentence description for the promotion. Displays under the preview image. | +| Currency | (optional) The currency of the price. | +| Price | The price of the promotion. | +| Discount Value | The amount discounted from the original price. | {: .reset-td-br-1 .reset-td-br-2} {% alert tip %} -We recommend uploading your logo and product image to the Braze Media Library, then copy and pasting the URLs into the appropriate fields. Only static image formats (PNG and JPEG), are accepted. Some image formats (GIF) will upload but not display as expected. +We recommend uploading your product images to the Braze Media Library, then copy and pasting the URLs into the appropriate fields. Only static image formats (PNG and JPEG), are accepted. Some image formats (GIF) will upload but not display as expected. {% endalert %} ### Best practices -In addition to adhering to these best practices recommended by Gmail, you can also see what you cards look like with their [Preview your annotations tool][5]. +In general, adhere to these [best practices recommended by Gmail][8]. -{% alert important %} +{% alert tip %} While you can use Liquid within this script, we strongly suggest that you test your messaging as much as possible to avoid an error. {% endalert %} -![An example of what your preview may look like when testing on the Gmail site.][6] - #### Incorporating images Gmail has seen better results with strong imagery related to the email message. Gmail does not recommend using a text-only design, as this space was designed to bring that visual language, vital to email marketing, to the preview. Don't use images with cut-off text or repeat images in multiple campaigns. @@ -78,3 +79,4 @@ Furthermore, Gmail has a density cap on how many product carousels appear in a u [5]: https://developers.google.com/gmail/promotab/overview#preview_your_annotations [6]: {% image_buster /assets/img/gmail_preview.png %} [7]: {{site.baseurl}}/user_guide/message_building_by_channel/email/creating_an_email_campaign/ +[8]: https://developers.google.com/gmail/promotab/best-practices diff --git a/_docs/_user_guide/message_building_by_channel/email/managing_user_subscriptions.md b/_docs/_user_guide/message_building_by_channel/email/managing_user_subscriptions.md index 9fbcba1767b..fe84d3334bb 100644 --- a/_docs/_user_guide/message_building_by_channel/email/managing_user_subscriptions.md +++ b/_docs/_user_guide/message_building_by_channel/email/managing_user_subscriptions.md @@ -1,5 +1,5 @@ --- -nav_title: Email subscriptions +nav_title: Email Subscriptions article_title: User Subscriptions page_order: 4 description: "This reference article covers the different user subscription states, how to create and manage subscription groups, and how to segment users based on their subscriptions." @@ -203,4 +203,4 @@ For example, this can be useful if you want to target users who have neither opt [3]: {% image_buster /assets/img/push_example.png %} [5]: {{site.baseurl}}/user_guide/engagement_tools/segments/using_user_search/ [identifier]: {{site.baseurl}}/api/endpoints/export/user_data/post_users_identifier/ -[segment]: {{site.baseurl}}/api/endpoints/export/user_data/post_users_segment/ \ No newline at end of file +[segment]: {{site.baseurl}}/api/endpoints/export/user_data/post_users_segment/ diff --git a/_lang/fr/_api/api_limits.md b/_lang/fr/_api/api_limits.md index 5d401acd22b..dd1e8ba63d8 100644 --- a/_lang/fr/_api/api_limits.md +++ b/_lang/fr/_api/api_limits.md @@ -37,9 +37,9 @@ Ces limites par défaut peuvent être augmentées sur demande. Contactez votre g | [`/subscription/status/set`][19] | 5 000 demandes par minute. | | [`/preference_center/v1/{preferenceCenterExternalId}/url/{userId}`][26]
[`/preference_center/v1/list`][27]
[`/preference_center/v1/{preferenceCenterExternalId}`][28] | 1 000 demandes par minute par groupe d’apps. | | [`/preference_center/v1`][29]
[`/preference_center/v1/{preferenceCenterExternalId}`][30] | 10 demandes par minute par groupe d’apps. | -| [`/catalogs/catalog_name`][31]
[`/catalogs`][32]
[`/catalogs`][33] | 5 demandes par minute, partagées entre les endpoints. | -| [`/catalogs/catalog_name/items`][34]
[`/catalogs/catalog_name/items`][35]
[`/catalogs/catalog_name/items`][36] | 100 demandes par minute, partagées entre les endpoints. | -| [`/catalogs/catalog_name/items/item_id`][37]
[`/catalogs/catalog_name/items/item_id`][38]
[`/catalogs/catalog_name/items`][39]
[`/catalogs/catalog_name/items/item_id`][40]
[`/catalogs/catalog_name/items/item_id`][41] | 50 demandes par minute, partagées entre les endpoints. | +| [`DELETE: /catalogs/{catalog_name}`][31]
[`GET: /catalogs`][32]
[`POST: /catalogs`][33] | 5 demandes par minute, partagées entre les endpoints. | +| [`DELETE: /catalogs/{catalog_name}/items`][34]
[`PATCH: /catalogs/{catalog_name}/items`][35]
[`POST: /catalogs/{catalog_name}/items`][36] | 100 demandes par minute, partagées entre les endpoints. | +| [`DELETE: /catalogs/{catalog_name}/items/{item_id}`][37]
[`GET: /catalogs/{catalog_name}/items/{item_id}`][38]
[`GET: /catalogs/{catalog_name}/items`][39]
[`PATCH: /catalogs/{catalog_name}/items/{item_id}`][40]
[`POST: /catalogs/{catalog_name}/items/{item_id}`][41] | 50 demandes par minute, partagées entre les endpoints. | | [`GET: /scim/v2/Users/YOUR_ID_HERE`][22]
[`GET: /scim/v2/Users?filter=userName eq "user@test.com"`][43]
[`PUT: /scim/v2/Users/YOUR_ID_HERE`][25]
[`DELETE: /scim/v2/Users/YOUR_ID_HERE`][24]
[`POST: /scim/v2/Users/`][23] | 5 000 demandes par jour, partagées entre les endpoints. | {: .reset-td-br-1 .reset-td-br-2} @@ -87,17 +87,16 @@ Si vous avez des questions sur les limites d’API, contactez votre gestionnaire ### Délai optimal entre les endpoints {% alert note %} -Nous vous recommandons de laisser un délai de 5 minutes entre des appels d’endpoints multiples consécutifs pour réduire les possibilités d’erreur. +Nous vous recommandons de laisser un délai de 5 minutes entre des appels d’endpoint consécutifs pour réduire les possibilités d’erreur. {% endalert %} Il est crucial de comprendre le délai optimal entre les endpoints lors de la réalisation d’appels consécutifs vers l’API Braze. Des problèmes surviennent lorsque les endpoints dépendent de la réussite du traitement d’autres endpoints, et s’ils sont appelés trop tôt, ils peuvent provoquer des erreurs. Par exemple, si vous assignez un alias à un utilisateur via notre endpoint `/user/alias/new`, puis que vous appuyez sur cet alias pour envoyer un événement personnalisé via notre endpoint `/users/track`, combien de temps devrez-vous attendre ? -Dans des conditions normales, le temps pour que la cohérence éventuelle de nos données se produise est de 10 à 100 ms (1/10 d’une seconde). Cependant, il peut y avoir des cas où il faut plus longtemps pour que cette cohérence se produise. Par conséquent, nous vous recommandons de prévoir un délai de 5 minutes avant d’appeler des endpoints multiples afin de minimiser la probabilité d’erreur. Cette recommandation ne s’applique pas pour des appels d’endpoint consécutifs vers le même endpoint. +Dans des conditions normales, le temps pour que la cohérence éventuelle de nos données se produise est de 10 à 100 ms (1/10 d’une seconde). Cependant, il peut y avoir des cas où il faut plus longtemps pour que cette cohérence se produise. Par conséquent, nous vous recommandons de prévoir un délai de 5 minutes entre les appels suivants afin de minimiser la probabilité d’erreur. [1]: {{site.baseurl}}/api/endpoints/messaging/ [2]: {{site.baseurl}}/api/objects_filters/connected_audience/ [support]: {{site.baseurl}}/braze_support/ - [10]: {{site.baseurl}}/api/endpoints/user_data/post_user_track/ [11]: {{site.baseurl}}/api/endpoints/export/user_data/post_users_identifier/ [12]: {{site.baseurl}}/api/endpoints/user_data/post_user_delete/ @@ -121,9 +120,9 @@ Dans des conditions normales, le temps pour que la cohérence éventuelle de nos [28]: {{site.baseurl}}/api/endpoints/preference_center/get_view_details_preference_center/ [29]: {{site.baseurl}}/api/endpoints/preference_center/post_create_preference_center/ [30]: {{site.baseurl}}/api/endpoints/preference_center/put_update_preference_center/ -[31]: {{site.baseurl}}/api/endpoints/catalogs/synchronous_catalogs/delete_catalog/ -[32]: {{site.baseurl}}/api/endpoints/catalogs/synchronous_catalogs/get_list_catalogs/ -[33]: {{site.baseurl}}/api/endpoints/catalogs/synchronous_catalogs/post_create_catalog/ +[31]: {{site.baseurl}}/api/endpoints/catalogs/catalog_management/synchronous/delete_catalog/ +[32]: {{site.baseurl}}/api/endpoints/catalogs/catalog_management/synchronous/get_list_catalogs/ +[33]: {{site.baseurl}}/api/endpoints/catalogs/catalog_management/synchronous/post_create_catalog/ [34]: {{site.baseurl}}/api/endpoints/catalogs/catalog_items/asynchronous/delete_catalog_items_bulk/ [35]: {{site.baseurl}}/api/endpoints/catalogs/catalog_items/asynchronous/patch_catalog_items_bulk/ [36]: {{site.baseurl}}/api/endpoints/catalogs/catalog_items/asynchronous/post_create_catalog_items_bulk/ diff --git a/_lang/fr/_api/endpoints/catalogs/catalog_items/asynchronous/delete_catalog_items_bulk.md b/_lang/fr/_api/endpoints/catalogs/catalog_items/asynchronous/delete_catalog_items_bulk.md index e69e8e573b9..c2f7b82f119 100644 --- a/_lang/fr/_api/endpoints/catalogs/catalog_items/asynchronous/delete_catalog_items_bulk.md +++ b/_lang/fr/_api/endpoints/catalogs/catalog_items/asynchronous/delete_catalog_items_bulk.md @@ -17,9 +17,11 @@ description: "Cet article présente en détail l’endpoint Braze Supprimer plus Utilisez cet endpoint pour supprimer plusieurs produits de votre catalogue. Chaque requête peut prendre en charge jusqu’à 50 objets. Cet endpoint est asynchrone. +{% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#647c82e8-8b38-4df2-bde2-b1d8e19fd332 {% endapiref %} + ## Limite de débit -Cet endpoint a une limitation du débit partagée de 100 requêtes par minute entre tous les endpoints asynchrones de produits du catalogue. +{% multi_lang_include rate_limits.md endpoint='asynchronous catalog item' %} ## Paramètres de chemin diff --git a/_lang/fr/_api/endpoints/catalogs/catalog_items/asynchronous/patch_catalog_items_bulk.md b/_lang/fr/_api/endpoints/catalogs/catalog_items/asynchronous/patch_catalog_items_bulk.md index d827d3f4251..0f8d127ae37 100644 --- a/_lang/fr/_api/endpoints/catalogs/catalog_items/asynchronous/patch_catalog_items_bulk.md +++ b/_lang/fr/_api/endpoints/catalogs/catalog_items/asynchronous/patch_catalog_items_bulk.md @@ -18,9 +18,11 @@ description: "Cet article présente en détail l’endpoint Braze Éditer plusie Utilisez cet endpoint pour éditer plusieurs produits de votre catalogue. Chaque requête peut prendre en charge jusqu’à 50 objets. Cet endpoint est asynchrone. +{% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#03f3548e-4139-4f60-812d-7e1a695a738a {% endapiref %} + ## Limite de débit -Cet endpoint a une limitation du débit partagée de 100 requêtes par minute entre tous les endpoints asynchrones de produits du catalogue. +{% multi_lang_include rate_limits.md endpoint='asynchronous catalog item' %} ## Paramètres de chemin diff --git a/_lang/fr/_api/endpoints/catalogs/catalog_items/asynchronous/post_create_catalog_items_bulk.md b/_lang/fr/_api/endpoints/catalogs/catalog_items/asynchronous/post_create_catalog_items_bulk.md index 0f7c1865ec4..71fff646d73 100644 --- a/_lang/fr/_api/endpoints/catalogs/catalog_items/asynchronous/post_create_catalog_items_bulk.md +++ b/_lang/fr/_api/endpoints/catalogs/catalog_items/asynchronous/post_create_catalog_items_bulk.md @@ -17,9 +17,11 @@ description: "Cet article présente en détail l’endpoint Braze Créer plusieu Utilisez cet endpoint pour créer plusieurs produits dans votre catalogue. Chaque requête peut prendre en charge jusqu’à 50 objets. Cet endpoint est asynchrone. +{% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#cea18bb3-b83a-4160-81fe-8cd42aa6e7cc {% endapiref %} + ## Limite de débit -Cet endpoint a une limitation du débit partagée de 100 requêtes par minute entre tous les endpoints asynchrones de produits du catalogue. +{% multi_lang_include rate_limits.md endpoint='asynchronous catalog item' %} ## Paramètres de chemin diff --git a/_lang/fr/_api/endpoints/catalogs/catalog_items/synchronous/delete_catalog_item.md b/_lang/fr/_api/endpoints/catalogs/catalog_items/synchronous/delete_catalog_item.md index e7ba461f247..3d16fe56371 100644 --- a/_lang/fr/_api/endpoints/catalogs/catalog_items/synchronous/delete_catalog_item.md +++ b/_lang/fr/_api/endpoints/catalogs/catalog_items/synchronous/delete_catalog_item.md @@ -17,13 +17,11 @@ description: "Cet article présente en détail l’endpoint Braze Supprimer un p Utilisez cet endpoint pour supprimer un produit de votre catalogue. -## Limite de débit - -Cet endpoint a une limitation du débit partagée de 50 requêtes par minute entre tous les endpoints synchronisés de produits du catalogue. +{% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#0dcce797-1346-472f-9384-082f14541689 {% endapiref %} -## Paramètres de demande +## Limite de débit -Cet endpoint n’a pas de corps de demande. +{% multi_lang_include rate_limits.md endpoint='synchronous catalog item' %} ## Paramètres de chemin @@ -33,6 +31,10 @@ Cet endpoint n’a pas de corps de demande. | `item_id` | Requis | String | L’ID du produit du catalogue. | {: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} +## Paramètres de demande + +Cet endpoint n’a pas de corps de demande. + ## Exemple de demande ``` diff --git a/_lang/fr/_api/endpoints/catalogs/catalog_items/synchronous/get_catalog_item_details.md b/_lang/fr/_api/endpoints/catalogs/catalog_items/synchronous/get_catalog_item_details.md index 09b4402df7b..5960f30adf5 100644 --- a/_lang/fr/_api/endpoints/catalogs/catalog_items/synchronous/get_catalog_item_details.md +++ b/_lang/fr/_api/endpoints/catalogs/catalog_items/synchronous/get_catalog_item_details.md @@ -17,9 +17,11 @@ description: "Cet article présente en détail l’endpoint Braze Lister les dé Utilisez cet endpoint pour renvoyer un produit de catalogue et son contenu. +{% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#52c6631c-7366-48e5-9e0e-16de7b6285cc {% endapiref %} + ## Limite de débit -Cet endpoint a une limitation du débit partagée de 50 requêtes par minute entre tous les endpoints synchronisés de produits du catalogue. +{% multi_lang_include rate_limits.md endpoint='synchronous catalog item' %} ## Paramètres de chemin diff --git a/_lang/fr/_api/endpoints/catalogs/catalog_items/synchronous/get_catalog_items_details_bulk.md b/_lang/fr/_api/endpoints/catalogs/catalog_items/synchronous/get_catalog_items_details_bulk.md index 753f0c9cf4e..d93fc3d9bab 100644 --- a/_lang/fr/_api/endpoints/catalogs/catalog_items/synchronous/get_catalog_items_details_bulk.md +++ b/_lang/fr/_api/endpoints/catalogs/catalog_items/synchronous/get_catalog_items_details_bulk.md @@ -17,9 +17,11 @@ description: "Cet article présente en détail l’endpoint Braze Lister les dé Utilisez cet endpoint pour retourner plusieurs produits du catalogue et leur contenu. +{% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#63a19dd5-10e0-4649-bdf0-097216748bbb {% endapiref %} + ## Limite de débit -Cet endpoint a une limitation du débit partagée de 50 requêtes par minute entre tous les endpoints synchronisés de produits du catalogue. +{% multi_lang_include rate_limits.md endpoint='synchronous catalog item' %} ## Paramètres de chemin diff --git a/_lang/fr/_api/endpoints/catalogs/catalog_items/synchronous/patch_catalog_item.md b/_lang/fr/_api/endpoints/catalogs/catalog_items/synchronous/patch_catalog_item.md index 416ddd360ec..32d68478278 100644 --- a/_lang/fr/_api/endpoints/catalogs/catalog_items/synchronous/patch_catalog_item.md +++ b/_lang/fr/_api/endpoints/catalogs/catalog_items/synchronous/patch_catalog_item.md @@ -17,9 +17,11 @@ description: "Cet article présente en détail l’endpoint Braze Éditer un pro Utilisez cet endpoint pour éditer un produit de votre catalogue. +{% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#e35976ae-ff77-42b7-b691-a883c980d8c0 {% endapiref %} + ## Limite de débit -Cet endpoint a une limitation du débit partagée de 50 requêtes par minute entre tous les endpoints synchronisés de produits du catalogue. +{% multi_lang_include rate_limits.md endpoint='synchronous catalog item' %} ## Paramètres de chemin diff --git a/_lang/fr/_api/endpoints/catalogs/catalog_items/synchronous/post_create_catalog_item.md b/_lang/fr/_api/endpoints/catalogs/catalog_items/synchronous/post_create_catalog_item.md index f5a16fe7f36..c3a48a1b215 100644 --- a/_lang/fr/_api/endpoints/catalogs/catalog_items/synchronous/post_create_catalog_item.md +++ b/_lang/fr/_api/endpoints/catalogs/catalog_items/synchronous/post_create_catalog_item.md @@ -17,9 +17,11 @@ description: "Cet article présente en détail l’endpoint Braze Créer un prod Utilisez cet endpoint pour créer un produit dans votre catalogue. +{% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#820c305b-ea6a-4b71-811a-55003a212a40 {% endapiref %} + ## Limite de débit -Cet endpoint a une limitation du débit partagée de 50 requêtes par minute entre tous les endpoints synchronisés de produits du catalogue. +{% multi_lang_include rate_limits.md endpoint='synchronous catalog item' %} ## Paramètres de chemin diff --git a/_lang/fr/_api/endpoints/catalogs/catalog_management/synchronous/delete_catalog.md b/_lang/fr/_api/endpoints/catalogs/catalog_management/synchronous/delete_catalog.md index f2a68d3b2be..7aea51a319f 100644 --- a/_lang/fr/_api/endpoints/catalogs/catalog_management/synchronous/delete_catalog.md +++ b/_lang/fr/_api/endpoints/catalogs/catalog_management/synchronous/delete_catalog.md @@ -17,9 +17,11 @@ description: "Cet article présente en détail l’endpoint Braze Supprimer un c Utilisez cet endpoint pour supprimer un catalogue. +{% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#c0915a86-797a-4486-8217-24cd1c689d0f {% endapiref %} + ## Limite de débit -Cet endpoint a une limitation du débit partagée de 5 requêtes par minute entre tous les endpoints synchronisés du catalogue. +{% multi_lang_include rate_limits.md endpoint='synchronous catalog' %} ## Paramètres de chemin @@ -28,10 +30,6 @@ Cet endpoint a une limitation du débit partagée de 5 requêtes par minute ent | `catalog_name` | Requis | String | Nom du catalogue. | {: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} -## Paramètres de demande - -Cet endpoint n’a pas de corps de demande. - ## Exemple de demande ``` @@ -46,7 +44,7 @@ Deux réponses de code de statut existent pour cet endpoint : `200` et `404`. ### Exemple de réponse réussie -Le code de statut `200` pourrait renvoyer le corps de réponse suivant. +Le code de statut `200` pourrait renvoyer le corps de réponse suivant : ```json { diff --git a/_lang/fr/_api/endpoints/catalogs/catalog_management/synchronous/get_list_catalogs.md b/_lang/fr/_api/endpoints/catalogs/catalog_management/synchronous/get_list_catalogs.md index 9fa4f8225d5..7894ba5f87c 100644 --- a/_lang/fr/_api/endpoints/catalogs/catalog_management/synchronous/get_list_catalogs.md +++ b/_lang/fr/_api/endpoints/catalogs/catalog_management/synchronous/get_list_catalogs.md @@ -17,17 +17,17 @@ description: "Cet article présente en détail l’endpoint Braze Lister des cat Utilisez cet endpoint pour renvoyer une liste de catalogues dans le groupe d’apps. -## Limite de débit +{% multi_lang_include rate_limits.md endpoint='delete dashboard user' %} -Cet endpoint a une limitation du débit partagée de 5 requêtes par minute entre tous les endpoints synchronisés du catalogue. +{% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#7d65fb86-ccf7-423f-9eb2-f68ab36df824 {% endapiref %} -## Paramètres de chemin +## Limite de débit -Cet endpoint n’a pas de chemin de paramètres. +{% multi_lang_include rate_limits.md endpoint='synchronous catalog' %} -## Paramètres de demande +## Paramètres de chemin et de requête -Cet endpoint n’a pas de corps de demande. +Cet endpoint n’a pas de paramètres de chemin ni de requête. ### Exemple de demande diff --git a/_lang/fr/_api/endpoints/catalogs/catalog_management/synchronous/post_create_catalog.md b/_lang/fr/_api/endpoints/catalogs/catalog_management/synchronous/post_create_catalog.md index 8c0c4a9d6e4..714a160bcae 100644 --- a/_lang/fr/_api/endpoints/catalogs/catalog_management/synchronous/post_create_catalog.md +++ b/_lang/fr/_api/endpoints/catalogs/catalog_management/synchronous/post_create_catalog.md @@ -17,9 +17,11 @@ description: "Cet article présente en détail l’endpoint Braze Créer un cata Utilisez cet endpoint pour créer un catalogue. +{% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#af9f3e2d-b7e7-49e7-aa64-f4652892be6e {% endapiref %} + ## Limite de débit -Cet endpoint a une limitation du débit partagée de 5 requêtes par minute entre tous les endpoints synchronisés du catalogue. +{% multi_lang_include rate_limits.md endpoint='synchronous catalog' %} ## Paramètres de demande diff --git a/_lang/fr/_api/endpoints/email/get_list_hard_bounces.md b/_lang/fr/_api/endpoints/email/get_list_hard_bounces.md index f49a611e2e6..0e390e7460a 100644 --- a/_lang/fr/_api/endpoints/email/get_list_hard_bounces.md +++ b/_lang/fr/_api/endpoints/email/get_list_hard_bounces.md @@ -5,7 +5,7 @@ search_tag: Endpoint page_order: 0 layout: api_page page_type: reference -description: "Cet article décrit l’utilisation et les paramètres pour se servir de l’endpoint Braze Récupérer une liste d’adresses e-mail avec rebond élevé." +description: "Cet article présente en détail l’endpoint Braze Interroger ou Lister les adresses e-mail avec rebond élevé." --- {% api %} diff --git a/_lang/fr/_api/endpoints/email/get_query_unsubscribed_email_addresses.md b/_lang/fr/_api/endpoints/email/get_query_unsubscribed_email_addresses.md index 56996cf97d0..42f99b60c74 100644 --- a/_lang/fr/_api/endpoints/email/get_query_unsubscribed_email_addresses.md +++ b/_lang/fr/_api/endpoints/email/get_query_unsubscribed_email_addresses.md @@ -5,7 +5,7 @@ search_tag: Endpoint page_order: 1 layout: api_page page_type: reference -description: "Cet article décrit l’utilisation et les paramètres pour se servir de l’endpoint Braze Obtenir les désinscriptions aux e-mails." +description: "Cet article présente en détail l’endpoint Braze Récupérer la liste ou Interroger les désabonnements par e-mail." --- {% api %} diff --git a/_lang/fr/_api/endpoints/email/post_blacklist.md b/_lang/fr/_api/endpoints/email/post_blacklist.md index 2bbf5119d29..395627e174b 100644 --- a/_lang/fr/_api/endpoints/email/post_blacklist.md +++ b/_lang/fr/_api/endpoints/email/post_blacklist.md @@ -6,7 +6,7 @@ page_order: 10 layout: api_page page_type: reference alias: /blacklist/ -description: "Cet article décrit l’utilisation et les paramètres pour ajouter à la liste noire des adresses e-mail d’utilisateur à l’aide de l’endpoint Braze Ajouter des e-mails à la liste noire." +description: "Cet article présente en détail l’endpoint Braze Mettre des e-mails en liste noire." --- {% api %} diff --git a/_lang/fr/_api/endpoints/email/post_blocklist.md b/_lang/fr/_api/endpoints/email/post_blocklist.md index 97502abe52a..fc9283bff1f 100644 --- a/_lang/fr/_api/endpoints/email/post_blocklist.md +++ b/_lang/fr/_api/endpoints/email/post_blocklist.md @@ -5,7 +5,7 @@ search_tag: Endpoint page_order: 5 layout: api_page page_type: reference -description: "Cet article décrit l’utilisation et les paramètres pour ajouter à la liste noire des adresses e-mail d’utilisateur à l’aide de l’endpoint Braze Post Ajouter des e-mails à la liste de blocage." +description: "Cet article présente en détail l’endpoint Braze Mettre des e-mails en liste de blocage." --- {% api %} diff --git a/_lang/fr/_api/endpoints/email/post_email_subscription_status.md b/_lang/fr/_api/endpoints/email/post_email_subscription_status.md index 57eb56500f0..35ede53c751 100644 --- a/_lang/fr/_api/endpoints/email/post_email_subscription_status.md +++ b/_lang/fr/_api/endpoints/email/post_email_subscription_status.md @@ -5,7 +5,7 @@ search_tag: Endpoint page_order: 2 layout: api_page page_type: reference -description: "Cet article décrit l’utilisation et les paramètres de modification du statut d’abonnement d’un utilisateur à l’aide de l’endpoint Braze Post statut de l’abonnement aux e-mails." +description: "Cet article présente en détail l’endpoint Braze Modifier le statut d’abonnement aux e-mails de l’utilisateur." --- {% api %} diff --git a/_lang/fr/_api/endpoints/email/post_remove_hard_bounces.md b/_lang/fr/_api/endpoints/email/post_remove_hard_bounces.md index 24796032a02..17a83fc4d05 100644 --- a/_lang/fr/_api/endpoints/email/post_remove_hard_bounces.md +++ b/_lang/fr/_api/endpoints/email/post_remove_hard_bounces.md @@ -5,7 +5,7 @@ search_tag: Endpoint page_order: 3 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Supprimer les adresses e-mail avec rebond élevé et son utilisation." +description: "Cet article présente en détail l’endpoint Braze Supprimer les adresses e-mail avec rebond élevé." --- {% api %} diff --git a/_lang/fr/_api/endpoints/email/post_remove_spam.md b/_lang/fr/_api/endpoints/email/post_remove_spam.md index 4f7cb2e3722..c4abd013cb8 100644 --- a/_lang/fr/_api/endpoints/email/post_remove_spam.md +++ b/_lang/fr/_api/endpoints/email/post_remove_spam.md @@ -5,7 +5,7 @@ search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Supprimer les adresses e-mail de la liste des courriers indésirables et son utilisation." +description: "Cet article présente en détail l’endpoint Braze Supprimer les adresses e-mail de la liste des courriers indésirables." --- {% api %} diff --git a/_lang/fr/_api/endpoints/export/campaigns/get_campaign_analytics.md b/_lang/fr/_api/endpoints/export/campaigns/get_campaign_analytics.md index 695b1e7c036..f558c5ff108 100644 --- a/_lang/fr/_api/endpoints/export/campaigns/get_campaign_analytics.md +++ b/_lang/fr/_api/endpoints/export/campaigns/get_campaign_analytics.md @@ -1,15 +1,15 @@ --- -nav_title: "GET : Analyse de campagne" -article_title: "GET : Analyse de campagne" +nav_title: "GET : Exporter les analyses de campagne" +article_title: "GET : Exporter les analyses de campagne" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Obtenir les analyses de campagne." +description: "Cet article présente en détail l’endpoint Braze Exporter les analyses de campagne." --- {% api %} -# Endpoint Analyse de campagne +# Exporter les analyses de campagne {% apimethod get %} /campaigns/data_series {% endapimethod %} @@ -26,12 +26,13 @@ Utilisez cet endpoint pour récupérer quotidiennement une série de diverses st | Paramètre | Requis | Type de données | Description | | --------- | -------- | --------- | ----------- | -| `campaign_id` | Requis | String | Voir [Identifiant API de campagne]({{site.baseurl}}/api/identifier_types/).

Le `campaign_id` pour les campagnes API se trouvent sur la page **Developer Console (Console du développeur)** et la page **Campaign Details (Informations relatives à la campagne)** dans votre tableau de bord, sinon vous pouvez utiliser l’[endpoint Liste de campagnes](#campaign-list-endpoint). | +| `campaign_id` | Requis | String | Voir [identifiant API de campagne]({{site.baseurl}}/api/identifier_types/).

Le `campaign_id` pour les campagnes API se trouve sur la page **Developer Console (Console du développeur)** et la page **Campaign Details (Informations relatives à la campagne)** dans votre tableau de bord, sinon vous pouvez utiliser l’[endpoint Lister les campagnes](#campaign-list-endpoint). | | `length` | Requis | Entier | Nombre maximum de jours avant `ending_at` à inclure dans la série renvoyée. Doit être compris entre 1 et 100 (inclus). | | `ending_at` | Facultatif | DateTime
(chaîne de caractères [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601)) | Date à laquelle la série de données doit se terminer. Par défaut, l’heure de la demande. | {: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} ## Exemple de demande + {% raw %} ``` curl --location -g --request GET 'https://rest.iad-01.braze.com/campaigns/data_series?campaign_id={{campaign_identifier}}&length=7&ending_at=2020-06-28T23:59:59-5:00' \ @@ -230,7 +231,7 @@ Authorization: Bearer YOUR-REST-API-KEY } ``` -Les types de messages possibles sont `email`, `in_app_message`, `webhook`, `android_push`, `ios_push`, `kindle_push`, et `web_push`. Tous les types de messages des notifications push auront les mêmes statistiques que celles d’`android_push`. +Les types de messages possibles sont `email`, `in_app_message`, `webhook`, `android_push`, `ios_push`, `kindle_push` et `web_push`. Tous les types de messages des notifications push auront les mêmes statistiques que celles d’`android_push`. {% alert tip %} Pour obtenir de l’aide sur les exportations CSV et de l’API, consultez la section [Résolution des problèmes d’exportation]({{site.baseurl}}/user_guide/data_and_analytics/export_braze_data/export_troubleshooting/). diff --git a/_lang/fr/_api/endpoints/export/campaigns/get_campaign_details.md b/_lang/fr/_api/endpoints/export/campaigns/get_campaign_details.md index 32a3a5c4d6e..5ef6ebeffa4 100644 --- a/_lang/fr/_api/endpoints/export/campaigns/get_campaign_details.md +++ b/_lang/fr/_api/endpoints/export/campaigns/get_campaign_details.md @@ -1,20 +1,20 @@ --- -nav_title: "GET : Informations relatives à la campagne" -article_title: "GET : Informations relatives à la campagne" +nav_title: "GET : Exporter les informations relatives à la campagne" +article_title: "GET : Exporter les informations relatives à la campagne" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Obtenir les informations relatives à la campagne." +description: "Cet article présente en détail l’endpoint Braze Exporter les informations relatives à la campagne." --- {% api %} -# Endpoint Informations relatives à la campagne +# Exporter les informations relatives à la campagne {% apimethod get %} /campaigns/details {% endapimethod %} -Utilisez cet endpoint pour récupérer des informations pertinentes sur une campagne spécifique, qui peuvent être identifiées par le `campaign_id`. Si vous souhaitez récupérer les données de Canvas, reportez-vous à l’endpoint [Informations relatives au Canvas]({{site.baseurl}}/api/endpoints/export/canvas/get_canvas_details/). +Utilisez cet endpoint pour récupérer des informations pertinentes sur une campagne spécifique, qui peuvent être identifiées par le `campaign_id`. Si vous souhaitez récupérer les données de Canvas, reportez-vous à l’endpoint [Exporter les informations relatives au Canvas]({{site.baseurl}}/api/endpoints/export/canvas/get_canvas_details/). {% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#aad2a811-7237-43b1-9d64-32042eabecd9 {% endapiref %} @@ -24,9 +24,9 @@ Utilisez cet endpoint pour récupérer des informations pertinentes sur une camp ## Paramètres de demande -| Paramètre | Requis | Type de données | Description | -| ------------- | -------- | --------- | ----------------------- | -| `campaign_id` | Requis | String | Voir [Identifiant API de campagne]({{site.baseurl}}/api/identifier_types/).

Le `campaign_id` pour les campagnes API se trouvent sur la page **Developer Console (Console du développeur)** et la page **Campaign Details (Informations relatives à la campagne)** dans votre tableau de bord, sinon vous pouvez utiliser l’[endpoint Liste de campagnes](#campaign-list-endpoint). | +| Paramètre | Requis | Type de données | Description | +| --------- | -------- | --------- | ----------- | +| `campaign_id` | Requis | String | Voir [identifiant API de campagne]({{site.baseurl}}/api/identifier_types/).

Le `campaign_id` pour les campagnes API se trouvent sur la page **Developer Console (Console du développeur)** et la page **Campaign Details (Informations relatives à la campagne)** dans votre tableau de bord, sinon vous pouvez utiliser l’[endpoint Exporter la liste des campagnes](#campaign-list-endpoint). | {: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} ## Exemple de demande @@ -39,8 +39,6 @@ curl --location -g --request GET 'https://rest.iad-01.braze.com/campaigns/detail ## Réponses -### Réponse API de l’endpoint Informations relatives à la campagne - ```json Content-Type: application/json Authorization: Bearer YOUR-REST-API-KEY @@ -68,11 +66,11 @@ Authorization: Bearer YOUR-REST-API-KEY } ``` -### Messages +### Messages par canal La réponse `messages` contiendra des informations sur chaque message. Voici des exemples de réponses de message pour chaque canal : -#### Canaux de notification push +#### Notification push ```json { @@ -82,7 +80,7 @@ La réponse `messages` contiendra des informations sur chaque message. Voici des } ``` -#### Canal d’e-mail +#### E-mail ```json { @@ -96,7 +94,7 @@ La réponse `messages` contiendra des informations sur chaque message. Voici des } ``` -#### Canal de message in-app +#### Messages in-app ```json { @@ -124,7 +122,7 @@ La réponse `messages` contiendra des informations sur chaque message. Voici des } ``` -#### Canal de carte de contenu +#### Cartes de contenu ```json { @@ -134,7 +132,7 @@ La réponse `messages` contiendra des informations sur chaque message. Voici des } ``` -#### Canal de webhook +#### Webhook ```json { @@ -147,7 +145,7 @@ La réponse `messages` contiendra des informations sur chaque message. Voici des } ``` -#### Canal SMS +#### SMS ```json { diff --git a/_lang/fr/_api/endpoints/export/campaigns/get_campaigns.md b/_lang/fr/_api/endpoints/export/campaigns/get_campaigns.md index 7e593d17625..cfa02b24a5d 100644 --- a/_lang/fr/_api/endpoints/export/campaigns/get_campaigns.md +++ b/_lang/fr/_api/endpoints/export/campaigns/get_campaigns.md @@ -1,15 +1,15 @@ --- -nav_title: "GET : Liste des campagnes" -article_title: "GET : Listes des campagnes" +nav_title: "GET : Exporter la liste des campagnes" +article_title: "GET : Exporter la liste des campagnes" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Obtenir la liste des campagnes." +description: "Cet article présente en détail l’endpoint Braze Exporter la liste des campagnes." --- {% api %} -# Endpoint Liste des campagnes +# Exporter la liste des campagnes {% apimethod get %} /campaigns/list {% endapimethod %} @@ -26,19 +26,20 @@ Utilisez cet endpoint pour exporter une liste de campagnes, chacune incluant son | Paramètre | Requis | Type de données | Description | | --------- | -------- | --------- | ----------- | -| `page` | Facultatif | Entier | La page des campagnes à renvoyer, par défaut sur 0 (renvoie le premier ensemble jusqu’à 100 éléments). | +| `page` | Facultatif | Entier | La page des campagnes à renvoyer, par défaut sur 0 (renvoie le premier ensemble jusqu’à 100 éléments). | | `include_archived` | Facultatif | Booléen | S’il faut inclure ou non des campagnes archivées, par défaut sur Faux. | | `sort_direction` | Facultatif | String | - Trier l’heure de création de la plus récente à la plus ancienne : indiquer la valeur `desc`.
- Trier l’heure de création de la plus ancienne à la plus récente : indiquer la valeur `asc`.

Si `sort_direction` n’est pas inclus, l’ordre par défaut est de la plus ancienne à la plus récente. | | `last_edit.time[gt]` | Facultatif | Date | Filtre les résultats et renvoie uniquement les campagnes qui ont été modifiées au-delà de l’heure indiquée jusqu’à maintenant. Le format est `yyyy-MM-DDTHH:mm:ss`. | {: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} -## Exemple de demande +## Exemple de demande + ``` curl --location -g --request GET 'https://rest.iad-01.braze.com/campaigns/list?page=0&include_archived=false&sort_direction=desc&last_edit.time[gt]=2020-06-28T23:59:59-5:00' \ --header 'Authorization: Bearer YOUR-REST-API-KEY' ``` -## Réponse API de l’endpoint Liste de campagnes +## Réponse ```json Content-Type: application/json diff --git a/_lang/fr/_api/endpoints/export/campaigns/get_send_analytics.md b/_lang/fr/_api/endpoints/export/campaigns/get_send_analytics.md index fc306e8090c..f985417051a 100644 --- a/_lang/fr/_api/endpoints/export/campaigns/get_send_analytics.md +++ b/_lang/fr/_api/endpoints/export/campaigns/get_send_analytics.md @@ -1,22 +1,22 @@ --- -nav_title: "GET : Envoyer des analyses" -article_title: "GET : Envoyer des analyses" +nav_title: "GET : Exporter l’analyse d’envoi" +article_title: "GET : Exporter l’analyse d’envoi" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze d’envoi d’analytiques." +description: "Cet article présente en détail l’endpoint Braze Exporter l’analyse d’envoi." --- {% api %} -# Endpoint Envoyer des analyses +# Exporter l’analyse d’envoi {% apimethod get %} /sends/data_series {% endapimethod %} Utilisez cet endpoint pour récupérer une série quotidienne de diverses statistiques pour un `send_id` suivi. Braze stocke les envois d’analyse pendant 14 jours après l’envoi. -Les conversions de campagne seront attribuées à l’ID d’envoi le plus récent qu’un utilisateur donné a reçu de la campagne. +Les conversions de campagne seront attribuées au `send_id` le plus récent qu’un utilisateur donné a reçu de la campagne. {% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#76f822a8-a13b-4bfb-b20e-72b5013dfe86 {% endapiref %} @@ -28,13 +28,14 @@ Les conversions de campagne seront attribuées à l’ID d’envoi le plus réce | Paramètre | Requis | Type de données | Description | | --------- | -------- | --------- |------------ | -| `campaign_id` | Requis | String | Voir [Identifiant API de campagne]({{site.baseurl}}/api/identifier_types/). | +| `campaign_id` | Requis | String | Voir [identifiant API de campagne]({{site.baseurl}}/api/identifier_types/). | | `send_id` | Requis | String | Voir [Identifiant API d’envoi]({{site.baseurl}}/api/identifier_types/). | | `length` | Requis | Entier | Nombre maximum de jours avant `ending_at` à inclure dans la série renvoyée. Doit être compris entre 1 et 100 (inclus). | | `ending_at` | Facultatif | DateTime
(chaîne de caractères [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601)) | Date à laquelle la série de données doit se terminer. Par défaut, l’heure de la demande. | {: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} ## Exemple de demande + {% raw %} ``` curl --location -g --request GET 'https://rest.iad-01.braze.com/sends/data_series?campaign_id={{campaign_identifier}}&send_id={{send_identifier}}&length=30&ending_at=2014-12-10T23:59:59-05:00' \ @@ -44,8 +45,6 @@ curl --location -g --request GET 'https://rest.iad-01.braze.com/sends/data_serie ## Réponse -### Réponse API de l’endpoint Envoyer des analyses - ```json Content-Type: application/json Authorization: Bearer YOUR-REST-API-KEY diff --git a/_lang/fr/_api/endpoints/export/canvas/get_canvas_analytics.md b/_lang/fr/_api/endpoints/export/canvas/get_canvas_analytics.md index 75e12f9d097..dd0c2997728 100644 --- a/_lang/fr/_api/endpoints/export/canvas/get_canvas_analytics.md +++ b/_lang/fr/_api/endpoints/export/canvas/get_canvas_analytics.md @@ -1,15 +1,15 @@ --- -nav_title: "GET : Analyse des séries de données de Canvas" -article_title: "GET : Analyse des séries de données de Canvas" +nav_title: "GET : Exporter l’analyse des séries de données de Canvas" +article_title: "GET : Exporter l’analyse des séries de données de Canvas" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Analyse des séries de données de Canvas." +description: "Cet article présente en détail l’endpoint Braze Exporter l’analyse des séries de données de Canvas." --- {% api %} -# Endpoint Analyse des séries de données de Canvas +# Exporter l’analyse des séries de données de Canvas {% apimethod get %} /canvas/data_series {% endapimethod %} @@ -30,12 +30,13 @@ Utilisez cet endpoint pour exporter des données de série temporelles pour un C | `ending_at` | Requis | DateTime
(chaîne de caractères [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601)) | Date à laquelle l’exportation de données doit se terminer. Par défaut, l’heure de la demande. | | `starting_at` | Facultatif* | DateTime
(chaîne de caractères [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601)) | Date à laquelle l’exportation de données doit commencer.

* `length` ou `starting_at` est nécessaire. | | `length` | Facultatif* | String | Nombre maximum de jours avant `ending_at` à inclure dans la série renvoyée. Doit être compris entre 1 et 14 (inclus).

* `length` ou `starting_at` est nécessaire. | -| `include_variant_breakdown` | Facultatif | Booléen | S’il faut inclure ou non des statistiques de variante (par défaut sur Faux). | -| `include_step_breakdown` | Facultatif | Booléen | S’il faut inclure ou non des statistiques d’étape (par défaut sur Faux). | -| `include_deleted_step_data` | Facultatif | Booléen | S’il faut inclure ou non des statistiques d’étape pour les étapes supprimées (par défaut sur Faux). | +| `include_variant_breakdown` | Facultatif | Booléen | S’il faut inclure ou non des statistiques de variante (par défaut sur `false`). | +| `include_step_breakdown` | Facultatif | Booléen | S’il faut inclure ou non des statistiques d’étape (par défaut sur `false`). | +| `include_deleted_step_data` | Facultatif | Booléen | S’il faut inclure ou non des statistiques d’étape pour les étapes supprimées (par défaut sur `false`). | {: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} ## Exemple de demande + {% raw %} ``` curl --location -g --request GET 'https://rest.iad-01.braze.com/canvas/data_series?canvas_id={{canvas_id}}&ending_at=2018-05-30T23:59:59-5:00&starting_at=2018-05-28T23:59:59-5:00&include_variant_breakdown=true&include_step_breakdown=true&include_deleted_step_data=true' \ diff --git a/_lang/fr/_api/endpoints/export/canvas/get_canvas_analytics_summary.md b/_lang/fr/_api/endpoints/export/canvas/get_canvas_analytics_summary.md index fb4b1e6a7a2..210363dde6c 100644 --- a/_lang/fr/_api/endpoints/export/canvas/get_canvas_analytics_summary.md +++ b/_lang/fr/_api/endpoints/export/canvas/get_canvas_analytics_summary.md @@ -1,15 +1,15 @@ --- -nav_title: "GET : Résumé analytique des données de Canvas" -article_title: "GET : Résumé analytique des données de Canvas" +nav_title: "GET : Exporter le résumé analytique des données de Canvas" +article_title: "GET : Exporter le résumé analytique des données de Canvas" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Résumé analytique des données de Canvas." +description: "Cet article présente en détail l’endpoint Braze Exporter le résumé analytique des données de Canvas." --- {% api %} -# Endpoint du résumé des données de Canvas +# Exporter le résumé des données Canvas {% apimethod get %} /canvas/data_summary {% endapimethod %} @@ -30,9 +30,9 @@ Utilisez cet endpoint pour exporter des cumuls de données de série temporelles | `ending_at` | Requis | DateTime
(chaîne de caractères [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601)) | Date à laquelle l’exportation de données doit se terminer. Par défaut, l’heure de la demande. | | `starting_at` | Facultatif* | DateTime
(chaîne de caractères [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601)) | Date à laquelle l’exportation de données doit commencer.

* `length` ou `starting_at` est nécessaire. | | `length` | Facultatif* | String | Nombre maximum de jours avant `ending_at` à inclure dans la série renvoyée. Doit être compris entre 1 et 14 (inclus).

* `length` ou `starting_at` est nécessaire. | -| `include_variant_breakdown` | Facultatif | Booléen | S’il faut inclure ou non des statistiques de variante (par défaut sur Faux). | -| `include_step_breakdown` | Facultatif | Booléen | S’il faut inclure ou non des statistiques d’étape (par défaut sur Faux). | -| `include_deleted_step_data` | Facultatif | Booléen | S’il faut inclure ou non des statistiques d’étape pour les étapes supprimées (par défaut sur Faux). | +| `include_variant_breakdown` | Facultatif | Booléen | S’il faut inclure ou non des statistiques de variante (par défaut sur `false`). | +| `include_step_breakdown` | Facultatif | Booléen | S’il faut inclure ou non des statistiques d’étape (par défaut sur `false`). | +| `include_deleted_step_data` | Facultatif | Booléen | S’il faut inclure ou non des statistiques d’étape pour les étapes supprimées (par défaut sur `false`). | {: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} ## Exemple de demande diff --git a/_lang/fr/_api/endpoints/export/canvas/get_canvas_details.md b/_lang/fr/_api/endpoints/export/canvas/get_canvas_details.md index 7a49976b29b..81c2928da90 100644 --- a/_lang/fr/_api/endpoints/export/canvas/get_canvas_details.md +++ b/_lang/fr/_api/endpoints/export/canvas/get_canvas_details.md @@ -1,15 +1,15 @@ --- -nav_title: "GET : Informations relatives au Canvas" -article_title: "GET : Informations relatives au Canvas" +nav_title: "GET : Exporter les détails du Canvas" +article_title: "GET : Exporter les détails du Canvas" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze des détails de Canvas." +description: "Cet article présente en détail l’endpoint Braze les détails du Canvas." --- {% api %} -# Endpoint Informations relatives au Canvas +# Exporter les détails du Canvas {% apimethod get %} /canvas/details {% endapimethod %} @@ -24,12 +24,13 @@ Utilisez cet endpoint pour exporter des métadonnées sur un Canvas, telles que ## Paramètres de demande -| Paramètre | Requis | Type de données | Description | -| ----------- | -------- | --------- | ---------------------- | +| Paramètre | Requis | Type de données | Description | +| --------- | -------- | --------- | ----------- | | `canvas_id` | Requis | String | Voir [Identifiant API Canvas]({{site.baseurl}}/api/identifier_types/) | {: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} ## Exemple de demande + {% raw %} ``` curl --location -g --request GET 'https://rest.iad-01.braze.com/canvas/details?canvas_id={{canvas_identifier}}' \ diff --git a/_lang/fr/_api/endpoints/export/canvas/get_canvases.md b/_lang/fr/_api/endpoints/export/canvas/get_canvases.md index 361c2808e8c..d281d7144a1 100644 --- a/_lang/fr/_api/endpoints/export/canvas/get_canvases.md +++ b/_lang/fr/_api/endpoints/export/canvas/get_canvases.md @@ -1,15 +1,15 @@ --- -nav_title: "GET : Liste des Canvas" -article_title: "GET : Liste des Canvas" +nav_title: "GET : Exporter la liste des Canvas" +article_title: "GET : Exporter la liste des Canvas" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze de la liste de Canvas." +description: "Cet article présente en détail l’endpoint Braze Exporter la liste des Canvas." --- {% api %} -# Endpoint Liste de Canvas +# Exporter la liste des Canvas {% apimethod get %} /canvas/list {% endapimethod %} @@ -28,13 +28,14 @@ Les Canvas archivés ne seront pas inclus dans la réponse API, sauf si le champ | Paramètre | Requis | Type de données | Description | | --------- | -------- | --------- | ----------- | -| `page` | Facultatif | Entier | La page des Canvas à renvoyer, par défaut sur `0` (renvoie le premier ensemble jusqu’à 100 éléments) | +| `page` | Facultatif | Entier | La page des Canvas à renvoyer, par défaut sur `0` (renvoie le premier ensemble jusqu’à 100 éléments) | | `include_archived` | Facultatif | Booléen | S’il faut inclure ou non des Canvas archivés, par défaut sur `false`. | | `sort_direction` | Facultatif | String | - Trier l’heure de création de la plus récente à la plus ancienne : indiquer la valeur `desc`.
- Trier l’heure de création de la plus ancienne à la plus récente : indiquer la valeur `asc`.

Si `sort_direction` n’est pas inclus, l’ordre par défaut est de la plus ancienne à la plus récente. | | `last_edit.time[gt]` | Facultatif | Date | Filtre les résultats et renvoie uniquement les Canvas qui ont été modifiés au-delà de l’heure indiquée jusqu’à maintenant. Le format est `yyyy-MM-DDTHH:mm:ss`. | {: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} ## Exemple de demande + ``` curl --location -g --request GET 'https://rest.iad-01.braze.com/canvas/list?page=1&include_archived=false&sort_direction=desc&last_edit.time[gt]=2020-06-28T23:59:59-5:00' \ --header 'Authorization: Bearer YOUR-REST-API-KEY' diff --git a/_lang/fr/_api/endpoints/export/custom_events/get_custom_events.md b/_lang/fr/_api/endpoints/export/custom_events/get_custom_events.md index 4bc72636f8f..b3d969b7afd 100644 --- a/_lang/fr/_api/endpoints/export/custom_events/get_custom_events.md +++ b/_lang/fr/_api/endpoints/export/custom_events/get_custom_events.md @@ -1,15 +1,15 @@ --- -nav_title: "GET : Liste des événements personnalisés" -article_title: "GET : Liste des événements personnalisés" +nav_title: "GET : Exporter la liste des événements personnalisés" +article_title: "GET : Exporter la liste des événements personnalisés" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Liste des événements personnalisés." +description: "Cet article présente en détail l’endpoint Braze Exporter la liste des événements personnalisés." --- {% api %} -# Obtenir la liste des événements personnalisés +# Exporter la liste des événements personnalisés {% apimethod get %} /events/list {% endapimethod %} @@ -53,15 +53,7 @@ Authorization: Bearer YOUR-REST-API-KEY ### Codes de réponse des erreurs fatales {#fatal-export} -Les codes d’état suivants et les messages d’erreur associés seront renvoyés si votre demande rencontre une erreur fatale. L’un de ces codes d’erreur indique qu’aucune donnée ne sera traitée. - -| Code d’erreur | Raison/Cause | -| ---------------- | ---------------------------------------------------------------- | -| 400 Demande erronée | Syntaxe incorrecte | -| 401 Non autorisé | Clé API REST inconnue ou manquante | -| 429 Débit limité | Limite de débit dépassée | -| 5XX | Erreur de serveur interne, vous devriez réessayer avec le délai exponentiel | -{: .reset-td-br-1 .reset-td-br-2} +Pour les codes de statut et les messages d’erreur associés qui seront renvoyés si votre demande rencontre une erreur fatale, consultez la section [Erreurs fatales et réponses]({{site.baseurl}}/api/errors/#fatal-errors). {% alert tip %} Pour obtenir de l’aide sur les exportations CSV et de l’API, consultez la section [Résolution des problèmes d’exportation]({{site.baseurl}}/user_guide/data_and_analytics/export_braze_data/export_troubleshooting/). diff --git a/_lang/fr/_api/endpoints/export/custom_events/get_custom_events_analytics.md b/_lang/fr/_api/endpoints/export/custom_events/get_custom_events_analytics.md index 3d6f6c4c10a..e7df33c6207 100644 --- a/_lang/fr/_api/endpoints/export/custom_events/get_custom_events_analytics.md +++ b/_lang/fr/_api/endpoints/export/custom_events/get_custom_events_analytics.md @@ -1,15 +1,15 @@ --- -nav_title: "GET : Analyse d’événements personnalisés" -article_title: "GET : Analyse d’événements personnalisés" +nav_title: "GET : Exporter l’analyse d’événements personnalisés" +article_title: "GET : Exporter l’analyse d’un événement personnalisé" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Analyse d’événements personnalisés." +description: "Cet article présente en détail l’endpoint Braze Exporter l’analyse d’événements personnalisés." --- {% api %} -# Analyse d’événements personnalisés +# Exporter l’analyse d’événements personnalisés {% apimethod get %} /events/data_series {% endapimethod %} @@ -61,15 +61,7 @@ Authorization: Bearer YOUR-REST-API-KEY ### Codes de réponse des erreurs fatales {#fatal-export} -Les codes d’état suivants et les messages d’erreur associés seront renvoyés si votre demande rencontre une erreur fatale. L’un de ces codes d’erreur indique qu’aucune donnée ne sera traitée. - -| Code d’erreur | Raison/Cause | -| ---------------- | ---------------------------------------------------------------- | -| 400 Demande erronée | Syntaxe incorrecte | -| 401 Non autorisé | Clé API REST inconnue ou manquante | -| 429 Débit limité | Limite de débit dépassée | -| 5XX | Erreur de serveur interne, vous devriez réessayer avec le délai exponentiel | -{: .reset-td-br-1 .reset-td-br-2} +Pour les codes de statut et les messages d’erreur associés qui seront renvoyés si votre demande rencontre une erreur fatale, consultez la section [Erreurs fatales et réponses]({{site.baseurl}}/api/errors/#fatal-errors). {% alert tip %} Pour obtenir de l’aide sur les exportations CSV et de l’API, consultez la section [Résolution des problèmes d’exportation]({{site.baseurl}}/user_guide/data_and_analytics/export_braze_data/export_troubleshooting/). diff --git a/_lang/fr/_api/endpoints/export/kpi/get_kpi_daily_new_users_date.md b/_lang/fr/_api/endpoints/export/kpi/get_kpi_daily_new_users_date.md index 818a74e1f9f..89685ebc43c 100644 --- a/_lang/fr/_api/endpoints/export/kpi/get_kpi_daily_new_users_date.md +++ b/_lang/fr/_api/endpoints/export/kpi/get_kpi_daily_new_users_date.md @@ -1,15 +1,15 @@ --- -nav_title: "GET : Nouveaux utilisateurs quotidiens par date" -article_title: "GET : Nouveaux utilisateurs quotidiens par date" +nav_title: "GET : Exporter les nouveaux utilisateurs quotidiens par date" +article_title: "GET : Exporter les nouveaux utilisateurs quotidiens par date" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Obtenir les nouveaux utilisateurs quotidiens." +description: "Cet article présente en détail l’endpoint Braze Exporter les nouveaux utilisateurs quotidiens." --- {% api %} -# Endpoint Nouveaux utilisateurs quotidiens +# Exporter les nouveaux utilisateurs quotidiens {% apimethod get %} /kpi/new_users/data_series {% endapimethod %} diff --git a/_lang/fr/_api/endpoints/export/kpi/get_kpi_dau_date.md b/_lang/fr/_api/endpoints/export/kpi/get_kpi_dau_date.md index f0e20d48715..0b2623b2b01 100644 --- a/_lang/fr/_api/endpoints/export/kpi/get_kpi_dau_date.md +++ b/_lang/fr/_api/endpoints/export/kpi/get_kpi_dau_date.md @@ -1,15 +1,15 @@ --- -nav_title: "GET : Utilisateurs actifs quotidiens par date" -article_title: "GET : Utilisateurs actifs quotidiens par date" +nav_title: "GET : Exporter les utilisateurs actifs quotidiens par date" +article_title: "GET : Exporter les utilisateurs actifs quotidiens par date" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Obtenir les utilisateurs actifs quotidiens." +description: "Cet article présente en détail l’endpoint Braze Exporter les utilisateurs actifs quotidiens." --- {% api %} -# Endpoint Utilisateurs actifs quotidien par date +# Exporter les utilisateurs actifs quotidiens par date {% apimethod get %} /kpi/dau/data_series {% endapimethod %} diff --git a/_lang/fr/_api/endpoints/export/kpi/get_kpi_mau_30_days.md b/_lang/fr/_api/endpoints/export/kpi/get_kpi_mau_30_days.md index 554b07a9b6d..ba7c9b80afe 100644 --- a/_lang/fr/_api/endpoints/export/kpi/get_kpi_mau_30_days.md +++ b/_lang/fr/_api/endpoints/export/kpi/get_kpi_mau_30_days.md @@ -1,15 +1,15 @@ --- -nav_title: "GET : Utilisateurs actifs mensuels des 30 derniers jours" -article_title: "GET : Utilisateurs actifs mensuels des 30 derniers jours" +nav_title: "GET : Exporter les utilisateurs actifs mensuels des 30 derniers jours" +article_title: "GET : Exporter les utilisateurs actifs mensuels des 30 derniers jours" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Obtenir les utilisateurs actifs mensuels." +description: "Cet article présente en détail l’endpoint Braze Exporter les utilisateurs actifs mensuels." --- {% api %} -# Endpoint Utilisateurs actifs mensuels +# Exporter les utilisateurs actifs mensuels {% apimethod get %} /kpi/mau/data_series {% endapimethod %} diff --git a/_lang/fr/_api/endpoints/export/kpi/get_kpi_uninstalls_date.md b/_lang/fr/_api/endpoints/export/kpi/get_kpi_uninstalls_date.md index 8a323105caf..4dab0564b0d 100644 --- a/_lang/fr/_api/endpoints/export/kpi/get_kpi_uninstalls_date.md +++ b/_lang/fr/_api/endpoints/export/kpi/get_kpi_uninstalls_date.md @@ -1,15 +1,15 @@ --- -nav_title: "GET : Indicateurs clé de performance pour les désinstallations quotidiennes d’application par date" -article_title: "GET : Indicateurs clé de performance pour les désinstallations quotidiennes d’application par date" +nav_title: "GET : Exporter les indicateurs clé de performance pour les désinstallations quotidiennes d’application par date" +article_title: "GET : Exporter les indicateurs clé de performance pour les désinstallations quotidiennes d’application par date" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Obtenir les désinstallations quotidiennes d’application." +description: "Cet article présente en détail l’endpoint Braze Exporter les désinstallations quotidiennes d’application par date." --- {% api %} -# Endpoint Désinstallations quotidiennes d’application par date +# Exporter les désinstallations quotidiennes d’application par date {% apimethod get %} /kpi/uninstalls/data_series {% endapimethod %} diff --git a/_lang/fr/_api/endpoints/export/news_feed/get_news_feed_card_analytics.md b/_lang/fr/_api/endpoints/export/news_feed/get_news_feed_card_analytics.md index 037694507c2..fe5fda27135 100644 --- a/_lang/fr/_api/endpoints/export/news_feed/get_news_feed_card_analytics.md +++ b/_lang/fr/_api/endpoints/export/news_feed/get_news_feed_card_analytics.md @@ -1,15 +1,15 @@ --- -nav_title: "GET : Analyse des cartes de fil d’actualité" -article_title: "GET : Analyse des cartes de fil d’actualité" +nav_title: "GET : Exporter l’analyse des cartes de fil d’actualité" +article_title: "GET : Exporter l’analyse des cartes de fil d’actualité" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze d’analytiques de carte de fil d’actualité." +description: "Cet article présente en détail l’endpoint Braze Exporter l’analyse des cartes de fil d’actualité." --- {% api %} -# Endpoint Analyse des cartes de fil d’actualité +# Exporter l’analyse des cartes de fil d’actualité {% apimethod get %} /feed/data_series {% endapimethod %} diff --git a/_lang/fr/_api/endpoints/export/news_feed/get_news_feed_card_details.md b/_lang/fr/_api/endpoints/export/news_feed/get_news_feed_card_details.md index ffe55e34afa..8456ee82050 100644 --- a/_lang/fr/_api/endpoints/export/news_feed/get_news_feed_card_details.md +++ b/_lang/fr/_api/endpoints/export/news_feed/get_news_feed_card_details.md @@ -1,15 +1,15 @@ --- -nav_title: "GET : Informations relatives à la carte de fil d’actualité" -article_title: "GET : Informations relatives à la carte de fil d’actualité" +nav_title: "GET : Exporter les informations relatives à la carte de fil d’actualité" +article_title: "GET : Exporter les informations relatives à la carte de fil d’actualité" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Informations relatives à la carte de fil d’actualité." +description: "Cet article présente en détail l’endpoint Braze Exporter les informations relatives à la carte de fil d’actualité." --- {% api %} -# Endpoint Informations relatives à la carte de fil d’actualité +# Exporter les informations relatives à la carte de fil d’actualité {% apimethod get %} /feed/details {% endapimethod %} diff --git a/_lang/fr/_api/endpoints/export/news_feed/get_news_feed_cards.md b/_lang/fr/_api/endpoints/export/news_feed/get_news_feed_cards.md index c7fa3aa97e2..c943cfc9ca7 100644 --- a/_lang/fr/_api/endpoints/export/news_feed/get_news_feed_cards.md +++ b/_lang/fr/_api/endpoints/export/news_feed/get_news_feed_cards.md @@ -1,15 +1,15 @@ --- -nav_title: "GET : Liste des cartes de fil d’actualité" -article_title: "GET : Liste des cartes de fil d’actualité" +nav_title: "GET : Exporter la liste des cartes de fil d’actualités" +article_title: "GET : Exporter la liste des cartes de fil d’actualités" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Liste des cartes de fil d’actualité." +description: "Cet article présente en détail l’endpoint Braze Exporter la liste des cartes de fil d’actualités." --- {% api %} -# Endpoint Liste des cartes de fil d’actualité +# Exporter la liste des cartes de fil d’actualités {% apimethod get %} /feed/list {% endapimethod %} diff --git a/_lang/fr/_api/endpoints/export/purchases/get_list_product_id.md b/_lang/fr/_api/endpoints/export/purchases/get_list_product_id.md index bd6316adeb3..80f2730c97d 100644 --- a/_lang/fr/_api/endpoints/export/purchases/get_list_product_id.md +++ b/_lang/fr/_api/endpoints/export/purchases/get_list_product_id.md @@ -1,15 +1,15 @@ --- -nav_title: "GET : Répertorier les ID de produit" -article_title: "GET : Répertorier les ID de produit" +nav_title: "GET : Exporter les ID de produit" +article_title: "GET : Exporter les ID de produit" search_tag: Endpoint page_order: 1 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Répertorier les ID de produit." +description: "Cet article présente en détail l’endpoint Braze Exporter les ID de produit." --- {% api %} -# Endpoint Répertorier les ID de produit +# Exporter les ID de produit {% apimethod get %} /purchases/product_list {% endapimethod %} diff --git a/_lang/fr/_api/endpoints/export/segments/get_segment.md b/_lang/fr/_api/endpoints/export/segments/get_segment.md index b2544972541..40c8e61cd56 100644 --- a/_lang/fr/_api/endpoints/export/segments/get_segment.md +++ b/_lang/fr/_api/endpoints/export/segments/get_segment.md @@ -1,15 +1,15 @@ --- -nav_title: "GET : Liste des segments" -article_title: "GET : Liste des segments" +nav_title: "GET : Exporter la liste des segments" +article_title: "GET : Exporter la liste des segments" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’utilisation l’endpoint Braze de liste de segments." +description: "Cet article présente en détail l’endpoint Braze Exporter la liste des segments." --- {% api %} -# Endpoint Liste des segments +# Exporter la liste des segments {% apimethod get %} /segments/list {% endapimethod %} diff --git a/_lang/fr/_api/endpoints/export/segments/get_segment_analytics.md b/_lang/fr/_api/endpoints/export/segments/get_segment_analytics.md index ba21fc4e40f..5dd0084d831 100644 --- a/_lang/fr/_api/endpoints/export/segments/get_segment_analytics.md +++ b/_lang/fr/_api/endpoints/export/segments/get_segment_analytics.md @@ -1,15 +1,15 @@ --- -nav_title: "GET : Analyses des segments" -article_title: "GET : Analyses des segments" +nav_title: "GET : Exporter l'analyse de segment" +article_title: "GET : Exporter l'analyse de segment" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Obtenir les analyses de segment et son utilisation." +description: "Cet article présente en détail l’endpoint Braze Exporter l'analyse de segment." --- {% api %} -# Endpoint Analyses des segments +# Exporter l'analyse de segment {% apimethod get %} /segments/data_series {% endapimethod %} diff --git a/_lang/fr/_api/endpoints/export/segments/get_segment_details.md b/_lang/fr/_api/endpoints/export/segments/get_segment_details.md index ae0220d8481..8aec7475b1e 100644 --- a/_lang/fr/_api/endpoints/export/segments/get_segment_details.md +++ b/_lang/fr/_api/endpoints/export/segments/get_segment_details.md @@ -1,15 +1,15 @@ --- -nav_title: "GET : Informations relatives au segment" -article_title: "GET : Informations relatives au segment" +nav_title: "GET : Exporter les informations relatives au segment" +article_title: "GET : Exporter les informations relatives au segment" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’utilisation l’endpoint Braze de détails de segments." +description: "Cet article présente en détail l’endpoint Braze Exporter les informations relatives au segment." --- {% api %} -# Endpoint Informations relatives au segment +# Exporter les informations relatives au segment {% apimethod get %} /segments/details {% endapimethod %} diff --git a/_lang/fr/_api/endpoints/export/sessions/get_sessions_analytics.md b/_lang/fr/_api/endpoints/export/sessions/get_sessions_analytics.md index 9c32b3deef1..ff0d5fca3da 100644 --- a/_lang/fr/_api/endpoints/export/sessions/get_sessions_analytics.md +++ b/_lang/fr/_api/endpoints/export/sessions/get_sessions_analytics.md @@ -1,15 +1,15 @@ --- -nav_title: "GET : Sessions d’application par heure" -article_title: "Get : Sessions d’application par heure" +nav_title: "GET : Exporter les sessions d'application par heure" +article_title: "Get : Exporter les sessions d'application par heure" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Sessions d’application par heure." +description: "Cet article présente en détail l’endpoint Braze Exporter les analyses de sessions d'application par heure." --- {% api %} -# Endpoint Analyse de session +# Exporter l’analyse de session {% apimethod get %} /sessions/data_series {% endapimethod %} diff --git a/_lang/fr/_api/endpoints/export/user_data/post_users_global_control_group.md b/_lang/fr/_api/endpoints/export/user_data/post_users_global_control_group.md index eb44a6e67b1..9acee4a2b62 100644 --- a/_lang/fr/_api/endpoints/export/user_data/post_users_global_control_group.md +++ b/_lang/fr/_api/endpoints/export/user_data/post_users_global_control_group.md @@ -1,20 +1,20 @@ --- -nav_title: "POST : exportation de profils utilisateur par groupe de contrôle global" -article_title: "POST : exportation de profils utilisateur par groupe de contrôle global" +nav_title: "POST : Exporter le profil utilisateur par groupe de contrôle global" +article_title: "POST : Exporter le profil utilisateur par groupe de contrôle global" search_tag: Endpoint page_order: 6 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Utilisateurs des groupes de contrôle global." +description: "Cet article présente en détail l’endpoint Braze Exporter les utilisateurs dans les groupes de contrôle globaux." --- {% api %} -# Utilisateurs par groupe de contrôle global +# Exporter les utilisateurs par groupe de contrôle global {% apimethod post %} /users/export/global_control_group {% endapimethod %} -Utilisez cet endpoint pour exporter tous les utilisateurs d’un groupe de contrôle global. Les données utilisateur sont exportées sous forme de fichiers multiples d’objets utilisateur JSON séparés par sauts de ligne (c.-à-d. un objet JSON par ligne). +Utilisez cet endpoint pour exporter tous les utilisateurs d’un [groupe de contrôle global]({{site.baseurl}}/user_guide/engagement_tools/testing/global_control_group/). Les données utilisateur sont exportées sous forme de fichiers multiples d’objets utilisateur JSON séparés par sauts de ligne (c.-à-d. un objet JSON par ligne). {% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#aa3d8b90-d984-48f0-9287-57aa30469de2 {% endapiref %} @@ -26,7 +26,7 @@ Utilisez cet endpoint pour exporter tous les utilisateurs d’un groupe de contr Si vous avez ajouté vos informations d’identification [S3][1] ou [Azure][2] à Braze, chaque fichier sera téléchargé dans votre compartiment en tant que fichier ZIP avec le format de clé qui ressemble à `segment-export/SEGMENT_ID/YYYY-MM-dd/RANDOM_UUID-TIMESTAMP_WHEN_EXPORT_STARTED/filename.zip`. Si vous utilisez Azure, assurez-vous que la case **Faire de cette option la destination d’exportation des données par défaut** est cochée sur la page d’aperçu du partenaire Azure dans Braze. Nous allons généralement créer 1 fichier pour 5 000 utilisateurs pour optimiser le traitement. L’exportation de segments plus petits au sein d’un grand groupe d’apps peut entraîner la création de plusieurs fichiers. Vous pouvez alors décompresser les fichiers et concaténer tous les fichiers `json` dans un fichier unique si nécessaire. Si vous spécifiez un `output_format` de `gzip`, l’extension de fichier sera `.gz` au lieu de `.zip`. -{% details Répartition du chemin d’exportation du fichier ZIP %} +{% details Export Pathing Breakdown for ZIP File %} Format de fichier ZIP : `bucket-name/segment-export/SEGMENT_ID/YYYY-MM-dd/RANDOM_UUID-TIMESTAMP_WHEN_EXPORT_STARTED/filename.zip` diff --git a/_lang/fr/_api/endpoints/export/user_data/post_users_identifier.md b/_lang/fr/_api/endpoints/export/user_data/post_users_identifier.md index cd557223607..6a464c79186 100644 --- a/_lang/fr/_api/endpoints/export/user_data/post_users_identifier.md +++ b/_lang/fr/_api/endpoints/export/user_data/post_users_identifier.md @@ -1,15 +1,15 @@ --- -nav_title: "POST : Exportation de profils utilisateur par identifiant" -article_title: "POST : Exportation de profils utilisateur par identifiant" +nav_title: "POST : Exporter le profil utilisateur par identifiant" +article_title: "POST : Exporter le profil utilisateur par identifiant" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Utilisateurs par ID." +description: "Cet article présente en détail l’endpoint Braze Exporter les utilisateurs par identifiant." --- {% api %} -# Endpoint Utilisateurs par identifiant +# Exporter les utilisateurs par identifiant {% apimethod post %} /users/export/ids {% endapimethod %} diff --git a/_lang/fr/_api/endpoints/export/user_data/post_users_segment.md b/_lang/fr/_api/endpoints/export/user_data/post_users_segment.md index 4c6363d4a68..2ba22dc4238 100644 --- a/_lang/fr/_api/endpoints/export/user_data/post_users_segment.md +++ b/_lang/fr/_api/endpoints/export/user_data/post_users_segment.md @@ -1,15 +1,15 @@ --- -nav_title: "POST : exportation de profils utilisateur par segment" -article_title: "POST : exportation de profils utilisateur par segment" +nav_title: "POST : Exporter le profil utilisateur par segment" +article_title: "POST : Exporter le profil utilisateur par segment" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Utilisateurs par segment." +description: "Cet article présente en détail l’endpoint Braze Exporter les utilisateurs par segment." --- {% api %} -# Endpoint Utilisateurs par segment +# Exporter les utilisateurs par segment {% apimethod post %} /users/export/segment {% endapimethod %} @@ -36,7 +36,7 @@ En décembre 2021, les modifications suivantes ont été apportées à cette AP Si vous avez ajouté vos informations d’identification [S3][1] ou [Azure][2] à Braze, chaque fichier sera téléchargé dans votre compartiment en tant que fichier ZIP avec le format de clé qui ressemble à `segment-export/SEGMENT_ID/YYYY-MM-dd/RANDOM_UUID-TIMESTAMP_WHEN_EXPORT_STARTED/filename.zip`. Si vous utilisez Azure, assurez-vous que la case **Faire de cette option la destination d’exportation des données par défaut** est cochée sur la page d’aperçu du partenaire Azure dans Braze. Nous allons généralement créer 1 fichier pour 5 000 utilisateurs pour optimiser le traitement. L’exportation de segments plus petits au sein d’un grand groupe d’apps peut entraîner la création de plusieurs fichiers. Vous pouvez alors décompresser les fichiers et concaténer tous les fichiers `json` dans un fichier unique si nécessaire. Si vous spécifiez un `output_format` de `gzip`, l’extension de fichier sera `.gz` au lieu de `.zip`. -{% details Répartition du chemin d’exportation du fichier ZIP %} +{% details Export Pathing Breakdown for ZIP File %} Format de fichier ZIP : `bucket-name/segment-export/SEGMENT_ID/YYYY-MM-dd/RANDOM_UUID-TIMESTAMP_WHEN_EXPORT_STARTED/filename.zip` diff --git a/_lang/fr/_api/endpoints/messaging/live_activity/update.md b/_lang/fr/_api/endpoints/messaging/live_activity/update.md index 61e2856249f..a56906a448d 100644 --- a/_lang/fr/_api/endpoints/messaging/live_activity/update.md +++ b/_lang/fr/_api/endpoints/messaging/live_activity/update.md @@ -21,7 +21,7 @@ Les activités en direct sont actuellement en accès anticipé. Contactez votre Utilisez cet endpoint pour mettre à jour et mettre fin aux [Activités en direct]({{site.baseurl}}/developer_guide/platform_integration_guides/swift/live_activities/) affichées par votre application iOS. -Avant d’utiliser cet endpoint, vous devez enregistrer une activité avec le SDK Braze Swift en utilisant la méthode [`launchActivity`](https://braze-inc.github.io/braze-swift-sdk/documentation/brazekit/braze/liveactivities-swift.class/launchactivity(pushtokentag:activity:fileid:line:)). Les paramètres de requêtes nécessaires seront définis au cours de cette étape. Reportez-vous à [Activités en direct]({{site.baseurl}}/developer_guide/platform_integration_guides/swift/live_activities/) pour plus d’informations sur l’inscription. +Avant d’utiliser cet endpoint, vous devez enregistrer une activité avec le SDK Swift de Braze en utilisant la méthode [`launchActivity`](https://braze-inc.github.io/braze-swift-sdk/documentation/brazekit/braze/liveactivities-swift.class/launchactivity(pushtokentag:activity:fileid:line:)). Les paramètres de requêtes nécessaires seront définis au cours de cette étape. Reportez-vous à [Activités en direct]({{site.baseurl}}/developer_guide/platform_integration_guides/swift/live_activities/) pour plus d’informations sur l’inscription. ## Limite de débit @@ -51,7 +51,7 @@ Avant d’utiliser cet endpoint, vous devez enregistrer une activité avec le SD | `end_activity` | Facultatif | Booléen | Si `true`, cette requête met fin à l’activité en direct. | | `dismissal_date` | Facultatif | DateTime
(chaîne de caractères [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601)) | Ce paramètre définit le moment de suppression de l’activité en direct de l’interface utilisateur. Si ce moment est dépassé, l’activité en direct sera immédiatement supprimée. | | `stale_date` | Facultatif | DateTime
(chaîne de caractères [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601)) | Ce paramètre indique au système quand le contenu de l’activité en direct devient obsolète dans l’interface utilisateur. | -| `notification` | Facultatif | Objet | Inclure un objet [`apple_push`]({{site.baseurl}}/api/objects_filters/messaging/apple_object/) pour définir une notification push. Le comportement de cette notification push dépend du fait que l’utilisateur soit actif ou utilise un appareil proxy. {::nomarkdown}
  • Si un notification est inclus et que l’utilisateur est actif sur son iPhone lorsque la mise à jour est livrée, l’interface utilisateur de l’activité en direct mise à jour glissera vers le bas et s’affichera comme une notification push.
  • Si un notification est inclus et que l’utilisateur n’est pas actif sur son iPhone, son écran s’allume pour afficher l’interface utilisateur de l’activité en direct mise à jour sur son écran de verrouillage.
  • Le notification alert ne s’affichera pas comme une notification push standard. De plus, si un utilisateur dispose d’un appareil proxy, comme une Apple Watch, le alert s’affichera ici.
{:/} | +| `notification` | Facultatif | Objet | Inclure un objet [`apple_push`]({{site.baseurl}}/api/objects_filters/messaging/apple_object/) pour définir une notification push. Le comportement de cette notification push dépend du fait que l’utilisateur soit actif ou utilise un appareil proxy. {::nomarkdown}
  • Si un notification est inclus et que l’utilisateur est actif sur son iPhone lorsque la mise à jour est livrée, l’interface utilisateur de l’activité en direct mise à jour glissera vers le bas et s’affichera comme une notification push.
  • Si un notification est inclus et que l’utilisateur n’est pas actif sur son iPhone, son écran s’allume pour afficher l’interface utilisateur de l’activité en direct mise à jour sur son écran de verrouillage.
  • Le paramètre notification alert ne s’affichera pas comme une notification push standard. De plus, si un utilisateur dispose d’un appareil proxy, comme une Apple Watch, le alert s’affichera ici.
{:/} | {: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} ## Exemple de demande diff --git a/_lang/fr/_api/endpoints/messaging/schedule_messages/get_messages_scheduled.md b/_lang/fr/_api/endpoints/messaging/schedule_messages/get_messages_scheduled.md index ab20fc4ae67..50a0da16ff3 100644 --- a/_lang/fr/_api/endpoints/messaging/schedule_messages/get_messages_scheduled.md +++ b/_lang/fr/_api/endpoints/messaging/schedule_messages/get_messages_scheduled.md @@ -5,11 +5,11 @@ search_tag: Endpoint page_order: 0 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Obtenir les messages planifiés." +description: "Cet article présente en détail l’endpoint Braze Répertorier les campagnes et Canvas planifiés à venir." --- {% api %} -# Obtenir les campagnes et les Canvas planifiés à venir +# Répertorier les campagnes et Canvas planifiés à venir {% apimethod get %} /messages/scheduled_broadcasts {% endapimethod %} diff --git a/_lang/fr/_api/endpoints/messaging/schedule_messages/post_delete_scheduled_triggered_canvases.md b/_lang/fr/_api/endpoints/messaging/schedule_messages/post_delete_scheduled_triggered_canvases.md index e48003cf2dd..24b7fbf3be9 100644 --- a/_lang/fr/_api/endpoints/messaging/schedule_messages/post_delete_scheduled_triggered_canvases.md +++ b/_lang/fr/_api/endpoints/messaging/schedule_messages/post_delete_scheduled_triggered_canvases.md @@ -18,14 +18,14 @@ L’endpoint de suppression de la planification vous permet d’annuler un messa {% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#7d34037f-4bf2-4fab-bc9c-c972988051a7 {% endapiref %} +Les messages ou déclencheurs planifiés qui sont supprimés peu de temps avant ou pendant l’heure où ils sont censés être envoyés seront mis à jour dans les meilleurs délais, de sorte que les suppressions de dernière minute pourraient être appliquées à tous, certains ou aucun de vos utilisateurs ciblés. + ## Limite de débit {% multi_lang_include rate_limits.md endpoint='default' %} ## Corps de la demande -Les messages ou déclencheurs planifiés qui sont supprimés peu de temps avant ou pendant l’heure où ils sont censés être envoyés seront mis à jour dans les meilleurs délais, de sorte que les suppressions de dernière minute pourraient être appliquées à tous, certains ou aucun de vos utilisateurs ciblés. - ``` Content-Type: application/json Authorization: Bearer YOUR-REST-API-KEY diff --git a/_lang/fr/_api/endpoints/messaging/schedule_messages/post_delete_scheduled_triggered_messages.md b/_lang/fr/_api/endpoints/messaging/schedule_messages/post_delete_scheduled_triggered_messages.md index a45d9bbaaf6..88773b7d124 100644 --- a/_lang/fr/_api/endpoints/messaging/schedule_messages/post_delete_scheduled_triggered_messages.md +++ b/_lang/fr/_api/endpoints/messaging/schedule_messages/post_delete_scheduled_triggered_messages.md @@ -5,7 +5,7 @@ search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Supprimer les messages déclenchés par API et planifiés." +description: "Cet article présente en détail l’endpoint Braze Planifier des campagnes déclenchées par API et planifiées." --- {% api %} @@ -18,14 +18,14 @@ Utilisez cet endpoint pour annuler un message Canvas que vous avez déjà planif {% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#7d34037f-4bf2-4fab-bc9c-c972988051a7 {% endapiref %} +Les messages ou déclencheurs planifiés qui sont supprimés peu de temps avant ou pendant l’heure où ils sont censés être envoyés seront mis à jour dans les meilleurs délais, de sorte que les suppressions de dernière minute pourraient être appliquées à tous, certains ou aucun de vos utilisateurs ciblés. + ## Limite de débit {% multi_lang_include rate_limits.md endpoint='default' %} ## Corps de la demande -Les messages ou déclencheurs planifiés qui sont supprimés peu de temps avant ou pendant l’heure où ils sont censés être envoyés seront mis à jour dans les meilleurs délais, de sorte que les suppressions de dernière minute pourraient être appliquées à tous, certains ou aucun de vos utilisateurs ciblés. - ``` Content-Type: application/json Authorization: Bearer YOUR-REST-API-KEY diff --git a/_lang/fr/_api/endpoints/messaging/schedule_messages/post_schedule_messages.md b/_lang/fr/_api/endpoints/messaging/schedule_messages/post_schedule_messages.md index 68c788817ed..f23c9a3bf1c 100644 --- a/_lang/fr/_api/endpoints/messaging/schedule_messages/post_schedule_messages.md +++ b/_lang/fr/_api/endpoints/messaging/schedule_messages/post_schedule_messages.md @@ -1,11 +1,11 @@ --- -nav_title: "POST : planifier les messages" -article_title: "POST : planifier les messages" +nav_title: "POST : Créer des messages planifiés" +article_title: "POST : Créer des messages planifiés" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Planifier les messages." +description: "Cet article présente en détail l’endpoint Braze Créer des messages planifiés." --- {% api %} @@ -161,6 +161,8 @@ curl --location --request POST 'https://rest.iad-01.braze.com/messages/schedule/ ## Réponse +### Exemple de réponse réussie + ```json { "dispatch_id": (string) the dispatch identifier, diff --git a/_lang/fr/_api/endpoints/messaging/schedule_messages/post_schedule_triggered_campaigns.md b/_lang/fr/_api/endpoints/messaging/schedule_messages/post_schedule_triggered_campaigns.md index 62262e0b6e3..36be44ca8f4 100644 --- a/_lang/fr/_api/endpoints/messaging/schedule_messages/post_schedule_triggered_campaigns.md +++ b/_lang/fr/_api/endpoints/messaging/schedule_messages/post_schedule_triggered_campaigns.md @@ -1,6 +1,6 @@ --- -nav_title: "POST : planifier des messages de campagne déclenchés par API" -article_title: "POST : planifier des messages de campagne déclenchés par API" +nav_title: "POST : Planifier des campagnes déclenchées par API" +article_title: "POST : Planifier des campagnes déclenchées par API" search_tag: Endpoint page_order: 4 layout: api_page @@ -16,7 +16,7 @@ description: "Cet article présente en détail l’endpoint Braze Planifier des Utilisez cet endpoint pour envoyer des messages de campagne créés sur le tableau de bord (jusqu’à 90 jours à l’avance) via une livraison déclenchée par API, ce qui vous permet de décider quelle action doit déclencher le message à envoyer. Vous pouvez indiquer les `trigger_properties` qui seront modélisées dans le message lui-même. -Notez que pour envoyer des messages avec cet endpoint, vous devez avoir un ID de campagne créé lorsque vous élaborez une [campagne déclenchée par API]({{site.baseurl}}/api/api_campaigns/). +Notez que pour envoyer des messages avec cet endpoint, vous devez avoir un [ID de campagne]({{site.baseurl}}/api/identifier_types/) créé lorsque vous élaborez une [campagne déclenchée par API]({{site.baseurl}}/api/api_campaigns/). {% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#b7e61de7-f2c2-49c9-9e46-b85a0aa01bba {% endapiref %} @@ -138,6 +138,8 @@ curl --location --request POST 'https://rest.iad-01.braze.com/campaigns/trigger/ ## Réponse +### Exemple de réponse réussie + ```json Content-Type: application/json Authorization: Bearer YOUR-API-KEY-HERE diff --git a/_lang/fr/_api/endpoints/messaging/schedule_messages/post_schedule_triggered_canvases.md b/_lang/fr/_api/endpoints/messaging/schedule_messages/post_schedule_triggered_canvases.md index 8d528c5c28c..87475fe5a9c 100644 --- a/_lang/fr/_api/endpoints/messaging/schedule_messages/post_schedule_triggered_canvases.md +++ b/_lang/fr/_api/endpoints/messaging/schedule_messages/post_schedule_triggered_canvases.md @@ -1,6 +1,6 @@ --- -nav_title: "POST : planifier des messages Canvas déclenchés par API" -article_title: "POST : planifier des messages Canvas déclenchés par API" +nav_title: "POST : Planifier des Canvas déclenchés par API" +article_title: "POST : Planifier des Canvas déclenchés par API" search_tag: Endpoint page_order: 4 layout: api_page diff --git a/_lang/fr/_api/endpoints/messaging/schedule_messages/post_update_scheduled_triggered_campaigns.md b/_lang/fr/_api/endpoints/messaging/schedule_messages/post_update_scheduled_triggered_campaigns.md index 652cfe63132..cb888014caa 100644 --- a/_lang/fr/_api/endpoints/messaging/schedule_messages/post_update_scheduled_triggered_campaigns.md +++ b/_lang/fr/_api/endpoints/messaging/schedule_messages/post_update_scheduled_triggered_campaigns.md @@ -1,6 +1,6 @@ --- -nav_title: "POST : mettre à jour les messages de campagnes planifiés déclenchés par API" -article_title: "POST : mettre à jour les messages de campagnes planifiés déclenchés par API" +nav_title: "POST : Mettre à jour des campagnes planifiées déclenchées par API" +article_title: "POST : Mettre à jour des campagnes planifiées déclenchées par API" search_tag: Endpoint page_order: 4 layout: api_page @@ -17,10 +17,10 @@ Utilisez cet endpoint pour mettre à jour des campagnes planifiées déclenchée Notez que pour envoyer des messages avec cet endpoint, vous devez avoir un ID de campagne créé lorsque vous élaborez une [campagne déclenchée par API]({{site.baseurl}}/api/api_campaigns/). -Toute planification écrasera complètement celle que vous avez établie dans la demande de création de planification ou dans les demandes de mise à jour de planification précédentes. Par exemple, si vous indiquez initialement `"schedule" : {"time" : "2015-02-20T13:14:47", "in_local_time" : true}` et, que dans votre mise à jour, vous renseignez `"schedule" : {"time" : "2015-02-20T14:14:47"}`, votre message sera envoyé à l’heure indiquée (UTC), et non à l’heure locale de l’utilisateur. Les déclencheurs planifiés qui sont mis à jour peu de temps avant ou pendant la période où ils sont censés être envoyés seront mis à jour dans les meilleurs délais, de sorte que les changements de dernière minute pourraient être appliqués à tous, certains ou aucun de vos utilisateurs ciblés. - {% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#6d2a6e66-9d6f-4ae1-965a-79fa52b86b1d {% endapiref %} +Toute planification écrasera complètement celle que vous avez établie dans la demande de création de planification ou dans les demandes de mise à jour de planification précédentes. Par exemple, si vous indiquez initialement `"schedule" : {"time" : "2015-02-20T13:14:47", "in_local_time" : true}` et, que dans votre mise à jour, vous renseignez `"schedule" : {"time" : "2015-02-20T14:14:47"}`, votre message sera envoyé à l’heure indiquée (UTC), et non à l’heure locale de l’utilisateur. Les déclencheurs planifiés qui sont mis à jour peu de temps avant ou pendant la période où ils sont censés être envoyés seront mis à jour dans les meilleurs délais, de sorte que les changements de dernière minute pourraient être appliqués à tous, certains ou aucun de vos utilisateurs ciblés. + ## Limite de débit {% multi_lang_include rate_limits.md endpoint='default' %} diff --git a/_lang/fr/_api/endpoints/messaging/schedule_messages/post_update_scheduled_triggered_canvases.md b/_lang/fr/_api/endpoints/messaging/schedule_messages/post_update_scheduled_triggered_canvases.md index ee493351651..3a6d02476cf 100644 --- a/_lang/fr/_api/endpoints/messaging/schedule_messages/post_update_scheduled_triggered_canvases.md +++ b/_lang/fr/_api/endpoints/messaging/schedule_messages/post_update_scheduled_triggered_canvases.md @@ -1,6 +1,6 @@ --- -nav_title: "POST : mettre à jour des messages Canvas planifiés déclenchés par API" -article_title: "POST : mettre à jour des messages Canvas planifiés déclenchés par API" +nav_title: "POST : Mettre à jour des Canvas planifiés déclenchés par API" +article_title: "POST : Mettre à jour des Canvas planifiés déclenchés par API" search_tag: Endpoint page_order: 4 layout: api_page @@ -18,10 +18,10 @@ Utilisez cet endpoint pour mettre à jour des Canvas déclenchés par API planif Notez que pour envoyer des messages avec cet endpoint, vous devez avoir un ID Canvas créé lorsque vous élaborez un [Canvas]({{site.baseurl}}/api/identifier_types/#canvas-api-identifier). -Toute planification écrasera complètement celle que vous avez établie dans la demande de création de planification ou dans les demandes de mise à jour de planification précédentes. Par exemple, si vous indiquez initialement `"schedule" : {"time" : "2015-02-20T13:14:47", "in_local_time" : true}` et, que dans votre mise à jour, vous renseignez `"schedule" : {"time" : "2015-02-20T14:14:47"}`, votre message sera envoyé à l’heure indiquée (UTC), et non à l’heure locale de l’utilisateur. Les déclencheurs planifiés qui sont mis à jour peu de temps avant ou pendant la période où ils sont censés être envoyés seront mis à jour dans les meilleurs délais, de sorte que les changements de dernière minute pourraient être appliqués à tous, certains ou aucun de vos utilisateurs ciblés. - {% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#8fdf158b-ce20-41d8-80e4-a9300a6706d4 {% endapiref %} +Toute planification écrasera complètement celle que vous avez établie dans la demande de création de planification ou dans les demandes de mise à jour de planification précédentes. Par exemple, si vous indiquez initialement `"schedule" : {"time" : "2015-02-20T13:14:47", "in_local_time" : true}` et, que dans votre mise à jour, vous renseignez `"schedule" : {"time" : "2015-02-20T14:14:47"}`, votre message sera envoyé à l’heure indiquée (UTC), et non à l’heure locale de l’utilisateur. Les déclencheurs planifiés qui sont mis à jour peu de temps avant ou pendant la période où ils sont censés être envoyés seront mis à jour dans les meilleurs délais, de sorte que les changements de dernière minute pourraient être appliqués à tous, certains ou aucun de vos utilisateurs ciblés. + ## Limite de débit {% multi_lang_include rate_limits.md endpoint='default' %} diff --git a/_lang/fr/_api/endpoints/messaging/send_messages/post_create_send_ids.md b/_lang/fr/_api/endpoints/messaging/send_messages/post_create_send_ids.md index b33d60e4fc4..0b5c5e248f7 100644 --- a/_lang/fr/_api/endpoints/messaging/send_messages/post_create_send_ids.md +++ b/_lang/fr/_api/endpoints/messaging/send_messages/post_create_send_ids.md @@ -40,7 +40,7 @@ Authorization: Bearer YOUR-REST-API-KEY | Paramètre | Requis | Type de données | Description | | --------- | ---------| --------- | ----------- | -|`campaign_id`|Required|String| Voir [Identifiant de campagne]({{site.baseurl}}/api/identifier_types/). | +| `campaign_id` | Requis | String | Voir [Identifiant de campagne]({{site.baseurl}}/api/identifier_types/). | |`send_id`| Facultatif | String | Voir [Identifiant d’envoi]({{site.baseurl}}/api/identifier_types/). | {: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} @@ -57,6 +57,8 @@ curl --location --request POST 'https://rest.iad-01.braze.com/sends/id/create' \ ## Réponse +### Exemple de réponse réussie + ```json Content-Type: application/json Authorization: Bearer YOUR-REST-API-KEY diff --git a/_lang/fr/_api/endpoints/messaging/send_messages/post_send_messages.md b/_lang/fr/_api/endpoints/messaging/send_messages/post_send_messages.md index e45aed9abbc..84a0c59b71a 100644 --- a/_lang/fr/_api/endpoints/messaging/send_messages/post_send_messages.md +++ b/_lang/fr/_api/endpoints/messaging/send_messages/post_send_messages.md @@ -5,11 +5,11 @@ search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Envoyer des messages immédiatement." +description: "Cet article présente en détail l’endpoint Braze Envoyer des messages immédiatement via API uniquement." --- {% api %} -# Envoi immédiat des messages via API uniquement +# Envoyer des messages immédiatement via API uniquement {% apimethod post core_endpoint|https://www.braze.com/docs/core_endpoints %} /messages/send {% endapimethod %} @@ -54,7 +54,8 @@ Authorization: Bearer YOUR-REST-API-KEY "email": (optional, email object), "webhook": (optional, webhook object), "content_card": (optional, content card object), - "sms": (optional, SMS object) + "sms": (optional, SMS object), + "whats_app": (optional, WhatsApp object) } } ``` diff --git a/_lang/fr/_api/endpoints/messaging/send_messages/post_send_transactional_message.md b/_lang/fr/_api/endpoints/messaging/send_messages/post_send_transactional_message.md index d29988d5a8b..0beedb41a2a 100644 --- a/_lang/fr/_api/endpoints/messaging/send_messages/post_send_transactional_message.md +++ b/_lang/fr/_api/endpoints/messaging/send_messages/post_send_transactional_message.md @@ -10,9 +10,9 @@ description: "Cet article présente en détail l’endpoint Braze Envoyer des e- --- {% api %} -# Envoi d’e-mails transactionnels via une livraison déclenchée par API +# Envoyer des e-mails transactionnels via une livraison déclenchée par API {% apimethod post %} -/transactional/v1/campaigns/YOUR_CAMPAIGN_ID_HERE/send +/transactional/v1/campaigns/{campaign_id}/send {% endapimethod %} Utilisez cet endpoint pour envoyer des messages transactionnels instantanés et ad hoc aux utilisateurs désignés. Cet endpoint est utilisé conjointement à la création d’une [campagne par e-mail transactionnel]({{site.baseurl}}/api/api_campaigns/transactional_campaigns) et l’ID de campagne correspondant. @@ -29,6 +29,13 @@ Comme pour l’[endpoint Envoyer des campagnes déclenchées]({{site.baseurl}}/a {% multi_lang_include rate_limits.md endpoint='transactional email' %} +## Paramètres de chemin + +| Paramètre | Requis | Type de données | Description | +|---|---|---|---| +| `campaign_id` | Requis | String | ID de la campagne | +{: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} + ## Corps de la demande ``` @@ -77,7 +84,7 @@ curl -X POST \ } ] }' \ - https://rest.iad-01.braze.com/transactional/v1/campaigns/YOUR_CAMPAIGN_ID_HERE/send + https://rest.iad-01.braze.com/transactional/v1/campaigns/{campaign_id}/send ``` ## Réponse @@ -94,23 +101,26 @@ L’endpoint d’envoi d’e-mails transactionnels répond avec le `dispatch_id` } ``` +## Résolution des problèmes + L’endpoint peut renvoyer également, dans certains cas, un code d’erreur et un message lisible par un être humain, qui sont souvent des erreurs de validation. Voici quelques-unes des erreurs fréquentes pouvant être obtenues lorsque vous réalisez des requêtes invalides. -| Code d’erreur | Exemple de message d’erreur | Raison | -| ---------- | ----------------------| ----- | -| 400 | La campagne n’est pas une campagne transactionnelle. Cet endpoint ne peut être utilisé que par les campagnes transactionnelles | L’ID de campagne fourni n’est pas pour une campagne transactionnelle. | -| 400 | La référence externe a été mise en attente. Veuillez réessayer pour obtenir le send_id. | L’external_send_id a été créé récemment, essayez un nouvel external_send_id si vous essayez d’envoyer un nouveau message. | -| 400 | La campagne n’existe pas | L’ID fourni pour la campagne ne correspond pas à une campagne existante. | -| 400 | La campagne est archivée. Sortez la campagne des archives pour vous assurer que les requêtes déclenchées prennent effet. | L’ID de campagne fourni correspond à une campagne archivée. | -| 400 | La campagne est en pause. Relancez la campagne pour vous assurer que les requêtes déclenchées prennent effet. | L’ID de campagne fourni correspond à une campagne en pause. | -| 400 | campaign_id doit être une chaîne de caractères de l’identifiant API de la campagne | L’ID fourni pour la campagne n’est pas dans un format valide. | -| 401 | Erreur d’authentification des identifiants | La clé API fournie est invalide | -| 403 | Adresses IP en liste blanche invalides | L’adresse IP qui envoie la requête n’est pas dans la liste blanche des IP (si elle est utilisée) | -| 403 | Vous n’avez pas la permission d’accéder à cette ressource | La clé API n’a pas la permission d’effectuer cette action | +| Erreur | Résolution des problèmes | +| ----- | --------------- | +| `The campaign is not a transactional campaign. Only transactional campaigns may use this endpoint` | L’ID de campagne fourni n’est pas pour une campagne transactionnelle. | +| `The external reference has been queued. Please retry to obtain send_id.` | L’external_send_id a été créé récemment, essayez un nouvel external_send_id si vous essayez d’envoyer un nouveau message. | +| `Campaign does not exist` | L’ID fourni pour la campagne ne correspond pas à une campagne existante. | +| `The campaign is archived. Unarchive the campaign to ensure trigger requests will take effect.` | L’ID de campagne fourni correspond à une campagne archivée. | +| `The campaign is paused. Resume the campaign to ensure trigger requests will take effect.` | L’ID de campagne fourni correspond à une campagne en pause. | +| `campaign_id must be a string of the campaign api identifier` | L’ID fourni pour la campagne n’est pas dans un format valide. | +| `Error authenticating credentials` | La clé API fournie est invalide | +| `Invalid whitelisted IPs `| L’adresse IP qui envoie la requête n’est pas dans la liste blanche des IP (si elle est utilisée) | +| `You do not have permission to access this resource` | La clé API n’a pas la permission d’effectuer cette action | +{: .reset-td-br-1 .reset-td-br-2} La plupart des endpoints Braze ont une implémentation de limites de débit qui renverra un code de réponse 429 si vous avez effectué trop de requêtes. L’endpoint d’envoi transactionnel fonctionne différemment. Si vous dépassez la limitation du débit allouée, notre système continuera à ingérer les appels API, retourner des codes de réussite et envoyer les messages. Cependant, ces messages peuvent ne pas être soumis au SLA contractuel pour cette fonctionnalité. Veuillez nous contacter si vous désirez plus d’informations concernant cette fonctionnalité. -### Postback de l’événement HTTP transactionnel +## Postback de l’événement HTTP transactionnel Tous les e-mails transactionnels sont complétés par des postbacks de statut d’événement envoyés en tant que requête HTTP à l’URL spécifiée. Cela vous permet d’évaluer le statut du message en temps réel et de prendre des mesures pour atteindre l’utilisateur sur un autre canal si le message n’est pas livré ou revenir sur un système interne si Braze connaît une certaine latence. @@ -120,7 +130,6 @@ Pour commencer à utiliser le postback de l’événement HTTP transactionnel, a ![]({% image_buster /assets/img/transactional_webhook_url.png %}) - ### Corps de postback ```json diff --git a/_lang/fr/_api/endpoints/messaging/send_messages/post_send_triggered_campaigns.md b/_lang/fr/_api/endpoints/messaging/send_messages/post_send_triggered_campaigns.md index ae036e8c315..81898052bcb 100644 --- a/_lang/fr/_api/endpoints/messaging/send_messages/post_send_triggered_campaigns.md +++ b/_lang/fr/_api/endpoints/messaging/send_messages/post_send_triggered_campaigns.md @@ -1,11 +1,11 @@ --- -nav_title: "POST : envoyer des messages de campagne via une livraison déclenchée par API" -article_title: "POST : envoyer des messages de campagne via une livraison déclenchée par API" +nav_title: "POST : Envoyer des campagnes via une livraison déclenchée par API" +article_title: "POST : Envoyer des campagnes via une livraison déclenchée par API" search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Envoyer des messages de campagne via une livraison déclenchée par API." +description: "Cet article présente en détail l’endpoint Braze Envoyer des campagnes via une livraison déclenchée par API." --- {% api %} @@ -14,9 +14,9 @@ description: "Cet article présente en détail l’endpoint Braze Envoyer des me /campaigns/trigger/send {% endapimethod %} -Utilisez cet endpoint pour envoyer des messages instantanés et ad hoc aux utilisateurs désignés via la livraison déclenchée par API. La livraison déclenchée par API vous permet de stocker le contenu d’un message dans le tableau de bord de Braze, tout en indiquant quand et à qui un message est envoyé via votre API. +Utilisez cet endpoint pour envoyer des messages de campagne instantanés et ad hoc aux utilisateurs désignés via la livraison déclenchée par API. La livraison déclenchée par API vous permet de stocker le contenu d’un message dans le tableau de bord de Braze, tout en indiquant quand et à qui un message est envoyé via votre API. -Si vous souhaitez cibler un segment, un enregistrement de votre demande sera stocké dans la [Developer Console (Console du développeur)](https://dashboard.braze.com/app_settings/developer_console/activitylog/). Notez que pour envoyer des messages avec cet endpoint, vous devez avoir un ID de campagne créé lorsque vous élaborez une [campagne déclenchée par API]({{site.baseurl}}/api/api_campaigns/). +Si vous souhaitez cibler un segment, un enregistrement de votre demande sera stocké dans la [Developer Console (Console du développeur)](https://dashboard.braze.com/app_settings/developer_console/activitylog/). Notez que pour envoyer des messages avec cet endpoint, vous devez avoir un [ID de campagne](https://www.braze.com/docs/api/identifier_types/) créé lorsque vous élaborez une [campagne déclenchée par API]({{site.baseurl}}/api/api_campaigns/). {% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#aef185ae-f591-452a-93a9-61d4bc023b05 {% endapiref %} @@ -146,6 +146,7 @@ curl --location --request POST 'https://rest.iad-01.braze.com/campaigns/trigger/ ``` ## Informations relatives à la réponse + Les réponses des endpoints d’envoi de messages incluront le `dispatch_id` du message pour y faire référence lors de l’envoi. Le `dispatch_id` est l’ID de distribution du message, un ID unique pour chaque transmission envoyée depuis la plateforme Braze. Lorsque vous utilisez cet endpoint, vous recevez un seul `dispatch_id` pour un ensemble complet d’utilisateurs regroupés. Pour plus d’informations sur `dispatch_id`, consultez notre documentation sur le [comportement de l’ID de distribution]({{site.baseurl}}/help/help_articles/data/dispatch_id/). ## Endpoint Créer un envoi diff --git a/_lang/fr/_api/endpoints/messaging/send_messages/post_send_triggered_canvases.md b/_lang/fr/_api/endpoints/messaging/send_messages/post_send_triggered_canvases.md index 48a2855861d..ab904e1a8c4 100644 --- a/_lang/fr/_api/endpoints/messaging/send_messages/post_send_triggered_canvases.md +++ b/_lang/fr/_api/endpoints/messaging/send_messages/post_send_triggered_canvases.md @@ -5,7 +5,7 @@ search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Envoyer des messages Canvas via une livraison déclenchée par API." +description: "Cet article présente en détail l’endpoint Braze Envoyer des Canvas via une livraison déclenchée par API." --- {% api %} @@ -143,6 +143,7 @@ curl --location --request POST 'https://rest.iad-01.braze.com/canvas/trigger/sen ``` ## Informations relatives à la réponse + Les réponses des endpoints d’envoi de messages incluront le `dispatch_id` du message pour y faire référence lors de l’envoi. Le `dispatch_id` est l’ID de distribution du message (ID unique pour chaque « transmission » envoyée depuis la plateforme Braze). Consultez [Comportement de l’ID de distribution]({{site.baseurl}}/help/help_articles/data/dispatch_id/) pour plus d’informations. ## Endpoint Créer un envoi diff --git a/_lang/fr/_api/endpoints/preference_center/get_create_url_preference_center.md b/_lang/fr/_api/endpoints/preference_center/get_create_url_preference_center.md index de27b4f33ae..a4161acff8f 100644 --- a/_lang/fr/_api/endpoints/preference_center/get_create_url_preference_center.md +++ b/_lang/fr/_api/endpoints/preference_center/get_create_url_preference_center.md @@ -5,13 +5,13 @@ search_tag: Endpoint page_order: 1 layout: api_page page_type: reference -description: "Cet article précise des détails concernant l’endpoint Braze Générer l’URL du centre de préférences." +description: "Cet article précise des détails concernant l’endpoint de Braze Générer l’URL du centre de préférences." --- {% api %} # Générer l’URL du centre de préférences {% apimethod get %} -/preference_center/v1/{preferenceCenterExternalId}/url/{userId} +/preference_center/v1/{preferenceCenterExternalID}/url/{userID} {% endapimethod %} Utilisez cet endpoint pour générer une URL pour un centre de préférences. Chaque URL de centre de préférence est unique pour un utilisateur. @@ -20,12 +20,12 @@ Utilisez cet endpoint pour générer une URL pour un centre de préférences. Ch Cet endpoint a une limitation du débit de 1 000 demandes par minute, par groupe d’apps. -## Exemple de demande +## Paramètres de chemin -``` -curl --location --request GET 'https://rest.iad-01.braze.com/preference_center/v1/$preference_center_external_id/url/$user_external_id' \ ---header 'Authorization: Bearer YOUR-API-KEY-HERE' -``` +| Paramètre | Requis | Type de données | Description | +| --------- | ---------| --------- | ----------- | +|`preferenceCenterExternalID`| Requis | String | L’ID de votre centre de préférences. | +|`userID`| Requis | String | L'ID utilisateur. | ## Paramètres de demande @@ -35,6 +35,13 @@ curl --location --request GET 'https://rest.iad-01.braze.com/preference_center/v |`external_id`| Requis | String | L’ID externe pour un utilisateur. | {: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} +## Exemple de demande + +``` +curl --location --request GET 'https://rest.iad-01.braze.com/preference_center/v1/$preference_center_external_id/url/$user_external_id' \ +--header 'Authorization: Bearer YOUR-API-KEY-HERE' +``` + ## Réponse ```json diff --git a/_lang/fr/_api/endpoints/preference_center/get_list_preference_center.md b/_lang/fr/_api/endpoints/preference_center/get_list_preference_center.md index ca6e6a54c33..4f3597fc160 100644 --- a/_lang/fr/_api/endpoints/preference_center/get_list_preference_center.md +++ b/_lang/fr/_api/endpoints/preference_center/get_list_preference_center.md @@ -5,7 +5,7 @@ search_tag: Endpoint page_order: 2 layout: api_page page_type: reference -description: "Cet article précise des détails concernant l’endpoint Braze Répertorier les centres de préférences." +description: "Cet article précise des détails concernant l’endpoint de Braze Répertorier les centres de préférences." --- {% api %} @@ -20,6 +20,10 @@ Utilisez cet endpoint pour répertorier vos centres de préférences disponibles Cet endpoint a une limitation du débit de 1 000 demandes par minute, par groupe d’apps. +## Paramètres de chemin et de requête + +Cet endpoint n’a pas de paramètres de chemin ni de requête. + ## Exemple de demande ``` @@ -28,6 +32,7 @@ curl --location -g --request GET https://rest.iad-01.braze.com/preference_center ``` ## Réponse + ```json { "preference_centers": [ diff --git a/_lang/fr/_api/endpoints/preference_center/get_view_details_preference_center.md b/_lang/fr/_api/endpoints/preference_center/get_view_details_preference_center.md index 5ab19e1c655..af8ec23d52e 100644 --- a/_lang/fr/_api/endpoints/preference_center/get_view_details_preference_center.md +++ b/_lang/fr/_api/endpoints/preference_center/get_view_details_preference_center.md @@ -5,13 +5,13 @@ search_tag: Endpoint page_order: 3 layout: api_page page_type: reference -description: "Cet article précise des détails concernant l’endpoint Braze Afficher les détails du centre de préférences." +description: "Cet article précise des détails concernant l’endpoint de Braze Afficher les détails du centre de préférences." --- {% api %} # Afficher les détails du centre de préférences {% apimethod get %} -/preference_center/v1/{preferenceCenterExternalId} +/preference_center/v1/{preferenceCenterExternalID} {% endapimethod %} Utilisez cet endpoint pour afficher les détails de vos centres de préférences, y compris la date de leur création et de leurs mises à jour. @@ -20,6 +20,16 @@ Utilisez cet endpoint pour afficher les détails de vos centres de préférences Cet endpoint a une limitation du débit de 1 000 demandes par minute, par groupe d’apps. +## Paramètres de chemin + +| Paramètre | Requis | Type de données | Description | +| --------- | ---------| --------- | ----------- | +|`preferenceCenterExternalID`| Requis | String | L’ID de votre centre de préférences. | + +## Paramètres de demande + +Cet endpoint n’a pas de paramètres de requête. + ## Exemple de demande ``` diff --git a/_lang/fr/_api/endpoints/preference_center/post_create_preference_center.md b/_lang/fr/_api/endpoints/preference_center/post_create_preference_center.md index 625f6bb473d..a1bd0a7ecd5 100644 --- a/_lang/fr/_api/endpoints/preference_center/post_create_preference_center.md +++ b/_lang/fr/_api/endpoints/preference_center/post_create_preference_center.md @@ -5,7 +5,7 @@ search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article précise des détails concernant l’endpoint Braze Créer un centre de préférences." +description: "Cet article précise des détails concernant l’endpoint de Braze Créer un centre de préférences." --- {% api %} diff --git a/_lang/fr/_api/endpoints/preference_center/put_update_preference_center.md b/_lang/fr/_api/endpoints/preference_center/put_update_preference_center.md index 09cd16507e7..8259e3b3c46 100644 --- a/_lang/fr/_api/endpoints/preference_center/put_update_preference_center.md +++ b/_lang/fr/_api/endpoints/preference_center/put_update_preference_center.md @@ -5,13 +5,13 @@ search_tag: Endpoint page_order: 5 layout: api_page page_type: reference -description: "Cet article précise des détails concernant l’endpoint Braze Mettre à jour un centre de préférences." +description: "Cet article précise des détails concernant l’endpoint de Braze Mettre à jour un centre de préférences." --- {% api %} # Mettre à jour un centre de préférences {% apimethod put %} -/preference_center/v1/{preferenceCenterExternalId} +/preference_center/v1/{preferenceCenterExternalID} {% endapimethod %} Utilisez cet endpoint pour mettre à jour un centre de préférences. @@ -20,6 +20,11 @@ Utilisez cet endpoint pour mettre à jour un centre de préférences. Cet endpoint a une limitation du débit de 10 demandes par minute, par groupe d’apps. +## Paramètres de chemin +| Paramètre | Requis | Type de données | Description | +| --------- | ---------| --------- | ----------- | +|`preferenceCenterExternalID`| Requis | String | L’ID de votre centre de préférences. | + ## Corps de la demande ``` @@ -51,6 +56,7 @@ Authorization: Bearer YOUR-REST-API-KEY {: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} ## Exemple de demande + {% raw %} ``` curl --location --request POST 'https://rest.iad-01.braze.com/preference_center/v1/{preferenceCenterExternalId}' \ diff --git a/_lang/fr/_api/endpoints/scim/delete_existing_dashboard_user.md b/_lang/fr/_api/endpoints/scim/delete_existing_dashboard_user.md index 2d0b255f649..98805627ba1 100644 --- a/_lang/fr/_api/endpoints/scim/delete_existing_dashboard_user.md +++ b/_lang/fr/_api/endpoints/scim/delete_existing_dashboard_user.md @@ -6,13 +6,13 @@ search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente des informations concernant l’endpoint Braze Supprimer un compte utilisateur existant." +description: "Cet article présente en détail l’endpoint Braze Supprimer un compte utilisateur de tableau de bord." --- {% api %} # Supprimer un compte utilisateur de tableau de bord {% apimethod delete %} -/scim/v2/Users/YOUR_ID_HERE +/scim/v2/Users/{id} {% endapimethod %} Cet endpoint vous permet de supprimer définitivement un utilisateur existant du tableau de bord en spécifiant la ressource `id` retournée par la méthode [`POST`]({{site.baseurl}}/scim/post_create_user_account/) SCIM. Cela revient à supprimer un utilisateur dans la section **Manager Users (Gérer les utilisateurs)** du tableau de bord de Braze. Pour plus d’informations sur la manière d’obtenir un jeton SCIM, consultez [Automated user provisioning]({{site.baseurl}}/scim/automated_user_provisioning/) (Approvisionnement automatisé des utilisateurs). @@ -23,20 +23,16 @@ Cet endpoint vous permet de supprimer définitivement un utilisateur existant du {% multi_lang_include rate_limits.md endpoint='delete dashboard user' %} -## Corps de la demande +## Paramètres de chemin -```json -Content-Type: application/json -X-Request-Origin: YOUR-REQUEST-ORIGIN-HERE -Authorization: Bearer YOUR-SCIM-TOKEN-HERE -``` +| Paramètre | Requis | Type de données | Description | +|---|---|---|---| +| `id` | Requis | String | L’ID de ressource de l’utilisateur. Ce paramètre est renvoyé par les méthodes `POST` `/scim/v2/Users/` ou `GET` `/scim/v2/Users?filter=userName eq "user@test.com"`. | +{: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} ## Paramètres de demande -| Paramètre | Requis | Type de données | Description | -| --------- | -------- | --------- | ----------- | -| `id` | Requis | String | L’ID de ressource de l’utilisateur. Ce paramètre est renvoyé par les méthodes `POST` `/scim/v2/Users/` ou `GET` `/scim/v2/Users?filter=userName eq "user@test.com"`. | -{: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} +Cet endpoint n’a pas de corps de demande. ## Exemple de demande ```json @@ -45,12 +41,16 @@ curl --location --request DELETE 'https://rest.iad-01.braze.com/scim/v2/Users/df --header 'X-Request-Origin: YOUR-REQUEST-ORIGIN-HERE' \ --header 'Authorization: Bearer YOUR-SCIM-TOKEN-HERE' \ ``` + ## Réponse + +### Exemple de réponse échouée + ```json HTTP/1.1 204 Not Found Content-Type: text/html; charset=UTF-8 ``` -### États relatifs aux d’erreur + Si cet ID ne correspond à aucun développeur dans Braze, l’endpoint répondra avec : ```json HTTP/1.1 404 Not Found diff --git a/_lang/fr/_api/endpoints/scim/get_search_existing_dashboard_user.md b/_lang/fr/_api/endpoints/scim/get_search_existing_dashboard_user.md index f51a048e0e4..1e7e1bbddfa 100644 --- a/_lang/fr/_api/endpoints/scim/get_search_existing_dashboard_user.md +++ b/_lang/fr/_api/endpoints/scim/get_search_existing_dashboard_user.md @@ -6,13 +6,13 @@ search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente des informations concernant l’endpoint Braze Effectuer une recherche par e-mail d’un compte utilisateur du tableau de bord existant." +description: "Cet article présente en détail l’endpoint Braze Effectuer une recherche par e-mail d’un compte utilisateur du tableau de bord existant." --- {% api %} # Effectuer une recherche par e-mail d’un compte utilisateur du tableau de bord existant {% apimethod get %} -/scim/v2/Users?filter=userName eq "user@test.com" +/scim/v2/Users?filter={userName@example.com} {% endapimethod %} Cet endpoint vous permet de rechercher un compte utilisateur du tableau de bord existant en spécifiant leur e-mail dans les paramètres du filtre de recherche. Veuillez prendre en compte que, lorsque le paramètre de recherche est encodé par URL, il s’affichera ainsi : @@ -27,6 +27,17 @@ Pour plus d’informations sur la manière d’obtenir un jeton SCIM, consultez {% multi_lang_include rate_limits.md endpoint='look up dashboard user email' %} +## Paramètres de chemin + +| Paramètre | Requis | Type de données | Description | +|---|---|---|---| +| `userName@example.com` | Requis | String | L’adresse e-mail de l’utilisateur. | +{: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} + +## Paramètres de demande + +Cet endpoint n’a pas de corps de demande. + ## Exemple de demande ```json curl --location --request GET \ 'https://rest.iad-01.braze.com/scim/v2/Users?filter=userName%20eq%20%22user@test.com%22' \ diff --git a/_lang/fr/_api/endpoints/scim/get_see_user_account_information.md b/_lang/fr/_api/endpoints/scim/get_see_user_account_information.md index cee4f684e18..81f822963c9 100644 --- a/_lang/fr/_api/endpoints/scim/get_see_user_account_information.md +++ b/_lang/fr/_api/endpoints/scim/get_see_user_account_information.md @@ -6,13 +6,13 @@ search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente des informations concernant l’endpoint Braze Rechercher un compte utilisateur de tableau de bord existant." +description: "Cet article présente en détail l’endpoint Braze Rechercher un compte utilisateur de tableau de bord existant." --- {% api %} # Rechercher un compte utilisateur de tableau de bord existant {% apimethod get %} -/scim/v2/Users/YOUR_ID_HERE +/scim/v2/Users/{id} {% endapimethod %} Cet endpoint vous permet de rechercher un compte utilisateur du tableau de bord existant en spécifiant la ressource `id` retournée par la méthode [`POST`]({{site.baseurl}}/scim/post_create_user_account/) SCIM. Pour plus d’informations sur la manière d’obtenir un jeton SCIM, consultez [Automated user provisioning]({{site.baseurl}}/scim/automated_user_provisioning/) (Approvisionnement automatisé des utilisateurs). @@ -23,19 +23,16 @@ Cet endpoint vous permet de rechercher un compte utilisateur du tableau de bord {% multi_lang_include rate_limits.md endpoint='look up dashboard user' %} -## Corps de la demande -``` -Content-Type: application/json -X-Request-Origin: YOUR-REQUEST-ORIGIN-HERE -Authorization: Bearer YOUR-SCIM-TOKEN-HERE -``` - -## Paramètres de demande +## Paramètres de chemin | Paramètre | Requis | Type de données | Description | -| --------- | -------- | --------- | ----------- | +|---|---|---|---| | `id` | Requis | String | L’ID de ressource de l’utilisateur. Ce paramètre est renvoyé par les méthodes `POST` `/scim/v2/Users/` ou `GET` `/scim/v2/Users?filter=userName eq "user@test.com"`. | -{: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} +{: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} + +## Paramètres de demande + +Cet endpoint n’a pas de corps de demande. ## Exemple de demande ```json diff --git a/_lang/fr/_api/endpoints/scim/post_create_user_account.md b/_lang/fr/_api/endpoints/scim/post_create_user_account.md index a1004292aa7..fc9b7133fbd 100644 --- a/_lang/fr/_api/endpoints/scim/post_create_user_account.md +++ b/_lang/fr/_api/endpoints/scim/post_create_user_account.md @@ -6,7 +6,7 @@ search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente les détails concernant l’endpoint Braze Créer un nouveau compteur utilisateur de tableau de bord." +description: "Cet article présente en détail l’endpoint Braze Créer un nouveau compteur utilisateur de tableau de bord." --- diff --git a/_lang/fr/_api/endpoints/scim/put_update_existing_user_account.md b/_lang/fr/_api/endpoints/scim/put_update_existing_user_account.md index c67a1b68c02..defe10cfe51 100644 --- a/_lang/fr/_api/endpoints/scim/put_update_existing_user_account.md +++ b/_lang/fr/_api/endpoints/scim/put_update_existing_user_account.md @@ -6,13 +6,13 @@ search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente des informations concernant l’endpoint Braze Mettre à jour un compte utilisateur de tableau de bord existant." +description: "Cet article présente en détail l’endpoint Braze Mettre à jour un compte utilisateur de tableau de bord existant." --- {% api %} # Mettre à jour un compte utilisateur de tableau de bord existant {% apimethod put %} -/scim/v2/Users/YOUR_ID_HERE +/scim/v2/Users/{id} {% endapimethod %} Cet endpoint vous permet de mettre à jour un compte utilisateur du tableau de bord existant en spécifiant la ressource `id` retournée par la méthode [`POST`]({{site.baseurl}}/scim/post_create_user_account/) SCIM. Il permet de mettre à jour les prénoms, noms de famille, permissions (pour définir des permissions au niveau de la société, du groupe d’apps et de l’équipe) et département. Pour plus d’informations sur la manière d’obtenir un jeton SCIM, consultez [Automated user provisioning]({{site.baseurl}}/scim/automated_user_provisioning/) (Approvisionnement automatisé des utilisateurs). @@ -25,6 +25,13 @@ Pour des raisons de sécurité, `userName` (adresse e-mail) ne peut pas actuelle {% multi_lang_include rate_limits.md endpoint='update dashboard user' %} +## Paramètres de chemin + +| Paramètre | Requis | Type de données | Description | +|---|---|---|---| +| `id` | Requis | String | L’ID de ressource de l’utilisateur. Ce paramètre est renvoyé par les méthodes `POST` `/scim/v2/Users/` ou `GET` `/scim/v2/Users?filter=userName eq "user@test.com"`. | +{: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} + ## Corps de la demande ``` Content-Type: application/json @@ -61,13 +68,13 @@ Authorization: Bearer YOUR-SCIM-TOKEN-HERE | Paramètre | Requis | Type de données | Description | | --------- | -------- | --------- | ----------- | -| `id` | Requis | String | L’ID de ressource de l’utilisateur. Ce paramètre est renvoyé par les méthodes `POST` `/scim/v2/Users/` ou `GET` `/scim/v2/Users?filter=userName eq "user@test.com"`. | | `schemas` | Requis | Tableau de chaînes de caractères | Nom du schéma SCIM 2.0 attendu pour l’objet Utilisateur. | | `name` | Requis | Object JSON | Cet objet contient le prénom et le nom de famille de l’utilisateur. | | `department` | Requis | String | Une chaîne de caractères de département valide provenant de la [documentation des chaînes de caractères de département]({{site.baseurl}}/scim_api_appendix/#department-strings). | | `permissions` | Requis | Object JSON | Un objet de permissions tel que décrit dans la [documentation d’objet de permissions]({{site.baseurl}}/scim_api_appendix/#permissions-object). | {: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} + ## Exemple de demande ```json curl --location --request PUT 'https://rest.iad-01.braze.com/scim/v2/Users/dfa245b7-24195aec-887bb3ad-602b3340' \ diff --git a/_lang/fr/_api/endpoints/sms/get_query_invalid_numbers.md b/_lang/fr/_api/endpoints/sms/get_query_invalid_numbers.md index 9737de37739..3e3694a4c01 100644 --- a/_lang/fr/_api/endpoints/sms/get_query_invalid_numbers.md +++ b/_lang/fr/_api/endpoints/sms/get_query_invalid_numbers.md @@ -5,10 +5,10 @@ search_tag: Endpoint page_order: 1 layout: api_page page_type: reference -description: "Cet article donne des détails sur la requête de numéros de téléphone non valides de l’endpoint Braze." +description: "Cet article présente en détail l’endpoint Braze Interroger les numéros de téléphone non valides." --- {% api %} -# Requête ou liste des numéros de téléphone non valides +# Interroger les numéros de téléphone non valides {% apimethod get %} /sms/invalid_phone_numbers {% endapimethod %} diff --git a/_lang/fr/_api/endpoints/sms/post_remove_invalid_numbers.md b/_lang/fr/_api/endpoints/sms/post_remove_invalid_numbers.md index 7768f608133..480d5a6d439 100644 --- a/_lang/fr/_api/endpoints/sms/post_remove_invalid_numbers.md +++ b/_lang/fr/_api/endpoints/sms/post_remove_invalid_numbers.md @@ -5,7 +5,7 @@ search_tag: Endpoint page_order: 2 layout: api_page page_type: reference -description: "Cet article donne des détails sur la suppression de numéros de téléphone non valides de l’endpoint Braze." +description: "Cet article présente en détail l’endpoint Braze Supprimer les numéros de téléphone non valides." --- {% api %} diff --git a/_lang/fr/_api/endpoints/subscription_groups/get_list_user_subscription_group_status.md b/_lang/fr/_api/endpoints/subscription_groups/get_list_user_subscription_group_status.md index 1ae4d367cfe..53e06572dad 100644 --- a/_lang/fr/_api/endpoints/subscription_groups/get_list_user_subscription_group_status.md +++ b/_lang/fr/_api/endpoints/subscription_groups/get_list_user_subscription_group_status.md @@ -9,7 +9,7 @@ description: "Cet article présente en détail l’endpoint Braze Répertorier l --- {% api %} -# Obtenir le statut du groupe d’abonnement des utilisateurs +# Répertorier le statut du groupe d’abonnement de l’utilisateur {% apimethod get %} /subscription/status/get {% endapimethod %} diff --git a/_lang/fr/_api/endpoints/subscription_groups/get_list_user_subscription_groups.md b/_lang/fr/_api/endpoints/subscription_groups/get_list_user_subscription_groups.md index 658982e6a7f..333d6b97bb2 100644 --- a/_lang/fr/_api/endpoints/subscription_groups/get_list_user_subscription_groups.md +++ b/_lang/fr/_api/endpoints/subscription_groups/get_list_user_subscription_groups.md @@ -9,7 +9,7 @@ description: "Cet article présente en détail l’endpoint Braze Répertorier l --- {% api %} -# Obtenir les groupes d’abonnement des utilisateurs +# Répertorier les groupes d’abonnement de l’utilisateur {% apimethod get %} /subscription/user/status {% endapimethod %} diff --git a/_lang/fr/_api/endpoints/subscription_groups/post_update_user_subscription_group_status.md b/_lang/fr/_api/endpoints/subscription_groups/post_update_user_subscription_group_status.md index cc18dec26a6..152af92b96b 100644 --- a/_lang/fr/_api/endpoints/subscription_groups/post_update_user_subscription_group_status.md +++ b/_lang/fr/_api/endpoints/subscription_groups/post_update_user_subscription_group_status.md @@ -13,7 +13,7 @@ description: "Cet article présente en détail l’endpoint Braze Mettre à jour /subscription/status/set {% endapimethod %} -Utilisez cet endpoint pour mettre à jour en masse le statut d’abonnement jusqu’à 50 utilisateurs sur le tableau de bord de Braze. Vous pouvez accéder à un groupe d’abonnement `subscription_group_id` en accédant à la page **Groupe d’abonnements**. +Utilisez cet endpoint pour mettre à jour en masse le statut d’abonnement jusqu’à 50 utilisateurs sur le tableau de bord de Braze. Vous pouvez accéder à un groupe d’abonnement `subscription_group_id` en accédant à la page **Subscription Group (Groupe d’abonnement)**. Si vous souhaitez voir des exemples ou tester cet endpoint pour les **groupes d’abonnement aux e-mails** : @@ -71,7 +71,7 @@ Authorization: Bearer YOUR-REST-API-KEY Cette propriété ne doit pas être utilisée pour mettre à jour les informations de profil d’un utilisateur. Utilisez plutôt la propriété [/users/track]({{site.baseurl}}/api/endpoints/user_data/post_user_track/). {% alert tip %} -Lorsque vous créez de nouveaux utilisateurs au moyen de l’endpoint [/users/track]({{site.baseurl}}/api/endpoints/user_data/post_user_track/), vous pouvez définir des groupes d’abonnement dans l’objet attributs d’utilisateur, ce qui vous permet de créer un utilisateur et de définir l’état du groupe d’abonnement dans un seul appel API. +Lorsque vous créez de nouveaux utilisateurs au moyen de l’endpoint [/users/track]({{site.baseurl}}/api/endpoints/user_data/post_user_track/), vous pouvez définir des groupes d'abonnement dans l’objet attributs d’utilisateur, ce qui vous permet de créer un utilisateur et de définir l’état du groupe d’abonnement dans un seul appel API. {% endalert %} ## Paramètres de demande @@ -85,7 +85,10 @@ Lorsque vous créez de nouveaux utilisateurs au moyen de l’endpoint [/users/tr | `phone` | Requis* | Chaîne de caractères au format [E.164](https://en.wikipedia.org/wiki/E.164) | Le numéro de téléphone de l’utilisateur peut être transmis comme un tableau de chaînes de caractères. Doit inclure au moins un numéro de téléphone (maximum 50). | {: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} -## Exemple de demande d’e-mail +## Exemple de requêtes + +### E-mail + ``` curl --location --request POST 'https://rest.iad-01.braze.com/subscription/status/set' \ --header 'Content-Type: application/json' \ @@ -99,7 +102,8 @@ curl --location --request POST 'https://rest.iad-01.braze.com/subscription/statu ' ``` -## Exemple de demande de SMS +### SMS + ``` curl --location --request POST 'https://rest.iad-01.braze.com/subscription/status/set' \ --header 'Content-Type: application/json' \ @@ -115,7 +119,7 @@ curl --location --request POST 'https://rest.iad-01.braze.com/subscription/statu ## Exemple de réponse réussie -Réponse : (statut 201) +Le code de statut `201` pourrait renvoyer le corps de réponse suivant. ```json { diff --git a/_lang/fr/_api/endpoints/subscription_groups/post_update_user_subscription_group_status_v2.md b/_lang/fr/_api/endpoints/subscription_groups/post_update_user_subscription_group_status_v2.md index 2c8505ad998..5e4561799a4 100644 --- a/_lang/fr/_api/endpoints/subscription_groups/post_update_user_subscription_group_status_v2.md +++ b/_lang/fr/_api/endpoints/subscription_groups/post_update_user_subscription_group_status_v2.md @@ -3,7 +3,7 @@ nav_title: "POST : mettre à jour le statut du groupe d’abonnement de l’uti alias: /post_update_user_subscription_group_status_v2/ layout: api_page page_type: reference -description: "Cet article présente des informations concernant l’endpoint Mettre à jour le statut du groupe d’abonnement Braze V2 de l’utilisateur." +description: "Cet article présente en détail l’endpoint Braze V2 Mettre à jour le statut du groupe d’abonnement de l’utilisateur." platform: API channel: @@ -11,7 +11,7 @@ channel: --- {% api %} -# Mettre à jour le statut du groupe d’abonnement de l’utilisateur V2 +# Mettre à jour le statut du groupe d’abonnement de l’utilisateur (V2) {% apimethod post %} /v2/subscription/status/set {% endapimethod %} @@ -53,7 +53,7 @@ Authorization: Bearer YOUR-REST-API-KEY \* Notez que vous ne pouvez pas inclure à la fois les paramètres `emails` et `phones`. De plus, `emails`, `phones` et `external_ids` peuvent tous être envoyés individuellement. {% alert tip %} -Lorsque vous créez de nouveaux utilisateurs au moyen de l’endpoint [/users/track]({{site.baseurl}}/api/endpoints/user_data/post_user_track/), vous pouvez définir des groupes d’abonnement dans l’objet attributs d’utilisateur, ce qui vous permet de créer un utilisateur et de définir l’état du groupe d’abonnement dans un seul appel API. +Lorsque vous créez de nouveaux utilisateurs au moyen de l’endpoint [/users/track]({{site.baseurl}}/api/endpoints/user_data/post_user_track/), vous pouvez définir des groupes d'abonnement dans l’objet attributs d’utilisateur, ce qui vous permet de créer un utilisateur et de définir l’état du groupe d’abonnement dans un seul appel API. {% endalert %} ## Paramètres de demande @@ -71,7 +71,7 @@ Lorsque vous créez de nouveaux utilisateurs au moyen de l’endpoint [/users/tr Notez que vous ne pouvez pas inclure à la fois les paramètres `emails` et `phones`. De plus, `emails`, `phones` et `external_ids` peuvent tous être envoyés individuellement. {% endalert %} -## Exemple de demande d’e-mail et de SMS +### Exemple de requêtes L’exemple suivant utilise `external_id` pour effectuer un appel API pour les e-mails et SMS. @@ -95,7 +95,7 @@ curl --location --request POST 'https://rest.iad-01.braze.com/v2/subscription/st } ``` -## Exemple de demande d’e-mail +## E-mail ``` curl --location --request POST 'https://rest.iad-01.braze.com/v2/subscription/status/set' \ @@ -113,7 +113,7 @@ curl --location --request POST 'https://rest.iad-01.braze.com/v2/subscription/st ' ``` -## Exemple de demande de SMS +## SMS ``` curl --location --request POST 'https://rest.iad-01.braze.com/v2/subscription/status/set' \ diff --git a/_lang/fr/_api/endpoints/templates/content_blocks_templates/get_list_email_content_blocks.md b/_lang/fr/_api/endpoints/templates/content_blocks_templates/get_list_email_content_blocks.md index d9e2862f977..2b08b79b499 100644 --- a/_lang/fr/_api/endpoints/templates/content_blocks_templates/get_list_email_content_blocks.md +++ b/_lang/fr/_api/endpoints/templates/content_blocks_templates/get_list_email_content_blocks.md @@ -60,19 +60,19 @@ Authorization: Bearer YOUR-REST-API-KEY } ``` -### Erreurs possibles +## Résolution des problèmes Le tableau suivant répertorie les erreurs renvoyées possibles et les étapes de résolution des problèmes associées. | Erreur | Résolution des problèmes | | --- | --- | -| Modifié après que l’heure ne soit plus valide | La date fournie n’est pas une date valide ou analysable. Reformater cette valeur en tant que chaîne de caractères au format ISO 8601 (`yyyy-mm-ddThh:mm:ss.ffffff`). | -| Modifié avant que l’heure ne soit plus valide | La date fournie n’est pas une date valide ou analysable. Reformater cette valeur en tant que chaîne de caractères au format ISO 8601 (`yyyy-mm-ddThh:mm:ss.ffffff`). | -| La modification après l’heure doit être antérieure ou identique à la modification avant l’heure. | Modifier la valeur `modified_after` à une heure antérieure à l’heure `modified_before`. | -| La limite du nombre de blocs de contenu n’est pas valide | Le paramètre `limit` doit être un entier (nombre positif) supérieur à 0. | -| La limite du nombre de blocs de contenu doit être supérieure à 0 | Modifier le paramètre `limit` à un entier supérieur à 0. | -| La limite du nombre de blocs de contenu dépasse le maximum de 1 000 | Modifier le paramètre `limit` à un entier inférieur à 1 000. | -| Décalage non valide | Le paramètre `offset` doit être un entier supérieur à 0. | +| `Modified after time is invalid` | La date fournie n’est pas une date valide ou analysable. Reformater cette valeur en tant que chaîne de caractères au format ISO 8601 (`yyyy-mm-ddThh:mm:ss.ffffff`). | +| `Modified before time is invalid` | La date fournie n’est pas une date valide ou analysable. Reformater cette valeur en tant que chaîne de caractères au format ISO 8601 (`yyyy-mm-ddThh:mm:ss.ffffff`). | +| `Modified after time must be earlier than or the same as modified before time.` | Modifier la valeur `modified_after` à une heure antérieure à l’heure `modified_before`. | +| `Content Block number limit is invalid` | Le paramètre `limit` doit être un entier (nombre positif) supérieur à 0. | +| `Content Block number limit must be greater than 0` | Modifier le paramètre `limit` à un entier supérieur à 0. | +| `Content Block number limit exceeds maximum of 1000` | Modifier le paramètre `limit` à un entier inférieur à 1 000. | +| `Offset is invalid` | Le paramètre `offset` doit être un entier supérieur à 0. | | Le décalage doit être supérieur à 0 | Modifier le paramètre `offset` à un entier supérieur à 0. | {: .reset-td-br-1 .reset-td-br-2} diff --git a/_lang/fr/_api/endpoints/templates/content_blocks_templates/get_see_email_content_blocks_information.md b/_lang/fr/_api/endpoints/templates/content_blocks_templates/get_see_email_content_blocks_information.md index 3015bc98974..af61aa10de6 100644 --- a/_lang/fr/_api/endpoints/templates/content_blocks_templates/get_see_email_content_blocks_information.md +++ b/_lang/fr/_api/endpoints/templates/content_blocks_templates/get_see_email_content_blocks_information.md @@ -5,7 +5,7 @@ search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Afficher les informations sur les blocs de contenu disponibles." +description: "Cet article présente en détail l’endpoint Braze Afficher les informations sur les blocs de contenu." --- {% api %} @@ -58,16 +58,16 @@ Authorization: Bearer YOUR-API-KEY-HERE } ``` -### Erreurs possibles +## Résolution des problèmes Le tableau suivant répertorie les erreurs renvoyées possibles et les étapes de résolution des problèmes associées. | Erreur | Résolution des problèmes | | --- | --- | -| L’ID du bloc de contenu ne peut pas être vide | Assurez-vous qu’un bloc de contenu est répertorié dans votre demande et compris entre des guillemets (`""`). | -| L’ID du bloc de contenu n’est pas valide pour ce groupe d’apps | Ce bloc de contenu n’existe pas ou est dans un compte de société ou un groupe d’apps différent. | -| Le bloc de contenu a été supprimé : contenu non disponible | Ce bloc de contenu, bien qu’il ait pu exister, a été supprimé. | -| Inclure les données d’inclusion : erreur | Ce paramètre accepte uniquement les valeurs booléennes true ou false). Assurez-vous que la valeur de `include_inclusion_data` n’est pas comprise entre des guillemets (`""`), sinon la valeur est envoyée comme chaîne de caractères. Voir les [paramètres de demande](#request-parameters) pour plus d’informations. | +| `Content Block ID cannot be blank` | Assurez-vous qu’un bloc de contenu est répertorié dans votre demande et compris entre des guillemets (`""`). | +| `Content Block ID is invalid for this App Group` | Ce bloc de contenu n’existe pas ou est dans un compte de société ou un groupe d’apps différent. | +| `Content Block has been deleted—content not available` | Ce bloc de contenu, bien qu’il ait pu exister, a été supprimé. | +| `Include Inclusion Data—error` | Ce paramètre accepte uniquement les valeurs booléennes true ou false). Assurez-vous que la valeur de `include_inclusion_data` n’est pas comprise entre des guillemets (`""`), sinon la valeur est envoyée comme chaîne de caractères. Voir les [paramètres de demande](#request-parameters) pour plus d’informations. | {: .reset-td-br-1 .reset-td-br-2} diff --git a/_lang/fr/_api/endpoints/templates/content_blocks_templates/post_create_email_content_block.md b/_lang/fr/_api/endpoints/templates/content_blocks_templates/post_create_email_content_block.md index fbbf4fc403e..6f8b58ef36e 100644 --- a/_lang/fr/_api/endpoints/templates/content_blocks_templates/post_create_email_content_block.md +++ b/_lang/fr/_api/endpoints/templates/content_blocks_templates/post_create_email_content_block.md @@ -5,7 +5,7 @@ search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Créer des blocs de contenu d’e-mail." +description: "Cet article présente en détail l’endpoint Braze Créer des blocs de contenu." --- {% api %} @@ -78,28 +78,28 @@ Authorization: Bearer YOUR-REST-API-KEY } ``` -### Erreurs possibles +## Résolution des problèmes -Le tableau suivant répertorie les erreurs renvoyées possibles et les étapes de résolution des problèmes associées, le cas échéant. +Le tableau suivant répertorie les erreurs renvoyées possibles et les étapes de résolution des problèmes associées. | Erreur | Résolution des problèmes | | --- | --- | -| Le contenu ne peut pas être vide | -| Le contenu doit être une chaîne de caractères | Assurez-vous que votre contenu est compris entre des guillemets (`""`). | -| Le contenu doit être inférieur à 50 Ko | Le contenu de votre bloc de contenu doit être inférieur à 50 Ko. | -| Le contenu contient du langage Liquid incorrect | Le langage Liquid fourni n’est pas valide ou pas analysable. Réessayez avec un langage Liquid valide ou contactez-nous pour obtenir de l’aide. | -| Le bloc de contenu ne peut pas être référencé en soi | -| La description du bloc de contenu ne peut pas être vide | -| La description du bloc de contenu doit être une chaîne de caractères | Assurez-vous que la description de votre bloc de contenu est comprise entre des guillemets (`""`). | -| La description du bloc de contenu doit être inférieure à 250 caractères | -| Le nom du bloc de contenu ne peut pas être vide | -| Le nom du bloc de contenu doit être inférieur à 100 caractères | -| Le nom du bloc de contenu ne peut contenir que des caractères alphanumériques | Les noms de bloc de contenu peuvent comprendre l’un des caractères suivants : les lettres (majuscules ou minuscules) de `A` à `Z`, les chiffres de `0` à `9`, les tirets `-`, et les traits de soulignement `_`. Il ne peut pas contenir de caractères non alphanumériques comme des émojis, `!`, `@`, `~`, `&` et d’autres caractères « spéciaux ». | -| Le bloc de contenu avec ce nom existe déjà | Essayez un autre nom. | -| L’état du bloc de contenu doit être Actif ou Brouillon | -| Les balises doivent être un tableau | Les balises doivent être un tableau de chaînes de caractères, par exemple `["marketing", "promotional", "transactional"]`. | -| Toutes les balises doivent être des chaînes de caractères | Assurez-vous que vos balises sont comprises entre des guillemets (`""`). | -| Certaines balises sont introuvables | Pour ajouter une balise lors de la création d’un bloc de contenu, la balise doit déjà exister dans Braze. | +| `Content cannot be blank` | | +| `Content must be a string` | Assurez-vous que votre contenu est compris entre des guillemets (`""`). | +| `Content must be smaller than 50kb` | Le contenu de votre bloc de contenu doit être inférieur à 50 Ko. | +| `Content contains malformed liquid` | Le langage Liquid fourni n’est pas valide ou pas analysable. Réessayez avec un langage Liquid valide ou contactez-nous pour obtenir de l’aide. | +| `Content Block cannot be referenced within itself` | | +| `Content Block description cannot be blank` | | +| `Content Block description must be a string` | Assurez-vous que la description de votre bloc de contenu est comprise entre des guillemets (`""`). | +| `Content Block description must be shorter than 250 characters` | | +| `Content Block name cannot be blank` | | +| `Content Block name must be shorter than 100 characters` | | +| `Content Block name can only contain alphanumeric characters` | Les noms de bloc de contenu peuvent comprendre l’un des caractères suivants : les lettres (majuscules ou minuscules) de `A` à `Z`, les chiffres de `0` à `9`, les tirets `-`, et les traits de soulignement `_`. Il ne peut pas contenir de caractères non alphanumériques comme des émojis, `!`, `@`, `~`, `&` et d’autres caractères « spéciaux ». | +| `Content Block with this name already exists` | Essayez un autre nom. | +| `Content Block state must be either active or draft` | | +| `Tags must be an array` | Les balises doivent être un tableau de chaînes de caractères, par exemple `["marketing", "promotional", "transactional"]`. | | +| `All tags must be strings` | Assurez-vous que vos balises sont comprises entre des guillemets (`""`). | +| `Some tags could not be found` | Pour ajouter une balise lors de la création d’un bloc de contenu, la balise doit déjà exister dans Braze. | {: .reset-td-br-1 .reset-td-br-2} diff --git a/_lang/fr/_api/endpoints/templates/content_blocks_templates/post_update_content_block.md b/_lang/fr/_api/endpoints/templates/content_blocks_templates/post_update_content_block.md index 396541fbba6..d2029d8469a 100644 --- a/_lang/fr/_api/endpoints/templates/content_blocks_templates/post_update_content_block.md +++ b/_lang/fr/_api/endpoints/templates/content_blocks_templates/post_update_content_block.md @@ -5,7 +5,7 @@ search_tag: Endpoint page_order: 4 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Mettre à jour des blocs de contenu d’e-mail." +description: "Cet article présente en détail l’endpoint Braze Mettre à jour des blocs de contenu." --- {% api %} @@ -80,30 +80,30 @@ Authorization: Bearer YOUR-REST-API-KEY } ``` -### Erreurs possibles +## Résolution des problèmes -Le tableau suivant répertorie les erreurs renvoyées possibles et les étapes de résolution des problèmes associées, le cas échéant. +Le tableau suivant répertorie les erreurs renvoyées possibles et les étapes de résolution des problèmes associées. | Erreur | Résolution des problèmes | | --- | --- | -| Le contenu ne peut pas être vide | -| Le contenu doit être une chaîne de caractères | Assurez-vous que votre contenu est compris entre des guillemets (`""`). | -| Le contenu doit être inférieur à 50 Ko | Le contenu de votre bloc de contenu doit être inférieur à 50 Ko. | -| Le contenu contient du langage Liquid incorrect | Le langage Liquid fourni n’est pas valide ou pas analysable. Réessayez avec un langage Liquid valide ou contactez-nous pour obtenir de l’aide. | -| Le bloc de contenu ne peut pas être référencé en soi | -| La description du bloc de contenu ne peut pas être vide | -| La description du bloc de contenu doit être une chaîne de caractères | Assurez-vous que la description de votre bloc de contenu est comprise entre des guillemets (`""`). | -| La description du bloc de contenu doit être inférieure à 250 caractères | -| Le nom du bloc de contenu ne peut pas être vide | -| Le nom du bloc de contenu doit être inférieur à 100 caractères | -| Le nom du bloc de contenu ne peut contenir que des caractères alphanumériques | Les noms de bloc de contenu peuvent comprendre l’un des caractères suivants : les lettres (majuscules ou minuscules) de `A` à `Z`, les chiffres de `0` à `9`, les tirets `-`, et les traits de soulignement `_`. Il ne peut pas contenir de caractères non alphanumériques comme des émojis, `!`, `@`, `~`, `&` et d’autres caractères « spéciaux ». | -| Le bloc de contenu avec ce nom existe déjà | Essayez un autre nom. | -| Le nom du bloc de contenu ne peut pas être mis à jour pour les blocs de contenu actifs | -| L’état du bloc de contenu doit être Actif ou Brouillon | -| Le bloc de contenu actif ne peut pas être mis à jour vers Ébauche. Créer un nouveau bloc de contenu | -| Les balises doivent être un tableau | Les balises doivent être un tableau de chaînes de caractères, par exemple `["marketing", "promotional", "transactional"]`. | -| Toutes les balises doivent être des chaînes de caractères | Assurez-vous que vos balises sont comprises entre des guillemets (`""`). | -| Certaines balises sont introuvables | Pour ajouter une balise lors de la création d’un bloc de contenu, la balise doit déjà exister dans Braze. | +| `Content cannot be blank` | +| `Content must be a string` | Assurez-vous que votre contenu est compris entre des guillemets (`""`). | +| `Content must be smaller than 50kb` | Le contenu de votre bloc de contenu doit être inférieur à 50 Ko. | +| `Content contains malformed liquid` | Le langage Liquid fourni n’est pas valide ou pas analysable. Réessayez avec un langage Liquid valide ou contactez-nous pour obtenir de l’aide. | +| `Content Block cannot be referenced within itself` | +| `Content Block description cannot be blank` | +| `Content Block description must be a string` | Assurez-vous que la description de votre bloc de contenu est comprise entre des guillemets (`""`). | +| `Content Block description must be shorter than 250 characters` | +| `Content Block name cannot be blank` | +| `Content Block name must be shorter than 100 characters` | +| `Content Block name can only contain alphanumeric characters` | Les noms de bloc de contenu peuvent comprendre l’un des caractères suivants : les lettres (majuscules ou minuscules) de `A` à `Z`, les chiffres de `0` à `9`, les tirets `-`, et les traits de soulignement `_`. Il ne peut pas contenir de caractères non alphanumériques comme des émojis, `!`, `@`, `~`, `&` et d’autres caractères « spéciaux ». | +| `Content Block with this name already exists` | Essayez un autre nom. | +| `Content Block name cannot be updated for active Content Blocks` | +| `Content Block state must be either active or draft` | +| `Active Content Block can not be updated to Draft. Create a new Content Block.` | +| `Tags must be an array` | Les balises doivent être un tableau de chaînes de caractères, par exemple `["marketing", "promotional", "transactional"]`. | +| `All tags must be strings` | Assurez-vous que vos balises sont comprises entre des guillemets (`""`). | +| `Some tags could not be found` | Pour ajouter une balise lors de la création d’un bloc de contenu, la balise doit déjà exister dans Braze. | {: .reset-td-br-1 .reset-td-br-2} diff --git a/_lang/fr/_api/endpoints/templates/email_templates/get_list_email_templates.md b/_lang/fr/_api/endpoints/templates/email_templates/get_list_email_templates.md index 5805614676f..10c958c5f36 100644 --- a/_lang/fr/_api/endpoints/templates/email_templates/get_list_email_templates.md +++ b/_lang/fr/_api/endpoints/templates/email_templates/get_list_email_templates.md @@ -41,7 +41,7 @@ curl --location --request GET 'https://rest.iad-01.braze.com/templates/email/lis ## Réponse {% alert important %} -Les modèles construits à l’aide de l’éditeur Drag & Drop ne sont pas fournis dans cette réponse. +Les modèles construits à l’aide de l’éditeur Drag & Drop pour les e-mails ne sont pas fournis dans cette réponse. {% endalert %} ```json diff --git a/_lang/fr/_api/endpoints/templates/email_templates/post_update_email_template.md b/_lang/fr/_api/endpoints/templates/email_templates/post_update_email_template.md index baf3e033814..fcad2673520 100644 --- a/_lang/fr/_api/endpoints/templates/email_templates/post_update_email_template.md +++ b/_lang/fr/_api/endpoints/templates/email_templates/post_update_email_template.md @@ -74,7 +74,7 @@ curl --location --request POST 'https://rest.iad-01.braze.com/templates/email/up }' ``` -## Erreurs possibles +## Résolution des problèmes Le tableau suivant répertorie les erreurs renvoyées possibles et les étapes de résolution des problèmes associées, le cas échéant. diff --git a/_lang/fr/_api/endpoints/user_data.md b/_lang/fr/_api/endpoints/user_data.md index b4a8a4303dc..af2f3aa38e5 100644 --- a/_lang/fr/_api/endpoints/user_data.md +++ b/_lang/fr/_api/endpoints/user_data.md @@ -31,10 +31,10 @@ guide_featured_list: - name: "POST : Identifier un utilisateur" link: /docs/api/endpoints/user_data/post_user_identify/ fa_icon: fas fa-user-circle - - name: "POST : Suivi utilisateur" + - name: "POST : Suivre les utilisateurs" link: /docs/api/endpoints/user_data/post_user_track/ fa_icon: fas fa-database - - name: "POST : fusion d’utilisateurs" + - name: "POST : Fusionner les utilisateurs" link: /docs/api/endpoints/user_data/post_users_merge/ fa_icon: fas fa-users diff --git a/_lang/fr/_api/endpoints/user_data/external_id_migration/post_external_ids_remove.md b/_lang/fr/_api/endpoints/user_data/external_id_migration/post_external_ids_remove.md index 78a5947439d..878cbb33551 100644 --- a/_lang/fr/_api/endpoints/user_data/external_id_migration/post_external_ids_remove.md +++ b/_lang/fr/_api/endpoints/user_data/external_id_migration/post_external_ids_remove.md @@ -16,6 +16,8 @@ description: "Cet article présente en détail l’endpoint Supprimer des ID ext Utilisez cet endpoint pour supprimer les anciens ID externes obsolètes de vos utilisateurs. Cet endpoint supprime complètement l’ID obsolète et ne peut pas être annulé. +{% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#e16b5340-5f44-42b6-9033-2398faf8908e {% endapiref %} + {% alert warning %} Cet endpoint supprime complètement l’ID obsolète et ne peut pas être annulé. Utilisez cet endpoint pour enlever des `external_ids` obsolètes qui sont toujours associés à des utilisateurs dans votre système peut vous empêcher définitivement de trouver les données de ces utilisateurs. {% endalert %} @@ -24,8 +26,6 @@ Vous pouvez envoyer jusqu’à 50 ID externes par demande. Vous devrez créer une nouvelle [clé API]({{site.baseurl}}/api/api_key/) avec les autorisations pour cet endpoint. -{% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#e16b5340-5f44-42b6-9033-2398faf8908e {% endapiref %} - ## Limite de débit {% multi_lang_include rate_limits.md endpoint='external id migration' %} @@ -72,8 +72,8 @@ La réponse confirmera toutes les suppressions réussies et les suppressions inf ``` { "message" : (string) status message, - "external_ids" : (array) successful rename operations, - "rename_errors": (array) + "removed_ids" : (array) successful remove operations, + "removal_errors": (array) } ``` diff --git a/_lang/fr/_api/endpoints/user_data/external_id_migration/post_external_ids_rename.md b/_lang/fr/_api/endpoints/user_data/external_id_migration/post_external_ids_rename.md index e41a34c5277..527a118a0db 100644 --- a/_lang/fr/_api/endpoints/user_data/external_id_migration/post_external_ids_rename.md +++ b/_lang/fr/_api/endpoints/user_data/external_id_migration/post_external_ids_rename.md @@ -1,6 +1,6 @@ --- -nav_title: "POST : renommer des ID externes" -article_title: "POST : renommer des ID externes" +nav_title: "POST : Renommer des ID externes" +article_title: "POST : Renommer des ID externes" search_tag: Endpoint page_order: 1 layout: api_page @@ -9,14 +9,16 @@ description: "Cet article présente en détail l’endpoint Renommer des ID exte --- {% api %} -# Renommer des ID externes +#  : Renommer des ID externes {% apimethod post %} /users/external_ids/rename {% endapimethod %} Utilisez cet endpoint pour renommer les ID externes de vos utilisateurs. Cet endpoint définit un nouvel `external_id` (principal) pour l’utilisateur et rend son `external_id` existant obsolète. Cela signifie que l’utilisateur peut être identifié par l’un ou l’autre des `external_id` jusqu’à ce que celui qui est obsolète soit supprimé. La présence de plusieurs ID externes permet de prévoir une période de migration pour que les versions antérieures de vos applications qui utilisent l’ancien schéma de nommage des ID externes ne s’interrompent pas. -Quand votre ancien schéma de noms n’est plus utilisé, nous vous recommandons fortement de supprimer les ID externes obsolètes en utilisant l’endpoint [/users/external_ids/remove]({{site.baseurl}}/api/endpoints/user_data/external_id_migration/post_external_ids_remove). +{% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#17682d2b-1546-4a3c-9703-aa5a12861d7c {% endapiref %} + +Quand votre ancien schéma de noms n’est plus utilisé, nous vous recommandons fortement de supprimer les ID externes obsolètes en utilisant l’endpoint [`/users/external_ids/remove`]({{site.baseurl}}/api/endpoints/user_data/external_id_migration/post_external_ids_remove). {% alert warning %} Assurez-vous de supprimer les ID externes obsolètes à l’aide de l’endpoint `/users/external_ids/remove` plutôt que `/users/delete`. L’envoi d’une demande à `/users/delete` avec l’ID externe obsolète supprime entièrement le profil utilisateur et ne peut pas être annulé. @@ -26,8 +28,6 @@ Vous pouvez envoyer jusqu’à 50 objets renommés par demande. Vous devrez créer une nouvelle [clé API]({{site.baseurl}}/api/api_key/) avec les autorisations pour cet endpoint. -{% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#17682d2b-1546-4a3c-9703-aa5a12861d7c {% endapiref %} - ## Limite de débit {% multi_lang_include rate_limits.md endpoint='external id migration' %} @@ -96,7 +96,7 @@ Non, puisque le nombre d’utilisateurs restera le même, ils auront simplement **Le comportement des utilisateurs change-t-il au cours du temps ?**
Non, étant donné que l’utilisateur est toujours le même et que tous ses comportements historiques sont toujours liés à lui. -**Est-il possible d’exécuter sur des groupes d’apps de développement/staging ?**
+**Est-il possible d’exécuter sur des groupes d’apps de développement/préproduction ?**
Oui. En fait, nous recommandons vivement de lancer une migration de test sur un groupe d’apps de développement ou de préproduction, et de veiller à ce que tout se soit bien passé avant d’exécuter sur les données de production. **Est-ce que cela consomme des points de données ?**
diff --git a/_lang/fr/_api/endpoints/user_data/post_user_alias.md b/_lang/fr/_api/endpoints/user_data/post_user_alias.md index 90719c664cf..b6389732cc9 100644 --- a/_lang/fr/_api/endpoints/user_data/post_user_alias.md +++ b/_lang/fr/_api/endpoints/user_data/post_user_alias.md @@ -5,7 +5,7 @@ search_tag: Endpoint page_order: 1 layout: api_page page_type: reference -description: "Cet article présente en détail l’endpoint Braze Créer de nouveaux alias utilisateur." +description: "Cet article présente en détail l’endpoint Braze Créer un nouvel alias utilisateur." --- {% api %} @@ -16,6 +16,8 @@ description: "Cet article présente en détail l’endpoint Braze Créer de nouv Utilisez cet endpoint pour ajouter de nouveaux alias utilisateur pour les utilisateurs identifiés existants, ou pour créer de nouveaux utilisateurs non identifiés. +{% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#5cf18e64-fd02-452f-8c90-9a0f7c4d0487 {% endapiref %} + {% alert note %} Vous pouvez ajouter jusqu’à 50 alias utilisateur par demande. {% endalert %} @@ -24,8 +26,6 @@ Vous pouvez ajouter jusqu’à 50 alias utilisateur par demande. **Créer un nouvel utilisateur alias uniquement** nécessite que l’`external_id` soit omis du nouvel objet Alias d’utilisateur. Une fois l’utilisateur créé, utilisez l’endpoint `/users/track` pour associer l’utilisateur alias uniquement aux attributs, événements et achats, et l’endpoint `/users/identify` pour identifier l’utilisateur avec un `external_id`. -{% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#5cf18e64-fd02-452f-8c90-9a0f7c4d0487 {% endapiref %} - ## Limite de débit {% multi_lang_include rate_limits.md endpoint='users alias new' %} diff --git a/_lang/fr/_api/endpoints/user_data/post_user_delete.md b/_lang/fr/_api/endpoints/user_data/post_user_delete.md index 86c5ba38b4a..38efcc15cd6 100644 --- a/_lang/fr/_api/endpoints/user_data/post_user_delete.md +++ b/_lang/fr/_api/endpoints/user_data/post_user_delete.md @@ -5,11 +5,11 @@ search_tag: Endpoint page_order: 5 layout: api_page page_type: reference -description: "Cet article décrit les détails de l’endpoint Braze de suppression de l’utilisateur." +description: "Cet article décrit les détails de l’endpoint Braze Suppression de l’utilisateur." --- {% api %} -# Endpoint Suppression de l’utilisateur +# Suppression de l’utilisateur {% apimethod post core_endpoint|https://www.braze.com/docs/core_endpoints %} /users/delete {% endapimethod %} diff --git a/_lang/fr/_api/endpoints/user_data/post_user_identify.md b/_lang/fr/_api/endpoints/user_data/post_user_identify.md index 83175645151..736c7b744d0 100644 --- a/_lang/fr/_api/endpoints/user_data/post_user_identify.md +++ b/_lang/fr/_api/endpoints/user_data/post_user_identify.md @@ -63,7 +63,7 @@ Définir le champ `merge_behavior` sur `merge` paramètre l’endpoint pour fusi - Prénom - Nom - E-mail -- Genre +- Sexe - Date de naissance - Numéro de téléphone - Fuseau horaire @@ -74,11 +74,24 @@ Définir le champ `merge_behavior` sur `merge` paramètre l’endpoint pour fusi - Date de la première session (Braze choisira la date la plus ancienne parmi les deux) - Date de la dernière session (Braze choisira la date la plus récente parmi les deux) - Attributs personnalisés -- Données sur les événements d’achats et personnalisés (sauf propriétés d’événements, compte, horodatages correspondant à la première et la dernière date) -- Propriétés d’événements d’achats et personnalisées pour la segmentation « X fois en Y jours » (où X <= 50 et Y <= 30) +- Données d’événement personnalisé et d’achat (à l’exclusion des propriétés de l’événement) +- Propriétés de l’événement d’achat et personnalisées pour la segmentation « X fois en Y jours » (où X <= 50 et Y <= 30) +- Résumé des événements personnalisés pouvant être segmentés + - Nombre d’événements (la somme des deux profils) + - Événement survenu pour la première fois (Braze choisira la date la plus ancienne parmi les deux) + - Événement survenu pour la dernière fois (Braze choisira la date la plus récente parmi les deux) +- Total des achats intégrés à l’application en centimes (la somme des deux profils) +- Nombre total d’achats (la somme des deux profils) +- Date du premier achat (Braze choisira la date la plus ancienne parmi les deux) +- Date du dernier achat (Braze choisira la date la plus récente parmi les deux) +- Résumés des applications +- Champs Last_X_at (Braze mettra à jour les champs si les champs du profil orphelins sont plus récents) +- Résumés de campagne (Braze choisira les champs de date les plus récents) +- Résumés du flux de travail (Braze choisira les champs de date les plus récents) +- Message et historique d’engagement du message L’un des champs suivants a été trouvé sur l’utilisateur anonyme ou l’utilisateur identifié : -- Nombre d’événements d’achats et personnalisés, ainsi que les horodatages correspondant à la première et la dernière date +- Nombre d’événements d’achats et personnalisés, ainsi que les horodatages correspondant à la première et dernière dates - Ces champs fusionnés mettront à jour les filtres « pour X événements en Y jours ». Pour les événements d’achat, ces filtres incluent « nombre d’achats en Y jours » et « argent dépensé au cours des Y derniers jours ». Les données de session ne seront fusionnées que si l’application existe sur les deux profils utilisateurs. Par exemple, si votre utilisateur cible ne dispose pas d’un résumé d’application pour « ABCApp », mais que votre utilisateur d’origine l’a, l’utilisateur cible disposera du résumé d’application pour « ABCApp » sur son profil après la fusion. diff --git a/_lang/fr/_api/endpoints/user_data/post_user_track.md b/_lang/fr/_api/endpoints/user_data/post_user_track.md index c891483f259..eb05e5cff0a 100644 --- a/_lang/fr/_api/endpoints/user_data/post_user_track.md +++ b/_lang/fr/_api/endpoints/user_data/post_user_track.md @@ -16,12 +16,12 @@ description: "Cet article présente en détail l’endpoint Braze Suivi utilisat Utilisez cet endpoint pour enregistrer des événements personnalisés, des achats et mettre à jour les attributs de profil utilisateur. +{% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#4cf57ea9-9b37-4e99-a02e-4373c9a4ee59 {% endapiref %} + {% alert note %} Braze traite les données transmises via l’API à leur valeur nominale et les clients ne devraient transmettre des deltas (modification des données) que pour minimiser la consommation inutile de points de données. Pour en savoir plus, consultez [Points de données]({{site.baseurl}}/user_guide/onboarding_with_braze/data_points/#data-points). {% endalert %} -{% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#4cf57ea9-9b37-4e99-a02e-4373c9a4ee59 {% endapiref %} - ## Limite de débit {% multi_lang_include rate_limits.md endpoint='users track' %} @@ -225,16 +225,7 @@ Si votre message contient une erreur fatale, vous recevrez la réponse suivante ### Codes de réponse des erreurs fatales -Les codes d’état suivants et les messages d’erreur associés seront renvoyés si votre demande rencontre une erreur fatale. Les codes d’erreur suivants indiquent qu’aucune donnée ne sera traitée. - -| Code d’erreur | Raison/Cause | -| ---------------------| --------------- | -| `400 Bad Request` | Syntaxe incorrecte. | -| `401 Unauthorized` | Clé API REST inconnue ou manquante. | -| `404 Not Found` | Clé API REST inconnue (si fournie). | -| `429 Rate Limited` | Limite de débit dépassée. | -| `5XX` | Erreur de serveur interne, vous devriez réessayer avec le délai exponentiel. | -{: .reset-td-br-1 .reset-td-br-2} +Pour les codes de statut et les messages d’erreur associés qui seront renvoyés si votre demande rencontre une erreur fatale, consultez la section [Erreurs fatales et réponses]({{site.baseurl}}/api/errors/#fatal-errors). Si vous recevez l’erreur « Le external_id indiqué est sur la liste noire et est non autorisé », votre requête contient peut-être un « utilisateur factice ». Pour plus d’informations, consultez [Blocage des courriers indésirables]({{site.baseurl}}/user_guide/data_and_analytics/user_data_collection/user_archival/#spam-blocking). diff --git a/_lang/fr/_api/endpoints/user_data/post_users_alias_update.md b/_lang/fr/_api/endpoints/user_data/post_users_alias_update.md index b5c4560464b..80bce4a7941 100644 --- a/_lang/fr/_api/endpoints/user_data/post_users_alias_update.md +++ b/_lang/fr/_api/endpoints/user_data/post_users_alias_update.md @@ -15,6 +15,8 @@ description: "Cet article présente en détail l’endpoint Braze Mettre à jour Utilisez cet endpoint pour mettre à jour les alias utilisateur existants. +{% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#a084b843-b3cd-43f0-bfb1-ef7bada839c5 {% endapiref %} + {% alert note %} Vous pouvez mettre à jour jusqu’à 50 alias d’utilisateurs par demande. {% endalert %} diff --git a/_lang/fr/_api/endpoints/user_data/post_users_merge.md b/_lang/fr/_api/endpoints/user_data/post_users_merge.md index 1878ca704c8..15aa0820e0c 100644 --- a/_lang/fr/_api/endpoints/user_data/post_users_merge.md +++ b/_lang/fr/_api/endpoints/user_data/post_users_merge.md @@ -1,6 +1,6 @@ --- -nav_title: "POST : fusion d’utilisateurs" -article_title: "POST : fusion d’utilisateurs" +nav_title: "POST : Fusionner les utilisateurs" +article_title: "POST : Fusionner les utilisateurs" search_tag: Endpoint page_order: 6 layout: api_page @@ -16,9 +16,7 @@ description: "Cet article présente en détail l’endpoint Braze Fusion d’uti Utilisez cet endpoint pour fusionner un utilisateur avec un autre utilisateur. Vous pouvez spécifier jusqu’à 50 fusions par requête. Cet endpoint est asynchrone. -{% alert important %} -Cet endpoint est actuellement en accès anticipé. Contactez votre CSM Braze si vous souhaitez participer à l’accès anticipé. -{% endalert %} +{% apiref postman %}https://documenter.getpostman.com/view/4689407/SVYrsdsG?version=latest#d262b86d-cf84-46e2-b9d0-f882bb7078de {% endapiref %} ## Limite de débit @@ -51,7 +49,7 @@ Cet endpoint fusionnera tous les champs suivants trouvés exclusivement depuis l - Prénom - Nom - E-mail -- Genre +- Sexe - Date de naissance - Numéro de téléphone - Fuseau horaire @@ -62,14 +60,27 @@ Cet endpoint fusionnera tous les champs suivants trouvés exclusivement depuis l - Date de la première session (Braze choisira la date la plus ancienne parmi les deux) - Date de la dernière session (Braze choisira la date la plus récente parmi les deux) - Attributs personnalisés -- Données sur les événements d’achats et personnalisés (sauf propriétés d’événements, compte, horodatages correspondant à la première et la dernière date) -- Propriétés d’événements d’achats et personnalisées pour la segmentation « X fois en Y jours » (où X <= 50 et Y <= 30) +- Données d’événement personnalisé et d’achat (à l’exclusion des propriétés de l’événement) +- Propriétés de l’événement d’achat et personnalisées pour la segmentation « X fois en Y jours » (où X <= 50 et Y <= 30) +- Résumé des événements personnalisés pouvant être segmentés + - Nombre d’événements (la somme des deux profils) + - Événement survenu pour la première fois (Braze choisira la date la plus ancienne parmi les deux) + - Événement survenu pour la dernière fois (Braze choisira la date la plus récente parmi les deux) +- Total des achats intégrés à l’application en centimes (la somme des deux profils) +- Nombre total d’achats (la somme des deux profils) +- Date du premier achat (Braze choisira la date la plus ancienne parmi les deux) +- Date du dernier achat (Braze choisira la date la plus récente parmi les deux) +- Résumés des applications +- Champs Last_X_at (Braze mettra à jour les champs si les champs du profil orphelins sont plus récents) +- Résumés de campagne (Braze choisira les champs de date les plus récents) +- Résumés du flux de travail (Braze choisira les champs de date les plus récents) +- Message et historique d’engagement du message L’un des champs suivants a été trouvé sur un utilisateur vers l’autre utilisateur : -- Nombre d’événements d’achats et personnalisés, ainsi que les horodatages correspondant à la première et la dernière date +- Nombre d’événements d’achats et personnalisés, ainsi que les horodatages correspondant à la première et dernière dates - Ces champs fusionnés mettront à jour les filtres « pour X événements en Y jours ». Pour les événements d’achat, ces filtres incluent « nombre d’achats en Y jours » et « argent dépensé au cours des Y derniers jours ». -Les données de session ne seront fusionnées que si l’application existe sur les deux profils utilisateurs. Par exemple, si votre utilisateur cible ne dispose pas d’un résumé d’application pour « ABCApp », mais que votre utilisateur d’origine l’a, l’utilisateur cible disposera du résumé d’application pour « ABCApp » sur son profil après la fusion. Notez que les messages et l’historique d’engagement des messages ne seront pas conservés après la fusion des deux profils d’utilisateur. +Les données de session ne seront fusionnées que si l’application existe sur les deux profils utilisateurs. Par exemple, si votre utilisateur cible ne dispose pas d’un résumé d’application pour « ABCApp », mais que votre utilisateur d’origine l’a, l’utilisateur cible disposera du résumé d’application pour « ABCApp » sur son profil après la fusion. {% alert note %} Cet endpoint ne garantit pas que la séquence des objets `merge_updates` soit mise à jour. diff --git a/_lang/fr/_api/errors.md b/_lang/fr/_api/errors.md index ac0e7b78ae6..44ce97db130 100644 --- a/_lang/fr/_api/errors.md +++ b/_lang/fr/_api/errors.md @@ -1,7 +1,7 @@ --- nav_title: Erreurs et réponses article_title: Erreurs et réponses d’API -description: "Cet article de référence couvre les diverses erreurs et réponses du serveur qui peuvent apparaître lors de l’utilisation de l’API Braze et la façon de les résoudre. " +description: "Cet article de référence couvre les diverses erreurs et réponses du serveur qui peuvent apparaître lors de l’utilisation de l’API Braze et la façon de les résoudre." page_type: reference page_order: 2.3 @@ -40,16 +40,6 @@ Dans le cas d’un succès, tout message n’ayant pas été affecté par une er } ``` -## Réponses mise en attente {#messaging-queued} - -Pendant les périodes de maintenance, Braze peut suspendre le traitement en temps réel de l’API. Dans ces situations, le serveur renvoie un code de réponse `HTTP Accepted 202` et le corps suivant, ce qui indique que nous avons reçu et mis en file d’attente l’appel d’API, mais que nous n’avons pas immédiatement traité. Tous les entretiens programmés seront envoyés à la page [Braze System Status (État du système Braze)](http://status.braze.com) à l’avance. - -```json -{ - "message" : "queued" -} -``` - ## Réponses pour les ID d’envoi suivis Les analyses sont toujours disponibles pour les campagnes. De plus, les analyses sont disponibles pour une instance spécifique de campagne lorsque celle-ci est envoyée en tant que diffusion. Lorsque le suivi est disponible pour une instance spécifique de campagne, vous recevrez la réponse suivante : @@ -82,28 +72,28 @@ Tous les codes d’erreur suivants indiquent qu’aucun message ne sera envoyé. | Code d’erreur | Description | |---|---| -| `Erreur de serveur interne 5XX` | **Vous devez réessayer votre demande avec un délai exponentiel.**| -| `400 Demande erronée` | Syntaxe incorrecte.| -| `400 Aucun destinataire` | Il n’y a pas d’ID externe ou d’ID de segment ou aucun jeton de notification push dans la demande..| -| `400 ID de campagne non valide` | Aucune campagne API de messagerie n’a été trouvée pour l’ID de campagne que vous avez fourni..| -| `400 Variante de message non spécifiée` | Vous fournissez un ID de campagne mais aucun ID de variation de message..| -| `400 Variante de message non valide` | Vous avez fourni un ID de campagne valide, mais l’ID de modification de message ne correspond pas à l’un des messages de cette campagne..| -| `400 Type de message non concordant` | Vous avez fourni une variation du mauvais type de message pour au moins un de vos messages..| -| `400 Charge utile de notification push supplémentaire non valide` | Vous fournissez la clé `extra` pour `apple_push` ou `android_push`, mais ce n’est pas un dictionnaire..| -| `400 Longueur d’entrée max. dépassée` | Provoqué par un appel de plus de 75 ID externes lorsque vous appuyez sur l’endpoint de suivi de l’utilisateur..| -| `400 Le nombre maximum de external_ids et d’alias par demande a été dépassé` | Provoqué par un appel de plus de 50 ID externes..| -| `400 Le nombre maximum d’ID par demande a été dépassé` | Provoqué par un appel de plus de 50 ID externes..| -| `400 Aucun message à envoyer` | Aucune charge utile n’est spécifiée pour le message..| -| `400 Longueur du message Slideup dépassée` | Le message Slideup contient plus de 140 caractères..| -| `400 Longueur de notification push Apple dépassée` | La charge utile JSON est supérieure à 1 912 octets..| -| `400 Longueur de notification push Android dépassée` | La charge utile JSON est supérieure à 4 000 octets..| -| `400 Demande erronée` | Impossible d’analyser l’horodatage send_at..| -| `400 Demande erronée` | Dans votre demande, `in_local_time` est défini sur « true », mais `time` est passé dans le fuseau horaire de votre entreprise..| -| `401 Non autorisé` | Clé API non valide.| -| `403 Interdit` | Le plan tarifaire ne le prend pas en charge ou le compte est inactivé..| -| `403 Accès refusé` | La clé API REST que vous utilisez n’a pas d’autorisations suffisantes, vérifiez les autorisations de la clé API dans la Developer Console de Braze..| -| `404 Page introuvable` | Clé API REST inconnue..| -| `429 Débit limité` | Limite de débit dépassée.| +| `5XX Internal Server Error` | **Vous devez réessayer votre demande avec un délai exponentiel.**| +| `400 Bad Request` | Syntaxe incorrecte.| +| `400 No Recipients` | Il n’y a pas d’ID externe ou d’ID de segment ou aucun jeton de notification push dans la demande..| +| `400 Invalid Campaign ID` | Aucune campagne API de messagerie n’a été trouvée pour l’ID de campagne que vous avez fourni..| +| `400 Message Variant Unspecified` | Vous fournissez un ID de campagne mais aucun ID de variation de message..| +| `400 Invalid Message Variant` | Vous avez fourni un ID de campagne valide, mais l’ID de modification de message ne correspond pas à l’un des messages de cette campagne..| +| `400 Mismatched Message Type` | Vous avez fourni une variation du mauvais type de message pour au moins un de vos messages..| +| `400 Invalid Extra Push Payload` | Vous fournissez la clé `extra` pour `apple_push` ou `android_push`, mais ce n’est pas un dictionnaire..| +| `400 Max Input Length Exceeded` | Provoqué par un appel de plus de 75 ID externes lorsque vous appuyez sur l’endpoint de suivi de l’utilisateur..| +| `400 The max number of external_ids and aliases per request was exceeded` | Provoqué par un appel de plus de 50 ID externes..| +| `400 The max number of ids per request was exceeded` | Provoqué par un appel de plus de 50 ID externes..| +| `400 No message to send` | Aucune charge utile n’est spécifiée pour le message..| +| `400 Slideup Message Length Exceeded` | Le message Slideup contient plus de 140 caractères..| +| `400 Apple Push Length Exceeded` | La charge utile JSON est supérieure à 1 912 octets..| +| `400 Android Push Length Exceeded` | La charge utile JSON est supérieure à 4 000 octets..| +| `400 Bad Request` | Impossible d’analyser l’horodatage send_at..| +| `400 Bad Request` | Dans votre demande, `in_local_time` est défini sur « true », mais `time` est passé dans le fuseau horaire de votre entreprise..| +| `401 Unauthorized` | Clé API non valide.| +| `403 Forbidden` | Le plan tarifaire ne le prend pas en charge ou le compte est inactivé..| +| `403 Access Denied` | La clé API REST que vous utilisez n’a pas d’autorisations suffisantes, vérifiez les autorisations de la clé API dans la Developer Console de Braze..| +| `404 Not Found` | Clé API REST inconnue..| +| `429 Rate Limited` | Limite de débit dépassée.| {: .reset-td-br-1 .reset-td-br-2} {% endraw %} diff --git a/_lang/fr/_api/home.md b/_lang/fr/_api/home.md index 5fbf207f1bc..4e47d1e96ad 100644 --- a/_lang/fr/_api/home.md +++ b/_lang/fr/_api/home.md @@ -397,19 +397,19 @@ glossaries: description: Créer un nouveau compte utilisateur du tableau de bord en spécifiant les adresses e-mail, données et noms de famille, permissions (pour définir les autorisations au niveau de la société, du groupe d’apps et de l’équipe). tags: - SCIM - - name: /scim/v2/Users/{ID} + - name: /scim/v2/Users/{id} description: Rechercher un compte utilisateur du tableau de bord existant en spécifiant leur e-mail. tags: - SCIM - - name: /scim/v2/Users/{ID} + - name: /scim/v2/Users/{id} description: Mettre à jour un compte utilisateur du tableau de bord existant en spécifiant les adresses e-mail, données et noms de famille, permissions (pour définir les autorisations au niveau de la société, du groupe d’apps et de l’équipe). tags: - SCIM - - name: /scim/v2/Users/{ID} + - name: /scim/v2/Users/{id} description: Supprimer définitivement un utilisateur du tableau de bord existant. tags: - SCIM - - name: /scim/v2/Users?filter=userName eq "user@test.com" + - name: /scim/v2/Users?filter={userName@example.com} description: Rechercher un compte utilisateur du tableau de bord existant en spécifiant leur e-mail. tags: - SCIM diff --git a/_lang/fr/_api/identifier_types.md b/_lang/fr/_api/identifier_types.md index eb15b56d645..bd823e75443 100644 --- a/_lang/fr/_api/identifier_types.md +++ b/_lang/fr/_api/identifier_types.md @@ -14,7 +14,7 @@ page_type: reference Les identifiants suivants peuvent être utilisés pour accéder à votre modèle, Canvas, campagne, segment, envoi ou carte depuis l’API externe de Braze. Tous les messages doivent suivre le codage [UTF-8][1]. {% tabs %} -{% tab ID d’application %} +{% tab App Ids %} ## L’identifiant de l’application @@ -51,7 +51,7 @@ Pour chaque variante de version pertinente, créez un nouveau `braze.xml` pour e Lorsque la variante de version est compilée, elle utilisera le nouvel identifiant. {% endtab %} -{% tab ID de modèle %} +{% tab Template Ids %} ## Identifiant du modèle @@ -72,7 +72,7 @@ Vous pouvez trouver votre ID de modèle de deux manières :
{% endtab %} -{% tab ID Canvas %} +{% tab Canvas IDs %} ## Identifiant Canvas @@ -92,7 +92,7 @@ Vous pouvez trouver votre ID de Canvas dans le tableau de bord. Ouvrez **Canvas*
{% endtab %} -{% tab ID de campagne %} +{% tab Campaign IDs %} ## Identifiant de campagne @@ -116,7 +116,7 @@ Vous pouvez trouver votre ID de campagne de deux manières :
{% endtab %} -{% tab ID de segment %} +{% tab Segment IDs %} ## Identifiant de segment @@ -135,14 +135,14 @@ Vous pouvez trouver votre ID de segment de deux manières : - Spécifier et envoyer une campagne à un membre d’un segment depuis l’API {% endtab %} -{% tab ID de carte %} +{% tab Card IDs %} ## Identifiant de carte Un identifiant de carte ou ID de carte est une clé générée aléatoirement générée par Braze pour une carte de fil d’actualité donnée dans le tableau de bord. Les ID de carte sont uniques pour chaque carte de [fil d’actualité]({{site.baseurl}}/user_guide/engagement_tools/news_feed/) et peuvent être utilisés pour référencer les cartes via l’API. {% alert note %} -Le Fil d’actualité est obsolète. Braze recommande aux clients qui utilisent notre outil de fil d’actualités de passer à notre canal de communication de cartes de contenu - il est plus flexible, plus personnalisable et plus fiable. Consultez le [guide de migration]({{site.baseurl}}/user_guide/message_building_by_channel/content_cards/migrating_from_news_feed/) pour en savoir plus. +Le Fil d’actualité est obsolète. Braze recommande aux clients qui utilisent notre outil de fil d’actualités de passer à notre canal de communication de cartes de contenu : il est plus flexible, plus personnalisable et plus fiable. Consultez le [guide de migration]({{site.baseurl}}/user_guide/message_building_by_channel/content_cards/migrating_from_news_feed/) pour en savoir plus. {% endalert %} #### Où puis-je le trouver ? @@ -157,7 +157,7 @@ Vous pouvez trouver votre ID de carte de deux manières :
{% endtab %} -{% tab ID d’envoi %} +{% tab Send IDs %} ## Identifiant d’envoi diff --git a/_lang/fr/_api/objects_filters.md b/_lang/fr/_api/objects_filters.md index 76322e04c28..a40bbc6688c 100644 --- a/_lang/fr/_api/objects_filters.md +++ b/_lang/fr/_api/objects_filters.md @@ -23,7 +23,7 @@ description: "Cette page d’accueil répertorie les objets et filtres d’API B - [Objet Attribut utilisateur]({{site.baseurl}}/api/objects_filters/user_attributes_object) - [Objet Planification]({{site.baseurl}}/api/objects_filters/schedule_object/) -### Objets de messagerie +### Objets Messagerie - [Objet Android]({{site.baseurl}}/api/objects_filters/messaging/android_object/) - [Objet Apple]({{site.baseurl}}/api/objects_filters/messaging/apple_object/) - [Objet Carte de contenu]({{site.baseurl}}/api/objects_filters/messaging/content_cards_object) @@ -32,5 +32,4 @@ description: "Cette page d’accueil répertorie les objets et filtres d’API B - [Objet SMS]({{site.baseurl}}/api/objects_filters/messaging/sms_object) - [Objet Web]({{site.baseurl}}/api/objects_filters/messaging/web_objects/) - [Objet Webhook]({{site.baseurl}}/api/objects_filters/messaging/webhook_object) - - [Objet Windows]({{site.baseurl}}/api/objects_filters/messaging/windows_objects/) - + - [Objet WhatsApp]({{site.baseurl}}/api/objects_filters/messaging/whats_app_object) diff --git a/_lang/fr/_api/objects_filters/messaging/android_object.md b/_lang/fr/_api/objects_filters/messaging/android_object.md index 4192fa98efd..ec3e70ef7ea 100644 --- a/_lang/fr/_api/objects_filters/messaging/android_object.md +++ b/_lang/fr/_api/objects_filters/messaging/android_object.md @@ -16,8 +16,6 @@ L’objet `android_push` vous permet de définir ou de demander des informations Vous devez inclure un objet Notification push Android dans `messages` si vous voulez que les utilisateurs ciblés reçoivent une notification push sur leurs appareils Android. Le nombre total d’octets dans votre chaîne de caractères `alert` et objet `extra` ne doit pas dépasser 4 000. L’API de messagerie renvoie une erreur si vous dépassez la taille de message autorisée par Google. -### Corps - ```json { "alert": (required, string) the notification message, diff --git a/_lang/fr/_api/objects_filters/messaging/content_cards_object.md b/_lang/fr/_api/objects_filters/messaging/content_cards_object.md index 5850919f0ca..d18fc93b599 100644 --- a/_lang/fr/_api/objects_filters/messaging/content_cards_object.md +++ b/_lang/fr/_api/objects_filters/messaging/content_cards_object.md @@ -12,8 +12,6 @@ description: "Cet article de référence explique les différents composants de Le `content_card` vous permet de modifier ou de créer des cartes de contenu via nos [endpoints de messagerie]({{site.baseurl}}/api/endpoints/messaging). -## Corps - ```json { "type": (required, string) one of "CLASSIC", "CAPTIONED_IMAGE", or "BANNER", diff --git a/_lang/fr/_api/objects_filters/messaging/email_object.md b/_lang/fr/_api/objects_filters/messaging/email_object.md index 8473859e5de..2159a91c02b 100644 --- a/_lang/fr/_api/objects_filters/messaging/email_object.md +++ b/_lang/fr/_api/objects_filters/messaging/email_object.md @@ -12,7 +12,8 @@ description: "Cet article de référence explique les différents composants de Le `email` vous permet de modifier ou de créer des e-mails via nos [endpoints de messagerie]({{site.baseurl}}/api/endpoints/messaging). -## Corps +## Objet E-mail + ```json { "app_id": (required, string), see App Identifier, diff --git a/_lang/fr/_api/objects_filters/messaging/whats_app_object.md b/_lang/fr/_api/objects_filters/messaging/whats_app_object.md new file mode 100644 index 00000000000..a0f23753670 --- /dev/null +++ b/_lang/fr/_api/objects_filters/messaging/whats_app_object.md @@ -0,0 +1,90 @@ +--- +nav_title: "Objet WhatsApp" +article_title: Objet Envoi de messages WhatsApp +page_order: 15 +page_type: reference +channel: WhatsApp +description: "Cet article de référence explique les différents composants de l’objet WhatsApp de Braze." + +--- + +# Spécification d’objet WhatsApp + +L’objet `whats_app` vous permet de modifier ou de créer des messages WhatsApp via nos [endpoints d’envoi de messages]({{site.baseurl}}/api/endpoints/messaging). + +## Objet WhatsApp + +```json +{ + "app_id": (required, string) see App Identifier, + "subscription_group_id": (required, string) the id of your subscription group, + "message_variation_id": (optional, string) used when providing a campaign_id to specify which message variation this message should be tracked under, + "template_name": (required, string) the WhatsApp template name for the message, + "template_language_code": (required, string) the language code of the WhatsApp template for the message, + "header_variables": (optional, header variables object) an object to specify header variable values for specified template_name, required if the header has variables; see object specification below, + "body_variables": (optional, body variable object) an object to specify body variable values for specified template_name, required if the body has variables; see object specification below, + "button_variables": (optional, button variables object) an object to specify button variable values for specified template_name, required if buttons have variables; see object specification below, + "header_image_uri" :(optional, string) URI to the header image, if the header is of type IMAGE in specified template_name +} +``` + +- [Identifiant d’application]({{site.baseurl}}/api/api_key#the-app-identifier-api-key) + +## Objet Variables d'en-tête + +L’objet `header_variables` vous permet de spécifier des valeurs pour les variables d’en-tête dans le modèle WhatsApp. Chaque clé est l’index de variable du modèle WhatsApp (indexé à zéro) à remplacer par la valeur spécifiée. + +```json +{ + "$TEMPLATE_VARIABLE_INDEX_0": "$TEMPLATE_VARIABLE_VALUE_0" +} +``` +Actuellement, seuls zéro ou une variable d'en-tête peuvent être spécifiés. + + +#### Exemple + +```json +{ + "0": "Check it out!" +} +``` + +## Objet Variables du corps + +L’objet `body_variables` vous permet de spécifier des valeurs pour les variables du corps dans le modèle WhatsApp. Chaque clé est l’index de variable du modèle WhatsApp (indexé à zéro) à remplacer par la valeur spécifiée. +```json +{ + "$TEMPLATE_VARIABLE_INDEX_0": "$TEMPLATE_VARIABLE_VALUE_0", + "$TEMPLATE_VARIABLE_INDEX_1": "$TEMPLATE_VARIABLE_VALUE_1" +} +``` + +#### Exemple + +```json +{ + "0": "Check it out!", + "1": "It's pretty neat." +} +``` + +## Objet Variables de bouton + +L’objet `button_variables` vous permet de spécifier des valeurs pour les variables du bouton dans le modèle WhatsApp. Chaque clé est l’index de variable du modèle WhatsApp (indexé à zéro) à remplacer par la valeur spécifiée. + +```json +{ + "$TEMPLATE_VARIABLE_INDEX_1": "$TEMPLATE_VARIABLE_VALUE_1", +} +``` + +Actuellement, une seule variable de bouton peut être spécifiée, à savoir le composant de chemin d’une URL d’appel à l’action. L’index de variable doit correspondre à l’index du bouton d’URL CTA dans le modèle. Par exemple, si votre bouton CTA est le deuxième bouton de votre modèle, utilisez l’index de variable « 1 ». + +#### Exemple + +```json +{ + "1": "/marketing/promotion123" +} +``` diff --git a/_lang/fr/_api/objects_filters/user_attributes_object.md b/_lang/fr/_api/objects_filters/user_attributes_object.md index 110c7f4c8b4..8f144fd6982 100644 --- a/_lang/fr/_api/objects_filters/user_attributes_object.md +++ b/_lang/fr/_api/objects_filters/user_attributes_object.md @@ -48,7 +48,7 @@ Pour supprimer un attribut de profil, définissez-le sur `null`. Certains champs Si vous souhaitez mettre à jour uniquement les profils utilisateur existants dans Braze, vous devez passer la clé `_update_existing_only` avec la valeur `true` dans le corps de votre demande. Si cette valeur est omise, Braze créera un nouveau profil utilisateur si `external_id` n’existe pas déjà. {% alert note %} -Si vous créez un profil utilisateur alias uniquement via l’endpoint utilisateurs/track, `_update_existing_only` doit être défini sur `false`. Si cette valeur est omise, le profil alias uniquement ne sera pas créé. +Si vous créez un profil utilisateur alias uniquement via l’endpoint users/track, `_update_existing_only` doit être défini sur `false`. Si cette valeur est omise, le profil alias uniquement ne sera pas créé. {% endalert %} #### Importation de jetons de notification push @@ -81,7 +81,7 @@ Les types de données suivants peuvent être stockés en tant qu’attribut pers | --- | --- | | Tableaux | Les tableaux d’attributs personnalisés sont des ensembles unidimensionnels ; les tableaux multidimensionnels ne sont pas pris en charge. L’ajout d’un élément à un tableau d’attribut personnalisé ajoute l’élément à la fin du tableau, à moins qu’il ne soit déjà présent, auquel cas il passe de sa position actuelle à la fin du tableau.

Par exemple, si un tableau `['hotdog','hotdog','hotdog','pizza']` a été importé, il apparaîtra dans l’attribut de tableau comme `['hotdog', 'pizza']`, car seules des valeurs uniques sont prises en charge.

En plus de définir les valeurs d’un tableau en indiquant quelque chose comme `"my_array_custom_attribute":[ "Value1", "Value2" ]`, vous pouvez ajouter des tableaux existants en faisant quelque chose comme `"my_array_custom_attribute" : { "add" : ["Value3"] },` ou supprimer les valeurs d’un tableau en écrivant quelque chose comme `"my_array_custom_attribute" : { "remove" : [ "Value1" ]}`.

Le nombre maximum d’éléments dans les tableaux d’attributs personnalisés est par défaut de 25, mais peut être augmenté jusqu’à 100 pour un tableau donné. Pour plus d’informations, consultez les [tableaux][6]. | | Booléens | | -| Dates | Doit être stocké au format [ISO 8601][19] ou dans l’un des formats suivants :
- `yyyy-MM-ddTHH:mm:ss:SSSZ`
- `yyyy-MM-ddTHH:mm:ss`
- `yyyy-MM-dd HH:mm:ss`
- `yyyy-MM-dd`
- `MM/dd/yyyy`
- `ddd MM dd HH:mm:ss.TZD YYYY`

Notez que le « T » est un indicateur de temps, et non une marque substitutive. Il ne doit pas être modifié ou supprimé.

Les attributs de temps sans fuseau horaire seront par défaut à minuit UTC (et seront formatés sur le tableau de bord comme l’équivalent de minuit UTC dans le fuseau horaire de la société).

Les événements avec des horodatages dans le futur seront par défaut à l’heure actuelle. | +| Dates | Doit être stocké au format [ISO 8601][19] ou dans l’un des formats suivants :
- `yyyy-MM-ddTHH:mm:ss:SSSZ`
- `yyyy-MM-ddTHH:mm:ss`
- `yyyy-MM-dd HH:mm:ss`
- `yyyy-MM-dd`
- `MM/dd/yyyy`
- `ddd MM dd HH:mm:ss.TZD YYYY`

Notez que le « T » est un indicateur de temps, et non une marque substitutive. Il ne doit pas être modifié ou supprimé.

Les attributs de temps sans fuseau horaire seront par défaut à minuit UTC (et seront formatés sur le tableau de bord comme l’équivalent de minuit UTC dans le fuseau horaire de la société).

Les événements avec des horodatages dans le futur seront par défaut à l’heure actuelle.

Pour les attributs personnalisés réguliers, si l'année est inférieure à 0 ou supérieure à 3 000, Braze stocke ces valeurs sous forme de chaînes de caractères sur l'utilisateur. | | Floats | | | Entiers | Les attributs personnalisés Integer peuvent être incrémentés par des entiers positifs ou négatifs en leur affectant un objet avec le champ « inc » et la valeur par laquelle vous souhaitez les incrémenter.

Exemple : `"my_custom_attribute_2" : {"inc" : int_value},`| | Chaînes de caractères | | diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/advanced_use_cases/deep_linking.md b/_lang/fr/_developer_guide/platform_integration_guides/android/advanced_use_cases/deep_linking.md index 585c2a0e4e2..45c540a2eab 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/advanced_use_cases/deep_linking.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/advanced_use_cases/deep_linking.md @@ -13,10 +13,10 @@ description: "Cet article explique comment implémenter le délégué universel Dans le cadre du [processus d’implémentation pour votre Android SDK][1], vous devez configurer la capacité de votre application à utiliser les liens profonds. Cet article présente des exemples supplémentaires pour les cas d’utilisation des liens profonds. -Pour des informations de présentation sur les liens profonds, consultez [l’article ][4] du Guide de l’utilisateur. +Pour des informations de base sur les liens profonds, consultez notre [article du Guide de l’utilisateur][4]. {% alert note %} -Cet article contient des informations sur le Fil d’actualité, qui est en cours d’obsolescence. Braze recommande aux clients qui utilisent notre outil de fil d’actualités de passer à notre canal de communication de cartes de contenu - il est plus flexible, plus personnalisable et plus fiable. Consultez le [guide de migration]({{site.baseurl}}/user_guide/message_building_by_channel/content_cards/migrating_from_news_feed/) pour en savoir plus. +Cet article comprend des informations sur les fils d’actualité, qui deviennent obsolètes. Braze recommande aux clients qui utilisent notre outil de fil d’actualités de passer à notre canal de communication de cartes de contenu : il est plus flexible, plus personnalisable et plus fiable. Consultez le [guide de migration]({{site.baseurl}}/user_guide/message_building_by_channel/content_cards/migrating_from_news_feed/) pour en savoir plus. {% endalert %} ## Délégué universel de lien profond @@ -178,7 +178,7 @@ BrazeDeeplinkHandler.setBrazeDeeplinkHandler(object : IBrazeDeeplinkHandler { ## Création de liens profonds avec le Fil d’actualité{#Android_Deep_Advance} {% alert note %} -Le Fil d’actualité est obsolète. Braze recommande aux clients qui utilisent notre outil de fil d’actualités de passer à notre canal de communication de cartes de contenu - il est plus flexible, plus personnalisable et plus fiable. Consultez le [guide de migration]({{site.baseurl}}/user_guide/message_building_by_channel/content_cards/migrating_from_news_feed/) pour en savoir plus. +Le Fil d’actualité est obsolète. Braze recommande aux clients qui utilisent notre outil de fil d’actualités de passer à notre canal de communication de cartes de contenu : il est plus flexible, plus personnalisable et plus fiable. Consultez le [guide de migration]({{site.baseurl}}/user_guide/message_building_by_channel/content_cards/migrating_from_news_feed/) pour en savoir plus. {% endalert %} Pour réaliser un lien profond avec le fil d’actualité de Braze à partir d’une notification push, [créez un lien profond personnalisé][1] pour votre activité de fil d'actualité. @@ -189,8 +189,8 @@ Ensuite, lorsque vous configurez votre campagne de notification push (soit par l Par défaut, lorsque les liens profonds du site Internet sont ouverts à l’intérieur de l’application par Braze, ils sont gérés par [`BrazeWebViewActivity`][udl-4]. Pour modifier ceci : -**1.**Créez une nouvelle activité qui gère l’URL cible à partir de `Intent.getExtras()` avec la clé `com.braze.Constants.BRAZE_WEBVIEW_URL_EXTRA`. Consultez [`BrazeWebViewActivity.java`][udl-8] pour un exemple.

-**2.** Ajoutez cette activité à `AndroidManifest.xml` et définissez `exported` sur `false`. +**1.** Créez une nouvelle activité qui gère l’URL cible de `Intent.getExtras()` avec la clé `com.braze.Constants.BRAZE_WEBVIEW_URL_EXTRA`. Consultez [`BrazeWebViewActivity.java`][udl-8] pour un exemple.

+**2.** Ajoutez cette activité à `AndroidManifest.xml` et définir `exported` sur `false`. ```xml ``` -**3.**Définissez votre activité personnalisée dans un `BrazeConfig`[`Retrait en magasin`][objet générateur][udl-6]. Construisez le générateur et transmettez-le à[`Braze.configure()`][udl-5] dans votre[`Application.onCreate()`][udl-7] +**3.** Définissez votre activité personnalisée dans un `BrazeConfig`[objet générateur][udl-6]. Construisez le générateur et transmettez-le à[`Braze.configure()`][udl-5] dans votre[`Application.onCreate()`][udl-7] {% tabs %} {% tab JAVA %} @@ -230,11 +230,11 @@ Braze.configure(this, brazeConfig) [2]: {{site.baseurl}}/user_guide/message_building_by_channel/push/creating_a_push_message/#creating-a-push-message [3]: {{site.baseurl}}/api/endpoints/messaging/ [4]: {{site.baseurl}}/user_guide/personalization_and_dynamic_content/deep_linking_to_in-app_content/#what-is-deep-linking -[udl-1]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.actions/-uri-action/index.html -[udl-2]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui/-braze-deeplink-handler/-companion/set-braze-deeplink-handler.html -[udl-3]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui/-braze-deeplink-handler/index.html -[udl-4]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui/-braze-web-view-activity/index.html -[udl-5]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-braze/index.html#-1864418529%2FFunctions%2F-1725759721 -[udl-6]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.configuration/-braze-config/-builder/set-custom-web-view-activity-class.html +[udl-1]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.actions/-uri-action/index.html +[udl-2]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui/-braze-deeplink-handler/-companion/set-braze-deeplink-handler.html +[udl-3]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui/-braze-deeplink-handler/index.html +[udl-4]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui/-braze-web-view-activity/index.html +[udl-5]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-braze/index.html#-1864418529%2FFunctions%2F-1725759721 +[udl-6]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.configuration/-braze-config/-builder/set-custom-web-view-activity-class.html [udl-7]: https://developer.android.com/reference/android/app/Application.html#onCreate() -[udl-8]: https://github.com/Appboy/appboy-android-sdk/blob/master/android-sdk-ui/src/main/java/com/braze/ui/BrazeWebViewActivity.kt +[udl-8]: https://github.com/braze-inc/braze-android-sdk/blob/master/android-sdk-ui/src/main/java/com/braze/ui/BrazeWebViewActivity.kt diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/advanced_use_cases/locations_and_geofences.md b/_lang/fr/_developer_guide/platform_integration_guides/android/advanced_use_cases/locations_and_geofences.md index e6eaaacc07f..455154540f8 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/advanced_use_cases/locations_and_geofences.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/advanced_use_cases/locations_and_geofences.md @@ -1,324 +1,324 @@ ---- -nav_title: Position et geofences -article_title: Position et geofences pour Android et FireOS -platform: - - Android - - FireOS -page_order: 6 -description: "Cet article de référence explique comment implémenter une position et des geofences dans votre application Android ou FireOS." -Outil : - - Localisation - ---- - -# Position et geofences - -Les [Geofences]({{site.baseurl}}/developer_guide/platform_integration_guides/android/advanced_use_cases/locations_and_geofences/) sont uniquement disponibles dans certains forfaits Braze. Pour y accéder, créez un [ticket d’assistance][support] ou parlez avec votre gestionnaire du succès des clients Braze. - -Pour prendre en charge les geofences pour Android : - -1. Votre intégration doit prendre en charge les notifications push en arrière-plan. -2. Le recueil de geofences ou de position de Braze doit être activé. - -## Étape 1 : Mettre à jour build.gradle - -Ajoutez `android-sdk-location` au `build.gradle` au niveau de votre appli. Ajoutez aussi le [package d’emplacement (location package) ][3] de Google Play Services, en utilisant le [guide de configuration][10] de Google Play Services : - -``` -dependencies { - implémentation "com.braze:android-sdk-location:+" - implémentation "com.google.android.gms:play-services-location:${PLAY_SERVICES_VERSION}" -} -``` - -## Étape 2 : Mettre à jour le manifeste - -Ajoutez des autorisations de démarrage, de recherche de position et de position en arrière-plan à votre `AndroidManifest.xml` : - -```xml - - - -``` - -{% alert important %} -L’autorisation d’accès à la position en arrière-plan a été ajoutée dans Android 10 et est requise pour que les geofences fonctionnent tandis que l’application est mise en arrière-plan pour tous les appareils Android 10 et suivants. -{% endalert %} - -Ajoutez le récepteur de démarrage Braze à l’élément `application` de votre `AndroidManifest.xml`: - -```xml - - - - - -``` - -{% alert note %} -Si vous utilisez une version du SDK Android antérieur à `2.3.0`, la déclaration de manifeste suivante est également requise : - -``` - -``` -{% endalert %} - -## Étape 3 : Activer le recueil de positions Braze - -Si vous n’avez pas encore activé le recueil de positions Braze, mettez à jour votre fichier `braze.xml` pour inclure `com_braze_enable_location_collection` et assurez-vous que sa valeur est définie sur `true` : - -```xml -true -``` - -{% alert important %} -À partir de la version 3.6.0 du SDK Braze pour Android, le recueil de position Braze est désactivé par défaut. -{% endalert %} - -Les géofences de Braze sont activées si le recueil de position de Braze est activé. Si vous souhaitez désactiver notre recueil de position par défaut mais que vous souhaitez toujours utiliser des geofences, il peut être activé de manière sélective en définissant la valeur de la clé `com_braze_geofences_enabled` sur `true` dans `braze.xml`, indépendamment de la valeur de `com_braze_enable_location_collection` : - -```xml -true -``` - -## Étape 4 : Obtenir les autorisations de position de l’utilisateur final - -Pour Android M et les versions plus élevées, vous devez demander des autorisations de position auprès de l’utilisateur final avant de collecter des informations de position ou d’enregistrer des géofences. - -Ajoutez l’appel suivant pour notifier Braze lorsqu’un utilisateur accorde l’autorisation de position à votre application : - -{% tabs %} -{% tab JAVA %} - -```java -Braze.getInstance(context).requestLocationInitialization(); -``` - -{% endtab %} -{% tab KOTLIN %} - -```kotlin -Braze.getInstance(context).requestLocationInitialization() -``` - -{% endtab %} -{% endtabs %} - -Le SDK va alors demander des geofences aux serveurs de Braze et initialiser le suivi du geofence. - -Consultez [`RuntimePermissionUtils.java`][4] dans notre exemple d’application pour un échantillon d’implémentation. - -{% tabs %} -{% tab JAVA %} - -```java -public class RuntimePermissionUtils { - private static final String TAG = BrazeLogger.getBrazeLogTag(RuntimePermissionUtils.class); - public static final int DROIDBOY_PERMISSION_LOCATION = 40; - - public static void handleOnRequestPermissionsResult(Context context, int requestCode, int[] grantResults) { - switch (requestCode) { - case DROIDBOY_PERMISSION_LOCATION: - // In Android Q, we require both FINE and BACKGROUND location permissions. Both - // are requested simultaneously. - if (areAllPermissionsGranted(grantResults)) { - Log.i(TAG, "Required location permissions granted."); - Toast.makeText(context, "Required location permissions granted.", Toast.LENGTH_SHORT).show(); - Braze.getInstance(context).requestLocationInitialization(); - } else { - Log.i(TAG, "Required location permissions NOT granted."); - Toast.makeText(context, "Required location permissions NOT granted.", Toast.LENGTH_SHORT).show(); - } - break; - default: - break; - } - } - - private static boolean areAllPermissionsGranted(int[] grantResults) { - for (int grantResult : grantResults) { - if (grantResult != PackageManager.PERMISSION_GRANTED) { - return false; - } - } - return true; - } -} -``` - -{% endtab %} -{% tab KOTLIN %} - -```kotlin -object RuntimePermissionUtils { - private val TAG = BrazeLogger.getBrazeLogTag(RuntimePermissionUtils::class.java!!) - val DROIDBOY_PERMISSION_LOCATION = 40 - - fun handleOnRequestPermissionsResult(context: Context, requestCode: Int, grantResults: IntArray) { - when (requestCode) { - DROIDBOY_PERMISSION_LOCATION -> - // In Android Q, we require both FINE and BACKGROUND location permissions. Both - // are requested simultaneously. - if (areAllPermissionsGranted(grantResults)) { - Log.i(TAG, "Required location permissions granted.") - Toast.makeText(context, "Required location permissions granted.", Toast.LENGTH_SHORT).show() - Braze.getInstance(context).requestLocationInitialization() - } else { - Log.i(TAG, "Required location permissions NOT granted.") - Toast.makeText(context, "Required location permissions NOT granted.", Toast.LENGTH_SHORT).show() - } - else -> { - } - } - } - - private fun areAllPermissionsGranted(grantResults: IntArray): Boolean { - for (grantResult in grantResults) { - if (grantResult != PackageManager.PERMISSION_GRANTED) { - return false - } - } - return true - } -} -``` - -{% endtab %} -{% endtabs %} - -L’utilisation de l’exemple de code précédent est effectuée via : - -{% tabs %} -{% tab JAVA %} - -```java -if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { - boolean hasAllPermissions = PermissionUtils.hasPermission(getApplicationContext(), Manifest.permission.ACCESS_BACKGROUND_LOCATION) - && PermissionUtils.hasPermission(getApplicationContext(), Manifest.permission.ACCESS_FINE_LOCATION); - if (!hasAllPermissions) { - // Request both BACKGROUND and FINE location permissions - requestPermissions(new String[]{android.Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_BACKGROUND_LOCATION}, - RuntimePermissionUtils.DROIDBOY_PERMISSION_LOCATION); - } - } else { - if (!PermissionUtils.hasPermission(getApplicationContext(), Manifest.permission.ACCESS_FINE_LOCATION)) { - // Request only FINE location permission - requestPermissions(new String[]{android.Manifest.permission.ACCESS_FINE_LOCATION}, - RuntimePermissionUtils.DROIDBOY_PERMISSION_LOCATION); - } - } -} -``` - -{% endtab %} -{% tab KOTLIN %} - -```kotlin -if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { - val hasAllPermissions = PermissionUtils.hasPermission(applicationContext, Manifest.permission.ACCESS_BACKGROUND_LOCATION) - && PermissionUtils.hasPermission(applicationContext, Manifest.permission.ACCESS_FINE_LOCATION) - if (!hasAllPermissions) { - // Request both BACKGROUND and FINE location permissions - requestPermissions(arrayOf(android.Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_BACKGROUND_LOCATION), - RuntimePermissionUtils.DROIDBOY_PERMISSION_LOCATION) - } - } else { - if (!PermissionUtils.hasPermission(applicationContext, Manifest.permission.ACCESS_FINE_LOCATION)) { - // Request only FINE location permission - requestPermissions(arrayOf(android.Manifest.permission.ACCESS_FINE_LOCATION), - RuntimePermissionUtils.DROIDBOY_PERMISSION_LOCATION) - } - } -} -``` - -{% endtab %} -{% endtabs %} - -## Étape 5 : Activer les géofences sur le tableau de bord - -Android autorise le stockage de seulement 100 geofences pour une application donnée. Le produit de position de Braze utilisera jusqu’à 20 emplacements de geofence s’ils sont disponibles. Pour éviter toute perturbation accidentelle ou indésirable d’autres fonctionnalités liées au geofence dans votre application, ceux de position doivent être activés pour les applications individuelles sur le tableau de bord. - -Pour que le produit de position de Braze fonctionne correctement, vous devez également vous assurer que votre application n’utilise pas tous les emplacements de geofence disponibles. - -### Activer les geofences à partir de la page des positions - -![Les options de geofence sur la page des positions Braze.]({% image_buster /assets/img_archive/enable-geofences-locations-page.png %}) - -### Activer les geofences à partir de la page des paramètres - -![La case à cocher de geofence située sur les pages de paramètres Braze.]({% image_buster /assets/img_archive/enable-geofences-app-settings-page.png %}){: style="max-width:65%;" } - -## Étape 6 : Demander manuellement des mises à jour de geofence (facultatif) - -Par défaut, Braze récupère automatiquement la position du périphérique et demande des geofences en fonction de la position collectée. Cependant, vous pouvez fournir manuellement une coordonnée GPS qui sera utilisée pour récupérer à la place les geofences de proximité de Braze. Pour demander manuellement des geofences Braze, vous devez désactiver les demandes de geofence automatiques de Braze et fournir une coordonnée GPS pour les demandes. - -#### Partie 1 : Désactiver les requêtes de geofence automatique - -Les demandes de geofence automatique de Braze peuvent être désactivées dans votre fichier `braze.xml` en réglant `com_braze_automatic_geofence_requests_enabled` sur `false` : - -```xml -false -``` - -Cela peut également être effectué au moment de l’exécution via : - -{% tabs %} -{% tab JAVA %} - -```java -BrazeConfig.Builder brazeConfigBuilder = new BrazeConfig.Builder() - .setAutomaticGeofenceRequestsEnabled(false); -Braze.configure(getApplicationContext(), brazeConfigBuilder.build()); -``` - -{% endtab %} -{% tab KOTLIN %} - -```kotlin -val brazeConfigBuilder = BrazeConfig.Builder() - .setAutomaticGeofenceRequestsEnabled(false) -Braze.configure(applicationContext, brazeConfigBuilder.build()) -``` - -{% endtab %} -{% endtabs %} - -#### Partie 2 : Demander manuellement un geofence Braze avec des coordonnées GPS - -Les geofences de Braze sont demandés manuellement via la méthode [`requestGeofences()`][11] : - -{% tabs %} -{% tab JAVA %} - -```java -Braze.getInstance(getApplicationContext()).requestGeofences(latitude, longitude); -``` - -{% endtab %} -{% tab KOTLIN %} - -```kotlin -Braze.getInstance(applicationContext).requestGeofences(33.078947, -116.601356) -``` - -{% endtab %} -{% endtabs %} - -{% alert important %} -Les geofences de Braze ne peuvent être demandées qu’une seule fois par session, soit automatiquement par le SDK, soit manuellement avec cette méthode. -{% endalert %} - -## Notification push pour synchroniser - -Notez que Braze synchronise les geofences vers les dispositifs à l’aide de notifications push en arrière-plan. Dans la plupart des cas, cela n’implique aucun changement de code, car cette fonctionnalité ne nécessite aucune intégration supplémentaire de la part de l’application. - -Cependant, notez que si votre application est arrêtée, la réception d’une notification push en arrière-plan la lancera en arrière-plan et la méthode `Application.onCreate()` sera appelé. Si vous avez une implémentation personnalisée `Application.onCreate()`, vous devez reporter les appels de serveur automatique et toute autre action que vous ne souhaitez pas déclencher par la notification push en arrière-plan. - -[3]: https://developers.google.com/android/reference/com/google/android/gms/location/package-summary -[4]: https://github.com/Appboy/appboy-android-sdk/blob/91622eb6cd4bba2e625cc22f00ca38e6136a0596/droidboy/src/main/java/com/appboy/sample/util/RuntimePermissionUtils.java -[10]: https://developers.google.com/android/guides/setup -[11]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze/request-geofences.html -[support]: {{site.baseurl}}/braze_support/ +--- +nav_title: Position et geofences +article_title: Position et geofences pour Android et FireOS +platform: + - Android + - FireOS +page_order: 6 +description: "Cet article de référence explique comment implémenter une position et des geofences dans votre application Android ou FireOS." +Outil : + - Position + +--- + +# Position et geofences + +Les [Geofences]({{site.baseurl}}/developer_guide/platform_integration_guides/android/advanced_use_cases/locations_and_geofences/) sont uniquement disponibles dans certains forfaits Braze. Pour y accéder, créez un [ticket d’assistance][support] ou parlez avec votre gestionnaire du succès des clients Braze. + +Pour prendre en charge les geofences pour Android : + +1. Votre intégration doit prendre en charge les notifications push en arrière-plan. +2. Les geofences de Braze ou la collecte des données de localisation doivent être activés. + +## Étape 1 : Mise à jour build.gradle + +Ajoutez `android-sdk-location` à votre `build.gradle` au niveau de l’application. Ajoutez également les services Google Play de [package de position][3] en utilisant le [guide de configuration des services][10] Google Play : + +``` +dependencies { + implementation "com.braze:android-sdk-location:+" + implementation "com.google.android.gms:play-services-location:${PLAY_SERVICES_VERSION}" +} +``` + +## Étape 2 : Mettre à jour le manifeste + +Ajoutez des autorisations de démarrage, de recherche de position et de position en arrière-plan à votre `AndroidManifest.xml` : + +```xml + + + +``` + +{% alert important %} +L’autorisation d’accès à la position en arrière-plan a été ajoutée dans Android 10 et est requise pour que les geofences fonctionnent tandis que l’application est mise en arrière-plan pour tous les appareils Android 10 et suivants. +{% endalert %} + +Ajoutez le récepteur de démarrage Braze à l’élément `application` de votre `AndroidManifest.xml`: + +```xml + + + + + +``` + +{% alert note %} +Si vous utilisez une version du SDK Android antérieur à `2.3.0`, la déclaration de manifeste suivante est également requise : + +``` + +``` +{% endalert %} + +## Étape 3 : Activer le recueil de positions Braze + +Si vous n’avez pas encore activé le recueil de positions Braze, mettez à jour votre fichier `braze.xml` pour inclure `com_braze_enable_location_collection` et assurez-vous que sa valeur est définie sur `true` : + +```xml +true +``` + +{% alert important %} +À partir de la version 3.6.0 du SDK Braze pour Android, le recueil de position Braze est désactivé par défaut. +{% endalert %} + +Les géofences de Braze sont activées si le recueil de position de Braze est activé. Si vous souhaitez désactiver notre recueil de position par défaut mais que vous souhaitez toujours utiliser des geofences, il peut être activé de manière sélective en définissant la valeur de la clé `com_braze_geofences_enabled` sur `true` dans `braze.xml`, indépendamment de la valeur de `com_braze_enable_location_collection` : + +```xml +true +``` + +## Étape 4 : Obtenir les autorisations de position de l’utilisateur final + +Pour Android M et les versions plus élevées, vous devez demander des autorisations de position auprès de l’utilisateur final avant de collecter des informations de position ou d’enregistrer des géofences. + +Ajoutez l’appel suivant pour notifier Braze lorsqu’un utilisateur accorde l’autorisation de position à votre application : + +{% tabs %} +{% tab JAVA %} + +```java +Braze.getInstance(context).requestLocationInitialization(); +``` + +{% endtab %} +{% tab KOTLIN %} + +```kotlin +Braze.getInstance(context).requestLocationInitialization() +``` + +{% endtab %} +{% endtabs %} + +Le SDK va alors demander des geofences aux serveurs de Braze et initialiser le suivi du geofence. + +Consultez [`RuntimePermissionUtils.java`][4] dans notre exemple d’application pour un échantillon d’implémentation. + +{% tabs %} +{% tab JAVA %} + +```java +public class RuntimePermissionUtils { + private static final String TAG = BrazeLogger.getBrazeLogTag(RuntimePermissionUtils.class); + public static final int DROIDBOY_PERMISSION_LOCATION = 40; + + public static void handleOnRequestPermissionsResult(Context context, int requestCode, int[] grantResults) { + switch (requestCode) { + case DROIDBOY_PERMISSION_LOCATION: + // In Android Q, we require both FINE and BACKGROUND location permissions. Both + // are requested simultaneously. + if (areAllPermissionsGranted(grantResults)) { + Log.i(TAG, "Required location permissions granted."); + Toast.makeText(context, "Required location permissions granted.", Toast.LENGTH_SHORT).show(); + Braze.getInstance(context).requestLocationInitialization(); + } else { + Log.i(TAG, "Required location permissions NOT granted."); + Toast.makeText(context, "Required location permissions NOT granted.", Toast.LENGTH_SHORT).show(); + } + break; + default: + break; + } + } + + private static boolean areAllPermissionsGranted(int[] grantResults) { + for (int grantResult : grantResults) { + if (grantResult != PackageManager.PERMISSION_GRANTED) { + return false; + } + } + return true; + } +} +``` + +{% endtab %} +{% tab KOTLIN %} + +```kotlin +object RuntimePermissionUtils { + private val TAG = BrazeLogger.getBrazeLogTag(RuntimePermissionUtils::class.java!!) + val DROIDBOY_PERMISSION_LOCATION = 40 + + fun handleOnRequestPermissionsResult(context: Context, requestCode: Int, grantResults: IntArray) { + when (requestCode) { + DROIDBOY_PERMISSION_LOCATION -> + // In Android Q, we require both FINE and BACKGROUND location permissions. Both + // are requested simultaneously. + if (areAllPermissionsGranted(grantResults)) { + Log.i(TAG, "Required location permissions granted.") + Toast.makeText(context, "Required location permissions granted.", Toast.LENGTH_SHORT).show() + Braze.getInstance(context).requestLocationInitialization() + } else { + Log.i(TAG, "Required location permissions NOT granted.") + Toast.makeText(context, "Required location permissions NOT granted.", Toast.LENGTH_SHORT).show() + } + else -> { + } + } + } + + private fun areAllPermissionsGranted(grantResults: IntArray): Boolean { + for (grantResult in grantResults) { + if (grantResult != PackageManager.PERMISSION_GRANTED) { + return false + } + } + return true + } +} +``` + +{% endtab %} +{% endtabs %} + +L’utilisation de l’exemple de code précédent est effectuée via : + +{% tabs %} +{% tab JAVA %} + +```java +if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { + boolean hasAllPermissions = PermissionUtils.hasPermission(getApplicationContext(), Manifest.permission.ACCESS_BACKGROUND_LOCATION) + && PermissionUtils.hasPermission(getApplicationContext(), Manifest.permission.ACCESS_FINE_LOCATION); + if (!hasAllPermissions) { + // Request both BACKGROUND and FINE location permissions + requestPermissions(new String[]{android.Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_BACKGROUND_LOCATION}, + RuntimePermissionUtils.DROIDBOY_PERMISSION_LOCATION); + } + } else { + if (!PermissionUtils.hasPermission(getApplicationContext(), Manifest.permission.ACCESS_FINE_LOCATION)) { + // Request only FINE location permission + requestPermissions(new String[]{android.Manifest.permission.ACCESS_FINE_LOCATION}, + RuntimePermissionUtils.DROIDBOY_PERMISSION_LOCATION); + } + } +} +``` + +{% endtab %} +{% tab KOTLIN %} + +```kotlin +if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { + val hasAllPermissions = PermissionUtils.hasPermission(applicationContext, Manifest.permission.ACCESS_BACKGROUND_LOCATION) + && PermissionUtils.hasPermission(applicationContext, Manifest.permission.ACCESS_FINE_LOCATION) + if (!hasAllPermissions) { + // Request both BACKGROUND and FINE location permissions + requestPermissions(arrayOf(android.Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_BACKGROUND_LOCATION), + RuntimePermissionUtils.DROIDBOY_PERMISSION_LOCATION) + } + } else { + if (!PermissionUtils.hasPermission(applicationContext, Manifest.permission.ACCESS_FINE_LOCATION)) { + // Request only FINE location permission + requestPermissions(arrayOf(android.Manifest.permission.ACCESS_FINE_LOCATION), + RuntimePermissionUtils.DROIDBOY_PERMISSION_LOCATION) + } + } +} +``` + +{% endtab %} +{% endtabs %} + +## Étape 5 : Activer les geofences sur le tableau de bord + +Android autorise le stockage de seulement 100 geofences pour une application donnée. Le produit de position de Braze utilisera jusqu’à 20 emplacements de geofence s’ils sont disponibles. Pour éviter toute perturbation accidentelle ou indésirable d’autres fonctionnalités liées au geofence dans votre application, ceux de position doivent être activés pour les applications individuelles sur le tableau de bord. + +Pour que le produit de position de Braze fonctionne correctement, vous devez également vous assurer que votre application n’utilise pas tous les emplacements de geofence disponibles. + +### Activer les geofences à partir de la page des positions + +![Les options de geofence sur la page des positions Braze.]({% image_buster /assets/img_archive/enable-geofences-locations-page.png %}) + +### Activer les geofences à partir de la page des paramètres + +![La case à cocher de geofence située sur les pages de paramètres Braze.]({% image_buster /assets/img_archive/enable-geofences-app-settings-page.png %}){: style="max-width:65%;" } + +## Étape 6 : Demander manuellement des mises à jour de geofence (facultatif) + +Par défaut, Braze récupère automatiquement la position du périphérique et demande des geofences en fonction de la position collectée. Cependant, vous pouvez fournir manuellement une coordonnée GPS qui sera utilisée pour récupérer à la place les geofences de proximité de Braze. Pour demander manuellement des geofences Braze, vous devez désactiver les demandes de geofence automatiques de Braze et fournir une coordonnée GPS pour les demandes. + +#### Partie 1 : Désactiver les requêtes de geofence automatique + +Les demandes de geofence automatique de Braze peuvent être désactivées dans votre fichier `braze.xml` en réglant `com_braze_automatic_geofence_requests_enabled` sur `false` : + +```xml +false +``` + +Cela peut également être effectué au moment de l’exécution via : + +{% tabs %} +{% tab JAVA %} + +```java +BrazeConfig.Builder brazeConfigBuilder = new BrazeConfig.Builder() + .setAutomaticGeofenceRequestsEnabled(false); +Braze.configure(getApplicationContext(), brazeConfigBuilder.build()); +``` + +{% endtab %} +{% tab KOTLIN %} + +```kotlin +val brazeConfigBuilder = BrazeConfig.Builder() + .setAutomaticGeofenceRequestsEnabled(false) +Braze.configure(applicationContext, brazeConfigBuilder.build()) +``` + +{% endtab %} +{% endtabs %} + +#### Partie 2 : Demander manuellement un geofence Braze avec des coordonnées GPS + +Les geofences de Braze sont demandés manuellement via la méthode [`requestGeofences()`][11] : + +{% tabs %} +{% tab JAVA %} + +```java +Braze.getInstance(getApplicationContext()).requestGeofences(latitude, longitude); +``` + +{% endtab %} +{% tab KOTLIN %} + +```kotlin +Braze.getInstance(applicationContext).requestGeofences(33.078947, -116.601356) +``` + +{% endtab %} +{% endtabs %} + +{% alert important %} +Les geofences de Braze ne peuvent être demandées qu’une seule fois par session, soit automatiquement par le SDK, soit manuellement avec cette méthode. +{% endalert %} + +## Notification push pour synchroniser + +Notez que Braze synchronise les geofences vers les dispositifs à l’aide de notifications push en arrière-plan. Dans la plupart des cas, cela n’implique aucun changement de code, car cette fonctionnalité ne nécessite aucune intégration supplémentaire de la part de l’application. + +Cependant, notez que si votre application est arrêtée, la réception d’une notification push en arrière-plan la lancera en arrière-plan et la méthode `Application.onCreate()` sera appelé. Si vous avez une implémentation personnalisée `Application.onCreate()`, vous devez reporter les appels de serveur automatique et toute autre action que vous ne souhaitez pas déclencher par la notification push en arrière-plan. + +[3]: https://developers.google.com/android/reference/com/google/android/gms/location/package-summary +[4]: https://github.com/braze-inc/braze-android-sdk/blob/91622eb6cd4bba2e625cc22f00ca38e6136a0596/droidboy/src/main/java/com/appboy/sample/util/RuntimePermissionUtils.java +[10]: https://developers.google.com/android/guides/setup +[11]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze/request-geofences.html +[support]: {{site.baseurl}}/braze_support/ diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/advanced_use_cases/network_offline_mode_integration.md b/_lang/fr/_developer_guide/platform_integration_guides/android/advanced_use_cases/network_offline_mode_integration.md index 572f5503054..57d8bf7f44d 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/advanced_use_cases/network_offline_mode_integration.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/advanced_use_cases/network_offline_mode_integration.md @@ -34,4 +34,4 @@ Braze.setOutboundNetworkRequestsOffline(true) {% endtab %} {% endtabs %} -[1]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-braze/-companion/outbound-network-requests-offline.html?query=var%20outboundNetworkRequestsOffline:%20Boolean +[1]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-braze/-companion/outbound-network-requests-offline.html?query=var%20outboundNetworkRequestsOffline:%20Boolean diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/advanced_use_cases/runtime_configuration.md b/_lang/fr/_developer_guide/platform_integration_guides/android/advanced_use_cases/runtime_configuration.md index 4d76a6e6532..b20cc7a49da 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/advanced_use_cases/runtime_configuration.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/advanced_use_cases/runtime_configuration.md @@ -50,6 +50,6 @@ Braze.configure(this, brazeConfig) Un autre exemple est disponible dans notre [exemple d’application Hello Braze][3]. -[1]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-braze/-companion/configure.html -[2]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.configuration/-braze-config/-builder/index.html -[3]: https://github.com/Appboy/appboy-android-sdk/blob/master/samples/hello-braze/src/main/java/com/braze/helloworld/CustomApplication.java +[1]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-braze/-companion/configure.html +[2]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.configuration/-braze-config/-builder/index.html +[3]: https://github.com/braze-inc/braze-android-sdk/blob/master/samples/hello-braze/src/main/java/com/braze/helloworld/CustomApplication.java diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/disabling_tracking.md b/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/disabling_tracking.md index 4806b00ea8c..659581d6e6e 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/disabling_tracking.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/disabling_tracking.md @@ -15,6 +15,6 @@ Afin de se conformer aux réglementations de confidentialité des données, l’ En outre, vous pouvez utiliser la méthode [`wipeData()`][3] pour effacer entièrement toutes les données côté client stockées sur le périphérique. -[1]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-braze/-companion/disable-sdk.html -[2]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-braze/-companion/enable-sdk.html -[3]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-braze/-companion/wipe-data.html +[1]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-braze/-companion/disable-sdk.html +[2]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-braze/-companion/enable-sdk.html +[3]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-braze/-companion/wipe-data.html diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/location_tracking.md b/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/location_tracking.md index b0069f641bc..94e92cd3c2d 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/location_tracking.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/location_tracking.md @@ -56,4 +56,4 @@ Braze.getInstance(context).currentUser?.setLastKnownLocation(LATITUDE_DOUBLE_VAL {% endtabs %} [1]: https://stuff.mit.edu/afs/sipb/project/android/docs/guide/topics/location/strategies.html -[4]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-braze-user/set-last-known-location.html +[4]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-braze-user/set-last-known-location.html diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/logging_purchases.md b/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/logging_purchases.md index 65acdc0c3fc..3825158efbd 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/logging_purchases.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/logging_purchases.md @@ -54,7 +54,7 @@ Si vous transmettez une valeur de `10 USD` et une quantité de `3`, trois achats ### Ajouter des propriétés -Vous pouvez ajouter des métadonnées sur les achats en transmettant un [tableau de propriétés de l'événement]({{site.baseurl}}/user_guide/data_and_analytics/custom_data/custom_events#nested-objects) ou un [objet Braze Properties][4] avec vos informations d'achat. +Vous pouvez ajouter des métadonnées sur les achats en transmettant un [tableau de propriétés de l'événement]({{site.baseurl}}/user_guide/data_and_analytics/custom_data/custom_events#nested-objects) ou un [objet Propriétés Braze][4] avec vos informations d'achat. #### Formatage de l’objet Braze Properties @@ -103,6 +103,6 @@ Vous pouvez également utiliser notre API REST pour enregistrer les achats. Repo [1]: {{site.baseurl}}/developer_guide/rest_api/user_data/#user-data [3]: {{site.baseurl}}/developer_guide/platform_wide/analytics_overview/#user-data-collection -[4]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.outgoing/-braze-properties/index.html +[4]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.outgoing/-braze-properties/index.html [5]: http://developer.android.com/reference/java/util/Date.html -[6]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze/log-purchase.html +[6]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze/log-purchase.html diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/setting_custom_attributes.md b/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/setting_custom_attributes.md index a98ad945a29..5b3633b688b 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/setting_custom_attributes.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/setting_custom_attributes.md @@ -310,7 +310,7 @@ Braze.getInstance(context).currentUser?.setPushNotificationSubscriptionType(push {% endtab %} {% endtabs %} -[2]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-braze-user/index.html +[2]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-braze-user/index.html [4]: {{site.baseurl}}/developer_guide/rest_api/user_data/#user-data [6]: {{site.baseurl}}/developer_guide/platform_wide/analytics_overview/#arrays [7]: {{site.baseurl}}/developer_guide/platform_wide/analytics_overview/#user-data-collection diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/setting_user_ids.md b/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/setting_user_ids.md index 520d42692e2..730e2ec52e1 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/setting_user_ids.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/setting_user_ids.md @@ -5,7 +5,7 @@ platform: - Android - FireOS page_order: 1 -description: "Cet article montre comment définir des ID utilisateur dans votre application Android ou FireOS, des conventions de dénominations d’ID utilisateur suggérées, ainsi que certaines bonnes pratiques." +description: "Cet article de référence montre comment définir des ID utilisateur dans votre application Android ou FireOS, des conventions de dénominations d’ID utilisateur suggérées, ainsi que certaines bonnes pratiques." --- @@ -56,4 +56,4 @@ Reportez-vous à la documentation [`changeUser`][4] pour plus d’informations. [1]: {{site.baseurl}}/api/endpoints/user_data [2]: {{site.baseurl}}/api/endpoints/messaging/ -[4]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze/change-user.html +[4]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze/change-user.html diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/tracking_custom_events.md b/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/tracking_custom_events.md index bb21a220481..ab18c5f8be9 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/tracking_custom_events.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/tracking_custom_events.md @@ -99,6 +99,6 @@ Les clés suivantes sont réservées et ne peuvent pas être utilisées comme pr Consultez notre [KDoc][2] pour plus d’informations. [0]: {{site.baseurl}}/developer_guide/platform_wide/analytics_overview/#user-data-collection -[2]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze/log-custom-event.html +[2]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze/log-custom-event.html [3]: http://developer.android.com/reference/java/util/Date.html -[4]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.outgoing/-braze-properties/index.html +[4]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.outgoing/-braze-properties/index.html diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/tracking_sessions.md b/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/tracking_sessions.md index 50a99a98eea..7edcd1fee1e 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/tracking_sessions.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/tracking_sessions.md @@ -69,7 +69,7 @@ Braze.getInstance(this).subscribeToSessionUpdates { message -> {% endtab %} {% endtabs %} -[1]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze/subscribe-to-session-updates.html +[1]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze/subscribe-to-session-updates.html [session_tracking_3]: {{ site.baseurl }}/developer_guide/platform_integration_guides/android/initial_sdk_setup/android_sdk_integration/#step-2-configure-the-braze-sdk-in-brazexml [session_tracking_7]: {% image_buster /assets/img_archive/test_session.png %} [session_tracking_8]: {{ site.baseurl }}/developer_guide/platform_integration_guides/android/initial_sdk_setup/android_sdk_integration/#step-4-tracking-user-sessions-in-android diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/uninstall_tracking.md b/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/uninstall_tracking.md index 816525c1b88..17f78e8e156 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/uninstall_tracking.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/analytics/uninstall_tracking.md @@ -25,5 +25,5 @@ Consultez [Désinstaller le suivi][4] dans notre guide de l’utilisateur pour p [1]: https://developer.android.com/reference/android/app/Application [2]: https://developer.android.com/reference/android/app/Application#onCreate() -[3]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.push/-braze-notification-utils/is-uninstall-tracking-push.html +[3]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.push/-braze-notification-utils/is-uninstall-tracking-push.html [4]: {{site.baseurl}}/user_guide/data_and_analytics/tracking/uninstall_tracking/#uninstall-tracking diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/android_13.md b/_lang/fr/_developer_guide/platform_integration_guides/android/android_13.md index f05e6f3bdcb..f1fb497b2fc 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/android_13.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/android_13.md @@ -39,7 +39,7 @@ Les applications ayant un ciblage Android 13 peuvent contrôler quand elles dem Si votre utilisateur passe d’Android 12 à 13, que votre application était installée et que vous envoyiez des notification push, le système pré-accorde automatiquement la nouvelle autorisation de notification à toutes les applications éligibles. En d’autres termes, ces applications peuvent continuer à envoyer des notifications aux utilisateurs et ces derniers ne visualisent pas d’invite d’autorisation de délai d’exécution. -Pour des précisions à ce sujet, consultez la Documentation du développeur Android [ pour connaître les effets sur les mises à jour des applications existantes][8]. +Pour des précisions à ce sujet, consultez la Documentation du développeur Android pour [connaître les effets sur les mises à jour des applications existantes][8]. **Ciblage Android 12 ou d’une version antérieure** @@ -57,7 +57,7 @@ Vous pourrez ainsi optimiser votre [taux d’abonnement aux notifications push][ Pour commencer à utiliser notre nouvelle [fonctionnalité de base de notification push « sans code »][7], mettez à niveau votre SDK Android vers la [dernière version (v23.0.0 et ultérieures)][1]. -[1]: https://github.com/Appboy/appboy-android-sdk/blob/master/CHANGELOG.md#2300 +[1]: https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md#2300 [2]: https://developer.android.com/about/versions/13 [3]: https://developer.android.com/about/versions/13/changes/notification-permission [4]: https://developer.android.com/about/versions/13/changes/notification-permission#eligibility diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/changelog.md b/_lang/fr/_developer_guide/platform_integration_guides/android/changelog.md index 8c153d402fe..97e2e5e2043 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/changelog.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/changelog.md @@ -12,4 +12,4 @@ description: "Cette page répertorie les mises à jour du journal de modificatio # Journal de modifications du SDK pour Android -{% markdown_embed https://raw.githubusercontent.com/Appboy/appboy-android-sdk/master/CHANGELOG.md %} +{% markdown_embed https://raw.githubusercontent.com/braze-inc/braze-android-sdk/master/CHANGELOG.md %} diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/badges.md b/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/badges.md index b776c39a194..69fb0bab333 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/badges.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/badges.md @@ -34,4 +34,4 @@ Braze.getInstance(context).contentCardUnviewedCount {% endtab %} {% endtabs %} -[1]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze/get-content-card-unviewed-count.html +[1]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze/get-content-card-unviewed-count.html diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/custom_styling.md b/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/custom_styling.md index 5f642c5d300..33c308f820b 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/custom_styling.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/custom_styling.md @@ -289,11 +289,11 @@ Par défaut, les vues des cartes de contenu répondent automatiquement aux modif Pour écraser ce comportement, remplacez les valeurs `values-night` dans `android-sdk-ui/src/main/res/values-night/colors.xml` et `android-sdk-ui/src/main/res/values-night/dimens.xml`. -[36]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/extras.html +[36]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/extras.html [40]: {{site.baseurl}}/developer_guide/platform_integration_guides/android/advanced_use_cases/font_customization/#font-customization -[42]: https://github.com/Appboy/appboy-android-sdk/blob/master/android-sdk-ui/src/main/res/values/styles.xml -[44]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards.handlers/-i-content-cards-update-handler/index.html -[45]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards/-content-cards-fragment/set-content-card-update-handler.html -[46]: https://github.com/Appboy/appboy-android-sdk/blob/v11.0.0/android-sdk-ui/src/main/java/com/appboy/ui/contentcards/handlers/DefaultContentCardsUpdateHandler.java -[49]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards/-content-cards-fragment/index.html -[56]: https://github.com/Appboy/appboy-android-sdk/blob/v11.0.0/android-sdk-ui/src/main/java/com/appboy/ui/contentcards/handlers/DefaultContentCardsViewBindingHandler.java +[42]: https://github.com/braze-inc/braze-android-sdk/blob/master/android-sdk-ui/src/main/res/values/styles.xml +[44]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards.handlers/-i-content-cards-update-handler/index.html +[45]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards/-content-cards-fragment/set-content-card-update-handler.html +[46]: https://github.com/braze-inc/braze-android-sdk/blob/v11.0.0/android-sdk-ui/src/main/java/com/appboy/ui/contentcards/handlers/DefaultContentCardsUpdateHandler.java +[49]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards/-content-cards-fragment/index.html +[56]: https://github.com/braze-inc/braze-android-sdk/blob/v11.0.0/android-sdk-ui/src/main/java/com/appboy/ui/contentcards/handlers/DefaultContentCardsViewBindingHandler.java diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/default_feed.md b/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/default_feed.md index 6eb94c2e859..afbc8efaa8c 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/default_feed.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/default_feed.md @@ -205,13 +205,13 @@ Le style utilisé pour afficher ce message peut être trouvé via [`Braze.Conten Pour personnaliser complètement le comportement d’erreur réseau, vous pouvez étendre [`ContentCardsFragment`][54] et définir la variable `mShowNetworkUnavailableRunnable` pour effectuer une autre action. -[49]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards/-content-cards-fragment/index.html -[52]: https://github.com/Appboy/appboy-android-sdk/blob/2e386dfa59a87bfc24ef7cb6ff5adf6b16f44d24/android-sdk-ui/src/main/res/values/styles.xml#L522-L530 -[53]: https://github.com/Appboy/appboy-android-sdk/blob/master/android-sdk-ui/src/main/java/com/braze/ui/contentcards/adapters/ContentCardAdapter.kt -[54]: https://github.com/Appboy/appboy-android-sdk/blob/master/android-sdk-ui/src/main/java/com/braze/ui/contentcards/ContentCardsFragment.kt -[50]: https://github.com/Appboy/appboy-android-sdk/blob/master/android-sdk-ui/src/main/java/com/braze/ui/contentcards/adapters/EmptyContentCardsAdapter.kt -[36]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/extras.html -[44]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards.handlers/-i-content-cards-update-handler/index.html -[45]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards/-content-cards-fragment/set-content-card-update-handler.html -[46]: https://github.com/Appboy/appboy-android-sdk/blob/v11.0.0/android-sdk-ui/src/main/java/com/appboy/ui/contentcards/handlers/DefaultContentCardsUpdateHandler.java +[49]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards/-content-cards-fragment/index.html +[52]: https://github.com/braze-inc/braze-android-sdk/blob/2e386dfa59a87bfc24ef7cb6ff5adf6b16f44d24/android-sdk-ui/src/main/res/values/styles.xml#L522-L530 +[53]: https://github.com/braze-inc/braze-android-sdk/blob/master/android-sdk-ui/src/main/java/com/braze/ui/contentcards/adapters/ContentCardAdapter.kt +[54]: https://github.com/braze-inc/braze-android-sdk/blob/master/android-sdk-ui/src/main/java/com/braze/ui/contentcards/ContentCardsFragment.kt +[50]: https://github.com/braze-inc/braze-android-sdk/blob/master/android-sdk-ui/src/main/java/com/braze/ui/contentcards/adapters/EmptyContentCardsAdapter.kt +[36]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/extras.html +[44]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards.handlers/-i-content-cards-update-handler/index.html +[45]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards/-content-cards-fragment/set-content-card-update-handler.html +[46]: https://github.com/braze-inc/braze-android-sdk/blob/v11.0.0/android-sdk-ui/src/main/java/com/appboy/ui/contentcards/handlers/DefaultContentCardsUpdateHandler.java diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/handling_clicks_manually.md b/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/handling_clicks_manually.md index 76c85c8e4d9..b215eb81e04 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/handling_clicks_manually.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/handling_clicks_manually.md @@ -52,4 +52,4 @@ BrazeContentCardsManager.getInstance().contentCardsActionListener = object : ICo {% endtab %} {% endtabs %} -[43]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards.listeners/-i-content-cards-action-listener/index.html +[43]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards.listeners/-i-content-cards-action-listener/index.html diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/key_value_pairs.md b/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/key_value_pairs.md index 8fb7e484cda..d5a3f756b07 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/key_value_pairs.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/key_value_pairs.md @@ -22,4 +22,4 @@ Les cartes de contenu ont une limite de taille maximale de 2 kb pour le contenu {% endalert %} [1]: {{site.baseurl}}/user_guide/message_building_by_channel/content_cards/customize/#customization-approaches -[36]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.appboy.models.cards/-card/#-2118252107%2FProperties%2F-1725759721 +[36]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/#-2118252107%2FProperties%2F-1725759721 diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/swipe_to_dismiss.md b/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/swipe_to_dismiss.md index 7c6342b2f92..25f358cc477 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/swipe_to_dismiss.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/swipe_to_dismiss.md @@ -5,7 +5,7 @@ page_order: 4.5 platform: - Android - FireOS -description: "Cet article couvre les options de personnalisation pour vos cartes de contenu dans votre application Android ou FireOS." +description: "Cet article de référence couvre les options de personnalisation pour vos cartes de contenu dans votre application Android ou FireOS." channel: - cartes de contenu @@ -15,5 +15,5 @@ channel: La désactivation de la fonctionnalité « glisser pour fermer » est effectuée sur la base d’une seule carte via la méthode [`card.setIsDismissibleByUser()`][48]. Les cartes peuvent être interceptées avant l’affichage en utilisant la méthode [`ContentCardsFragment.setContentCardUpdateHandler()`][45]. -[45]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards/-content-cards-fragment/set-content-card-update-handler.html -[48]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.appboy.enums/-card-key/index.html#285743463%2FClasslikes%2F-1725759721 +[45]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards/-content-cards-fragment/set-content-card-update-handler.html +[48]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.appboy.enums/-card-key/index.html#285743463%2FClasslikes%2F-1725759721 diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/use_cases/carousel_view.md b/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/use_cases/carousel_view.md index 42c30e933cd..9a0c935d511 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/use_cases/carousel_view.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/customization/use_cases/carousel_view.md @@ -49,7 +49,7 @@ Suivez les étapes pour l’[utilisation de plusieurs flux de cartes de contenu] Il est important de veiller à ce que vos équipes marketing et de développeurs coordonnent les paires clé-valeur (par ex., `feed_type = brand_homepage`), car toute paire clé-valeur utilisée doit correspondre aux paires clé-valeur que les développeurs construisent dans la logique de l’application. {% endalert %} -Pour obtenir la documentation développeur spécifique à Android sur la classe des cartes de contenu, les méthodes et les attributs en Kotlin, consultez la documentation [com.braze.ui.contentcards.view](https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards.view/index.html) Android. +Pour obtenir la documentation développeur spécifique à Android sur la classe des cartes de contenu, les méthodes et les attributs en Kotlin, consultez la documentation [com.braze.ui.contentcards.view](https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards.view/index.html) Android. ## Considérations diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/integration.md b/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/integration.md index e57e288d57b..8b8bc498aa1 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/integration.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/integration.md @@ -189,15 +189,15 @@ Vous pouvez enregistrer ou définir manuellement une carte de contenu particuli Si une carte est déjà marquée comme étant rejetée, elle ne peut pas être marquée comme étant de nouveau rejetée. -[7]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/log-click.html -[8]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/log-impression.html -[55]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/is-control.html -[57]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/index.html#-1644350493%2FProperties%2F-1725759721 -[29]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/index.html -[30]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-banner-image-card/index.html -[31]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-captioned-image-card/index.html -[32]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-text-announcement-card/index.html -[41]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-short-news-card/index.html +[7]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/log-click.html +[8]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/log-impression.html +[55]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/is-control.html +[57]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/index.html#-1644350493%2FProperties%2F-1725759721 +[29]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/index.html +[30]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-banner-image-card/index.html +[31]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-captioned-image-card/index.html +[32]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-text-announcement-card/index.html +[41]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-short-news-card/index.html [2]: https://developer.android.com/guide/components/fragments.html [3]: https://developer.android.com/guide/fragments#Adding "Android Documentation: Fragments" -[4]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards/-content-cards-fragment/index.html +[4]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards/-content-cards-fragment/index.html diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/multiple_feeds.md b/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/multiple_feeds.md index fbef4f162e8..e79d040f6da 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/multiple_feeds.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/multiple_feeds.md @@ -140,6 +140,6 @@ Ce flux personnalisé peut être utilisé comme n’importe quel autre [`Content Lors de la création d’une campagne de carte de contenu, définissez votre paire clé-valeur dans laquelle la clé est `feed_type` et la valeur est `Transactional`. -[1]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards/-content-cards-fragment/index.html -[2]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards.handlers/-i-content-cards-update-handler/index.html -[3]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.events/-content-cards-updated-event/index.html +[1]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards/-content-cards-fragment/index.html +[2]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.contentcards.handlers/-i-content-cards-update-handler/index.html +[3]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.events/-content-cards-updated-event/index.html diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/refreshing_the_feed.md b/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/refreshing_the_feed.md index d0186565c68..a2652e46bba 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/refreshing_the_feed.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/content_cards/refreshing_the_feed.md @@ -34,4 +34,4 @@ Braze.getInstance(context).requestContentCardsRefresh(false) Consultez notre [KDoc correspondant][1] pour plus d’informations sur cette méthode. -[1]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze/request-content-cards-refresh.html +[1]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze/request-content-cards-refresh.html diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/in-app_messaging/customization/custom_listeners.md b/_lang/fr/_developer_guide/platform_integration_guides/android/in-app_messaging/customization/custom_listeners.md index f450d47ba8c..06606104866 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/in-app_messaging/customization/custom_listeners.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/in-app_messaging/customization/custom_listeners.md @@ -7,7 +7,7 @@ platform: page_order: 3 description: "Cet article de référence décrit les écouteurs de messagerie in-app personnalisés pour votre application Android ou FireOS." channel: - - in-app messages + - messages In-App --- @@ -106,7 +106,7 @@ Si vous choisissez de `DISCARD` le message in-app et de le remplacer par votre v Sur Android, cela est fait en appelant `logClick` et `logImpression` sur les messages in-app et `logButtonClick` sur des messages in-app immersifs. {% alert tip %} -Une fois qu’un message in-app a été placé sur la pile, vous pouvez demander qu’il soit récupéré et affiché à tout moment en appelant [`BrazeInAppMessageManager.getInstance().requestDisplayInAppMessage()`](https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-braze-in-app-message-manager/request-display-in-app-message.html). Cette méthode demande à Braze d’afficher le prochain message in-app disponible dans la pile. +Une fois qu’un message in-app a été placé sur la pile, vous pouvez demander qu’il soit récupéré et affiché à tout moment en appelant [`BrazeInAppMessageManager.getInstance().requestDisplayInAppMessage()`](https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-braze-in-app-message-manager/request-display-in-app-message.html). Cette méthode demande à Braze d’afficher le prochain message in-app disponible dans la pile. {% endalert %} ### Étape 4 : Personnaliser le comportement du thème sombre (facultatif) {#android-in-app-message-dark-theme-customization} @@ -462,24 +462,24 @@ BrazeInAppMessageManager.getInstance().setCustomInAppMessageViewWrapperFactory(C [5]: {{site.baseurl}}/developer_guide/platform_integration_guides/android/in-app_messaging/integration/#step-1-braze-in-app-message-manager-registration [14]: {{site.baseurl}}/developer_guide/platform_integration_guides/android/news_feed/customization/key_value_pairs/ [18]: http://developer.android.com/reference/android/view/View.html -[20]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-i-in-app-message-animation-factory/index.html -[21]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage.listeners/-i-in-app-message-manager-listener/index.html -[24]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage.views/-i-in-app-message-immersive-view/index.html -[25]: https://github.com/Appboy/appboy-android-sdk/blob/master/android-sdk-ui/src/main/java/com/appboy/ui/inappmessage/IInAppMessageView.java -[34]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-braze-in-app-message-manager/index.html -[42]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-i-in-app-message-view-factory/index.html -[45]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-in-app-message-operation/index.html +[20]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-i-in-app-message-animation-factory/index.html +[21]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage.listeners/-i-in-app-message-manager-listener/index.html +[24]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage.views/-i-in-app-message-immersive-view/index.html +[25]: https://github.com/braze-inc/braze-android-sdk/blob/master/android-sdk-ui/src/main/java/com/appboy/ui/inappmessage/IInAppMessageView.java +[34]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-braze-in-app-message-manager/index.html +[42]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-i-in-app-message-view-factory/index.html +[45]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-in-app-message-operation/index.html [82]: https://developer.android.com/reference/android/app/Application.html#onCreate() -[83]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-in-app-message-operation/index.html#27659854%2FClasslikes%2F-1725759721 -[86]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage.listeners/-i-html-in-app-message-action-listener/index.html -[87]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.appboy.ui.inappmessage/-i-in-app-message-view-factory/index.html -[88]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.appboy.ui.inappmessage/-i-in-app-message-view-wrapper-factory/index.html -[90]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.appboy.ui.inappmessage/-i-in-app-message-view-wrapper/index.html -[91]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-in-app-message-manager-base/set-custom-in-app-message-view-factory.html -[92]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage.listeners/-i-in-app-message-manager-listener/before-in-app-message-view-opened.html -[93]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage.listeners/-i-in-app-message-manager-listener/after-in-app-message-view-opened.html -[94]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage.listeners/-i-in-app-message-manager-listener/before-in-app-message-view-closed.html -[95]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage.listeners/-i-in-app-message-manager-listener/after-in-app-message-view-closed.html -[97]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-i-in-app-message-themeable/enable-dark-theme.html -[98]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-braze-in-app-message-manager/index.html#requestDisplayInAppMessage-- -[89]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-default-in-app-message-view-wrapper/index.html +[83]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-in-app-message-operation/index.html#27659854%2FClasslikes%2F-1725759721 +[86]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage.listeners/-i-html-in-app-message-action-listener/index.html +[87]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.appboy.ui.inappmessage/-i-in-app-message-view-factory/index.html +[88]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.appboy.ui.inappmessage/-i-in-app-message-view-wrapper-factory/index.html +[90]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.appboy.ui.inappmessage/-i-in-app-message-view-wrapper/index.html +[91]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-in-app-message-manager-base/set-custom-in-app-message-view-factory.html +[92]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage.listeners/-i-in-app-message-manager-listener/before-in-app-message-view-opened.html +[93]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage.listeners/-i-in-app-message-manager-listener/after-in-app-message-view-opened.html +[94]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage.listeners/-i-in-app-message-manager-listener/before-in-app-message-view-closed.html +[95]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage.listeners/-i-in-app-message-manager-listener/after-in-app-message-view-closed.html +[97]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-i-in-app-message-themeable/enable-dark-theme.html +[98]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-braze-in-app-message-manager/index.html#requestDisplayInAppMessage-- +[89]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-default-in-app-message-view-wrapper/index.html diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/in-app_messaging/customization/custom_styling.md b/_lang/fr/_developer_guide/platform_integration_guides/android/in-app_messaging/customization/custom_styling.md index 0c542de2c35..5e633fd3570 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/in-app_messaging/customization/custom_styling.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/in-app_messaging/customization/custom_styling.md @@ -88,5 +88,5 @@ override fun beforeInAppMessageDisplayed(inAppMessage: IInAppMessage): InAppMess Pour les tablettes, les messages in-app apparaissent dans le style d’orientation préféré de l’utilisateur, quelle que soit l’orientation réelle de l’écran. [19]: {{site.baseurl}}/developer_guide/platform_integration_guides/android/in-app_messaging/customization/custom_listeners/ -[6]: https://github.com/Appboy/appboy-android-sdk/blob/master/android-sdk-ui/src/main/res/values/styles.xml +[6]: https://github.com/braze-inc/braze-android-sdk/blob/master/android-sdk-ui/src/main/res/values/styles.xml [79]: {{site.baseurl}}/developer_guide/platform_integration_guides/android/advanced_use_cases/font_customization/#font-customization diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/in-app_messaging/customization/key_value_pairs.md b/_lang/fr/_developer_guide/platform_integration_guides/android/in-app_messaging/customization/key_value_pairs.md index 4e45381b45a..24005c06403 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/in-app_messaging/customization/key_value_pairs.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/in-app_messaging/customization/key_value_pairs.md @@ -32,4 +32,4 @@ extras: Map Consultez ce [KDoc][44] pour plus d’informations. -[44]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-i-in-app-message/index.html#1498425856%2FProperties%2F-1725759721 +[44]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-i-in-app-message/index.html#1498425856%2FProperties%2F-1725759721 diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/in-app_messaging/customization/message_dismissal.md b/_lang/fr/_developer_guide/platform_integration_guides/android/in-app_messaging/customization/message_dismissal.md index 5b6ecefc062..d2b603de2dc 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/in-app_messaging/customization/message_dismissal.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/in-app_messaging/customization/message_dismissal.md @@ -7,7 +7,7 @@ platform: page_order: 5 description: "Cet article de référence explique le rejet des messages in-app dans votre application Android ou FireOS." channel: - - messages in-app + - messages In-App --- @@ -64,7 +64,7 @@ BrazeInAppMessageManager.getInstance().setCustomInAppMessageManagerListener(obje Notez que si cette fonctionnalité est désactivée, le comportement par défaut du bouton de retour arrière du matériel de l’activité hôte sera utilisé. Cela peut entraîner la fermeture de l’application par le bouton de retour arrière plutôt celle du message in-app. {% endalert %} -## Rejeter le modal par un touché extérieur +## Rejet modal par touché extérieur La valeur par défaut et historique est `false`, ce qui signifie que les clics à l’extérieur du modal ne le ferment pas. Définir cette valeur sur `true` entraînera le rejet du message in-app modal lorsque l’utilisateur touche en dehors du message in-app. Ce comportement peut être activé en appelant : @@ -72,4 +72,4 @@ La valeur par défaut et historique est `false`, ce qui signifie que les clics BrazeInAppMessageManager.getInstance().setClickOutsideModalViewDismissInAppMessageView(true) ``` -[96]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-in-app-message-manager-base/set-back-button-dismisses-in-app-message-view.html +[96]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-in-app-message-manager-base/set-back-button-dismisses-in-app-message-view.html diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/in-app_messaging/integration.md b/_lang/fr/_developer_guide/platform_integration_guides/android/in-app_messaging/integration.md index 2dd5c83643e..429539da9a1 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/in-app_messaging/integration.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/in-app_messaging/integration.md @@ -1,231 +1,231 @@ ---- -nav_title: Intégration -article_title: Intégration de message in-app pour Android et FireOS -page_order: 1 -platform: - - Android - - FireOS -description: "Cet article de référence explique comment intégrer les messages in-app dans votre application Android ou FireOS." -channel: - - messages in-app -search_rank: 2 ---- - -# Intégration de message in-app - -Les [messages in-app]({{site.baseurl}}/user_guide/message_building_by_channel/in-app_messages/) vous aident à proposer du contenu à vos utilisateurs sans interrompre leur journée avec une notification push. Des messages in-app personnalisés et adaptés améliorent l’expérience utilisateur et aident votre public à tirer le meilleur parti de votre application. Avec plusieurs mises en page et outils de personnalisation, les messages in-app impliquent plus que jamais vos utilisateurs. - -Pour voir des exemples de messages in-app, consultez nos [études de cas][83]. - -## Types de messages in-app - -Braze propose plusieurs types de messages in-app par défaut, tous personnalisables par des messages, des images, des icônes [Font Awesome][15], des boutons d’action, de l’analytique, des styles modifiables et des thèmes de couleurs. Les types actuellement disponibles sont : - -- [`Slideup`][91] -- [`Modal`][90] -- [`Full`][93] -- [`HTML Full`][92] - -Il est également possible de définir votre propre [affichage personnalisé de message in-app][12]. - -Tous les messages in-app implémentent l’interface [`IInAppMessage`][3], qui définit tous leurs comportements et traits de base. [`InAppMessageBase`][27] est une classe abstraite qui implémente `IInAppMessage` et fournit le socle de l’implémentation des messages in-app. Toutes les classes de messages in-app sont des sous-classes de `InAppMessageBase`. - -En outre, il existe une sous-interface de `IInAppMessage` appelée [`IInAppMessageImmersive`][8], qui ajoute des [buttons][50] d’action permettant des actions analytiques, ainsi qu’un texte d’en-tête et un bouton de fermeture.[`InAppMessageImmersiveBase`][28] est une classe abstraite qui implémente `IInAppMessageImmersive` et fournit la base d’implémentation des messages in-app`immersive`. Les messages in-app `Modal` et `Full` sont des sous-classes de `InAppMessageImmersiveBase` . - -Les messages in-app entièrement en HTML sont des instances [`InAppMessageHtmlFull`][51], qui implémentent [`IInAppMessageHtml`][52], une autre sous-classe de `IInAppMessage`. - -### Comportements attendus par type de message - -Voilà à quoi ressemble l’ouverture de nos types de messages in-app par défaut pour vos utilisateurs. - -{% tabs local %} -{% tab Slideup %} -Les messages in-app [`Slideup`](https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-in-app-message-slideup/index.html) sont ainsi nommés car ils « glissent vers le haut » ou « glissent vers le bas » depuis le haut ou le bas de l’écran. Ils recouvrent une petite partie de l’écran et offrent une fonctionnalité de messagerie efficace et non intrusive. - -![Un message in-app surgissant du bas d’un écran de téléphone et affichant « Les humains sont compliqués. L’engagement des clients ne devrait pas l’être. » En arrière-plan, le même message in-app est affiché dans l’angle inférieur droit d’une page Web.]({% image_buster /assets/img/slideup-behavior.gif %}){: style="border:0px;"} - -{% endtab %} -{% tab Modal %} -Les messages in-app [`Modal`](https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-in-app-message-modal/index.html) apparaissent au centre de l’écran et sont encadrés par un panneau translucide. Ils sont utiles pour les messages plus critiques et peuvent être équipés de deux boutons d’action permettant l’analytique. - -![Un message in-app modal au centre d’un écran de téléphone affichant : « Les humains sont compliqués. L’engagement des clients ne devrait pas l’être. » En arrière-plan, le même message in-app est affiché au centre d’une page Web.]({% image_buster /assets/img/modal-behavior.gif %}){: style="border:0px;"} - -{% endtab %} -{% tab Full Screen %} -Les messages in-app [`Full`](https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-in-app-message-full/index.html) sont utiles pour maximiser le contenu et l’impact de votre communication utilisateur. La moitié supérieure d’un `full` message in-app contient une image, et la moitié inférieure affiche le texte et deux boutons d’action permettant l’analyse. - -![Un message in-app plein écran s’affiche sur l’ensemble de l’écran du téléphone et affiche : « Les humains sont compliqués. L’engagement des clients ne devrait pas l’être. » En arrière-plan, le message in-app est affiché en grand au centre d’une page Web.]({% image_buster /assets/img_archive/In-App_Full.png %}) - -{% endtab %} -{% tab Custom HTML %} -Les messages in-app [`HTML Full`](https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-in-app-message-html-full/index.html) sont utiles pour créer un contenu utilisateur entièrement personnalisé. Le contenu des messages in-app entièrement en HTML défini par l’utilisateur est affiché dans un `WebView` et peut éventuellement contenir d’autres contenus enrichis, tels que des images et des polices, permettant un contrôle total de l’apparence et de la fonctionnalité du message.

Les messages in-app Android prennent en charge une interface JavaScript `brazeBridge` pour appeler des méthodes SDK Braze pour le Web depuis votre HTML. Consultez nos meilleures pratiques pour plus de détails. - -![Un message in-app HTML avec un carrousel de contenus et des boutons interactifs.]({% image_buster /assets/img/full-screen-behavior.gif %}){: style="border:0px;"} - -{% alert important %} -Actuellement, nous ne prenons pas en charge l’affichage de messages in-app HTML personnalisés dans un iFrame sur les plateformes iOS et Android. -{% endalert %} - -{% endtab %} -{% endtabs %} - -#### Définir des types de messages in-app personnalisés - -L’objet de message in-app `slideup` étend [`InAppMessageBase`][27]. -Les types de messages `full` et `modal` étendent [`InAppMessageImmersiveBase`][28]. L’extension de l’une de ces classes vous permet d’ajouter des fonctionnalités personnalisées à vos messages in-app générés localement. - -## Intégration {#in-app-messaging-integration} - -### Étape 1 : Enregistrer le gestionnaire de messages in-app Braze - -L’affichage des messages in-app est géré par la classe [`BrazeInAppMessageManager`][34] . Chaque activité de votre application doit être enregistrée avec le `BrazeInAppMessageManager` pour lui permettre d’ajouter des vues de messages in-app à la hiérarchie de vues. Il existe deux manières de le faire : - -#### Intégration de la fonction de rappel du cycle de vie de l’activité (recommandé) - -L’[intégration de la fonction de rappel du cycle de vie de l’activité ][59] s’occupe automatiquement de l’enregistrement des messages in-app. Aucune intégration supplémentaire n’est requise. Il s’agit de l’intégration recommandée pour la gestion des messages in-app. - -#### Enregistrement manuel des messages in-app - -{% alert warning %} -Si vous avez fait l’intégration du cycle de vie de l’activité, vous *ne devriez pas* réaliser une intégration manuelle des messages in-app. -{% endalert %} - -Tout d’abord, dans votre [`Application.onCreate()`][82], appelez [`ensureSubscribedToInAppMessageEvents()`][69]: - -{% tabs %} -{% tab JAVA %} - -```java -BrazeInAppMessageManager.getInstance().ensureSubscribedToInAppMessageEvents(context); -``` - -{% endtab %} -{% tab KOTLIN %} - -```kotlin -BrazeInAppMessageManager.getInstance().ensureSubscribedToInAppMessageEvents(context) -``` - -{% endtab %} -{% endtabs %} - -Ensuite, dans chaque activité où les messages in-app peuvent être montrés, [`registerInAppMessageManager()`][80] doit être appelé dans le de cette activité `onResume()`: - -{% tabs %} -{% tab JAVA %} - -```java -@Override -public void onResume() { - super.onResume(); - // Enregistre le BrazeInAppMessageManager pour l’activité en cours. Cette activité va écouter - // les messages in-app de Braze. - BrazeInAppMessageManager.getInstance().registerInAppMessageManager(activity); -} -``` - -{% endtab %} -{% tab KOTLIN %} - -```kotlin -public override fun onResume() { - super.onResume() - // Enregistre le BrazeInAppMessageManager pour l’activité en cours. Cette activité va écouter - // les messages in-app de Braze. - BrazeInAppMessageManager.getInstance().registerInAppMessageManager(this) -} -``` - -{% endtab %} -{% endtabs %} - -Enfin, dans chaque activité où [`registerInAppMessageManager()`][80] a été appelé, [`unregisterInAppMessageManager()`][81] doit être appelé dans le `onPause()`de cette activité : - -{% tabs %} -{% tab JAVA %} - -```java -@Override -public void onPause() { - super.onPause(); - // Supprime le BrazeInAppMessageManager pour l’activité en cours. - BrazeInAppMessageManager.getInstance().unregisterInAppMessageManager(activity); -} -``` - -{% endtab %} -{% tab KOTLIN %} - -```kotlin -public override fun onPause() { - super.onPause() - // Supprime le BrazeInAppMessageManager. - BrazeInAppMessageManager.getInstance().unregisterInAppMessageManager(this) -} -``` - -{% endtab %} -{% endtabs %} - -### Étape 2 : Liste noire du gestionnaire de messages in-app (facultatif) - -Dans votre intégration, vous pouvez exiger que certaines activités de votre application n’affichent pas de messages in-app. L’[intégration de fonction de rappel du cycle de vie de l’activité][59] permet de le faire facilement. - -L’exemple de code suivant ajoute deux activités à la liste noire d’enregistrement de messages in-app, `SplashActivity` et `SettingsActivity` : - -{% tabs %} -{% tab JAVA %} - -```java -public class MyApplication extends Application { - @Override - public void onCreate() { - super.onCreate(); - Set inAppMessageBlacklist = new HashSet<>(); - inAppMessageBlacklist.add(SplashActivity.class); - inAppMessageBlacklist.add(SettingsActivity.class); - registerActivityLifecycleCallbacks(new BrazeActivityLifecycleCallbackListener(inAppMessageBlacklist)); - } -} -``` - -{% endtab %} -{% tab KOTLIN %} - -```kotlin -class MyApplication : Application() { - override fun onCreate() { - super.onCreate() - val inAppMessageBlacklist = HashSet>() - inAppMessageBlacklist.add(SplashActivity::class.java) - inAppMessageBlacklist.add(SettingsActivity::class.java) - registerActivityLifecycleCallbacks(BrazeActivityLifecycleCallbackListener(inAppMessageBlacklist)) - } -} -``` - -{% endtab %} -{% endtabs %} - - -[34]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-braze-in-app-message-manager/index.html -[69]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-braze-in-app-message-manager/ensure-subscribed-to-in-app-message-events.html -[80]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-braze-in-app-message-manager/register-in-app-message-manager.html -[81]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-braze-in-app-message-manager/unregister-in-app-message-manager.html -[82]: https://developer.android.com/reference/android/app/Application.html#onCreate() -[83]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-braze-activity-lifecycle-callback-listener/index.html -[59]: {{site.baseurl}}/developer_guide/platform_integration_guides/android/initial_sdk_setup/android_sdk_integration/#step-4-tracking-user-sessions-in-android -[3]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-i-in-app-message/index.html -[8]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-i-in-app-message-immersive/index.html -[12]: {{site.baseurl}}/developer_guide/platform_integration_guides/android/in-app_messaging/customization/custom_listeners/#custom-view-factory -[15]: https://fontawesome.com/icons?d=gallery&p=2 -[27]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-in-app-message-base/index.html -[28]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-in-app-message-immersive-base/index.html -[50]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-message-button/index.html -[51]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-in-app-message-html-full/index.html -[52]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-i-in-app-message-html/index.html -[84]: {{site.baseurl}}/user_guide/message_building_by_channel/push/best_practices/ -[90]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-in-app-message-modal/index.html -[91]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-in-app-message-slideup/index.html -[92]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-in-app-message-html-full/index.html -[93]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-in-app-message-full/index.html +--- +nav_title: Intégration +article_title: Intégration de message in-app pour Android et FireOS +page_order: 1 +platform: + - Android + - FireOS +description: "Cet article de référence explique comment intégrer les messages in-app dans votre application Android ou FireOS." +channel: + - messages In-App +search_rank: 2 +--- + +# Intégration de message in-app + +Les [messages in-app]({{site.baseurl}}/user_guide/message_building_by_channel/in-app_messages/) vous aident à proposer du contenu à vos utilisateurs sans interrompre leur journée avec une notification push. Des messages in-app personnalisés et adaptés améliorent l’expérience utilisateur et aident votre audience à tirer le meilleur parti de votre application. Avec plusieurs mises en page et outils de personnalisation, les messages in-app impliquent plus que jamais vos utilisateurs. + +Pour voir des exemples de messages in-app, consultez nos [études de cas][83]. + +## Types de messages in-app + +Braze propose plusieurs types de messages in-app par défaut, tous personnalisable par des messages, des images, des icônes [Font Awesome][15], des boutons d’action, de l’analytique, des styles modifiables et des thèmes de couleurs. Les types actuellement disponibles sont : + +- [`Slideup`][91] +- [`Modal`][90] +- [`Full`][93] +- [`HTML Full`][92] + +Il est également possible de définir votre propre [affichage personnalisé de message in-app][12]. + +Tous les messages in-app implémentent l’interface [`IInAppMessage`][3], qui définit tous leurs comportements et traits de base. [`InAppMessageBase`][27] est une classe abstraite qui implémente `IInAppMessage` et fournit le socle de l’implémentation des messages in-app. Toutes les classes de messages in-app sont des sous-classes de `InAppMessageBase`. + +En outre, il existe une sous-interface de `IInAppMessage` appelée [`IInAppMessageImmersive`][8], qui ajoute des [boutons][50] d’action permettant l’analytique, ainsi qu’un texte d’en-tête et un bouton de fermeture. [`InAppMessageImmersiveBase`][28] est une classe abstraite qui implémente `IInAppMessageImmersive` et fournit la base d’implémentation des messages in-app `immersive`. Les messages in-app `Modal` et `Full` sont des sous-classes de `InAppMessageImmersiveBase`. + +Les messages in-app entièrement en HTML sont des instances [`InAppMessageHtmlFull`][51], qui implémentent [`IInAppMessageHtml`][52], une autre sous-classe de `IInAppMessage`. + +### Comportements attendus par type de message + +Voilà à quoi ressemble l’ouverture de nos types de messages in-app par défaut pour vos utilisateurs. + +{% tabs local %} +{% tab Slideup %} +[`Slideup`](https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-in-app-message-slideup/index.html) Les messages in-app sont ainsi nommés, car ils « surgissent » du haut ou du bas de l’écran. Ils recouvrent une petite partie de l’écran et offrent une fonctionnalité de messagerie efficace et non intrusive. + +![Un message in-app surgissant du bas d’un écran de téléphone et affichant « Les humains sont compliqués. L’engagement des clients ne devrait pas l’être. » En arrière-plan, le même message in-app est affiché dans l’angle inférieur droit d’une page Web.]({% image_buster /assets/img/slideup-behavior.gif %}){: style="border:0px;"} + +{% endtab %} +{% tab Modal %} +[`Modal`](https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-in-app-message-modal/index.html) Les messages in-app apparaissent au centre de l’écran et sont encadrés par un panneau transparent. Ils sont utiles pour les messages plus critiques et peuvent être équipés de deux boutons d’action permettant l’analytique. + +![Un message in-app modal au centre d’un écran de téléphone affichant « Les humains sont compliqués. L’engagement des clients ne devrait pas l’être. » En arrière-plan, le même message in-app est affiché au centre d’une page Web.]({% image_buster /assets/img/modal-behavior.gif %}){: style="border:0px;"} + +{% endtab %} +{% tab Full Screen %} +Les messages in-app [`Full`](https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-in-app-message-full/index.html) sont utiles pour maximiser le contenu et l’impact de votre communication utilisateur. La moitié supérieure d’un `full` message in-app contient une image, et la moitié inférieure affiche le texte et deux boutons d’action permettant l’analyse. + +![Un message in-app plein écran s’affiche sur l’ensemble de l’écran du téléphone et affiche : « Les humains sont compliqués. L’engagement des clients ne devrait pas l’être. » En arrière-plan, le message in-app est affiché en grand au centre d’une page Web.]({% image_buster /assets/img_archive/In-App_Full.png %}) + +{% endtab %} +{% tab Custom HTML %} +Les messages in-app [`HTML Full`](https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-in-app-message-html-full/index.html) sont utiles pour créer un contenu utilisateur entièrement personnalisé. Le contenu des messages in-app entièrement en HTML défini par l’utilisateur est affiché dans un `WebView` et peut éventuellement contenir d’autres contenus enrichis, tels que des images et des polices, permettant un contrôle total de l’apparence et de la fonctionnalité du message.

Les messages in-app Android prennent en charge une interface JavaScript `brazeBridge` pour appeler des méthodes SDK Braze pour le Web depuis votre HTML. Consultez nos meilleures pratiques pour plus de détails. + +![Un message in-app HTML avec un carrousel de contenus et des boutons interactifs.]({% image_buster /assets/img/full-screen-behavior.gif %}){: style="border:0px;"} + +{% alert important %} +Actuellement, nous ne prenons pas en charge l’affichage de messages in-app HTML personnalisés dans un iFrame sur les plateformes iOS et Android. +{% endalert %} + +{% endtab %} +{% endtabs %} + +#### Définir des types de messages in-app personnalisés + +L’objet de message in-app `slideup` étend [`InAppMessageBase`][27]. +Les types de messages `full` et `modal` étendent [`InAppMessageImmersiveBase`][28]. L’extension de l’une de ces classes vous permet d’ajouter des fonctionnalités personnalisées à vos messages in-app générés localement. + +## Intégration {#in-app-messaging-integration} + +### Étape 1 : Enregistrer le gestionnaire de messages in-app Braze + +L’affichage des messages in-app est géré par la classe [`BrazeInAppMessageManager`][34]. Chaque activité de votre application doit être enregistrée avec le `BrazeInAppMessageManager` pour lui permettre d’ajouter des vues de messages in-app à la hiérarchie de vues. Il existe deux manières de le faire : + +#### Intégration de la fonction de rappel du cycle de vie de l’activité (recommandé) + +L’[intégration de la fonction de rappel du cycle de vie de l’activité][59] s’occupe automatiquement de l’enregistrement des messages in-app. Aucune intégration supplémentaire n’est requise. Il s’agit de l’intégration recommandée pour la gestion des messages in-app. + +#### Enregistrement manuel des messages in-app + +{% alert warning %} +Si vous avez fait l’intégration du cycle de vie de l’activité, vous *ne devriez pas* réaliser une intégration manuelle des messages in-app. +{% endalert %} + +Tout d’abord, dans votre [`Application.onCreate()`][82], appelez [`ensureSubscribedToInAppMessageEvents()`][69] : + +{% tabs %} +{% tab JAVA %} + +```java +BrazeInAppMessageManager.getInstance().ensureSubscribedToInAppMessageEvents(context); +``` + +{% endtab %} +{% tab KOTLIN %} + +```kotlin +BrazeInAppMessageManager.getInstance().ensureSubscribedToInAppMessageEvents(context) +``` + +{% endtab %} +{% endtabs %} + +Ensuite, dans chaque activité où les messages in-app peuvent être montrés, [`registerInAppMessageManager()`][80] doit être appelé dans le `onResume()` de cette activité : + +{% tabs %} +{% tab JAVA %} + +```java +@Override +public void onResume() { + super.onResume(); + // Registers the BrazeInAppMessageManager for the current Activity. This Activity will now listen for + // in-app messages from Braze. + BrazeInAppMessageManager.getInstance().registerInAppMessageManager(activity); +} +``` + +{% endtab %} +{% tab KOTLIN %} + +```kotlin +public override fun onResume() { + super.onResume() + // Registers the BrazeInAppMessageManager for the current Activity. This Activity will now listen for + // in-app messages from Braze. + BrazeInAppMessageManager.getInstance().registerInAppMessageManager(this) +} +``` + +{% endtab %} +{% endtabs %} + +Enfin, dans chaque activité où [`registerInAppMessageManager()`][80] a été appelé, [`unregisterInAppMessageManager()`][81] doit être appelé dans le `onPause()` de cette activité : + +{% tabs %} +{% tab JAVA %} + +```java +@Override +public void onPause() { + super.onPause(); + // Unregisters the BrazeInAppMessageManager for the current Activity. + BrazeInAppMessageManager.getInstance().unregisterInAppMessageManager(activity); +} +``` + +{% endtab %} +{% tab KOTLIN %} + +```kotlin +public override fun onPause() { + super.onPause() + // Unregisters the BrazeInAppMessageManager. + BrazeInAppMessageManager.getInstance().unregisterInAppMessageManager(this) +} +``` + +{% endtab %} +{% endtabs %} + +### Étape 2 : Liste noire du gestionnaire de messages in-app (facultatif) + +Dans votre intégration, vous pouvez exiger que certaines activités de votre application n’affichent pas de messages in-app. L’[intégration de fonction de rappel du cycle de vie de l’activité][59] permet de le faire facilement. + +L’exemple de code suivant ajoute deux activités à la liste noire d’enregistrement de messages in-app, `SplashActivity` et `SettingsActivity` : + +{% tabs %} +{% tab JAVA %} + +```java +public class MyApplication extends Application { + @Override + public void onCreate() { + super.onCreate(); + Set inAppMessageBlacklist = new HashSet<>(); + inAppMessageBlacklist.add(SplashActivity.class); + inAppMessageBlacklist.add(SettingsActivity.class); + registerActivityLifecycleCallbacks(new BrazeActivityLifecycleCallbackListener(inAppMessageBlacklist)); + } +} +``` + +{% endtab %} +{% tab KOTLIN %} + +```kotlin +class MyApplication : Application() { + override fun onCreate() { + super.onCreate() + val inAppMessageBlacklist = HashSet>() + inAppMessageBlacklist.add(SplashActivity::class.java) + inAppMessageBlacklist.add(SettingsActivity::class.java) + registerActivityLifecycleCallbacks(BrazeActivityLifecycleCallbackListener(inAppMessageBlacklist)) + } +} +``` + +{% endtab %} +{% endtabs %} + + +[34]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-braze-in-app-message-manager/index.html +[69]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-braze-in-app-message-manager/ensure-subscribed-to-in-app-message-events.html +[80]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-braze-in-app-message-manager/register-in-app-message-manager.html +[81]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-braze-in-app-message-manager/unregister-in-app-message-manager.html +[82]: https://developer.android.com/reference/android/app/Application.html#onCreate() +[83]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-braze-activity-lifecycle-callback-listener/index.html +[59]: {{site.baseurl}}/developer_guide/platform_integration_guides/android/initial_sdk_setup/android_sdk_integration/#step-4-tracking-user-sessions-in-android +[3]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-i-in-app-message/index.html +[8]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-i-in-app-message-immersive/index.html +[12]: {{site.baseurl}}/developer_guide/platform_integration_guides/android/in-app_messaging/customization/custom_listeners/#custom-view-factory +[15]: https://fontawesome.com/icons?d=gallery&p=2 +[27]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-in-app-message-base/index.html +[28]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-in-app-message-immersive-base/index.html +[50]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-message-button/index.html +[51]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-in-app-message-html-full/index.html +[52]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-i-in-app-message-html/index.html +[84]: {{site.baseurl}}/user_guide/message_building_by_channel/push/best_practices/ +[90]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-in-app-message-modal/index.html +[91]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-in-app-message-slideup/index.html +[92]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-in-app-message-html-full/index.html +[93]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.inappmessage/-in-app-message-full/index.html diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/initial_sdk_setup/additional_customization_and_configuration.md b/_lang/fr/_developer_guide/platform_integration_guides/android/initial_sdk_setup/additional_customization_and_configuration.md index 854a9f76f83..2be3e75a7ea 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/initial_sdk_setup/additional_customization_and_configuration.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/initial_sdk_setup/additional_customization_and_configuration.md @@ -106,4 +106,4 @@ Consultez la documentation de [configuration de temps d’exécution][69] pour d [50]: https://developer.android.com/studio/build/shrink-code [54]: https://developer.android.com/reference/android/util/Log.html [69]: {{site.baseurl}}/developer_guide/platform_integration_guides/android/advanced_use_cases/runtime_configuration/ -[70]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.support/-braze-logger/log-level.html +[70]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.support/-braze-logger/log-level.html diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/initial_sdk_setup/android_sdk_integration.md b/_lang/fr/_developer_guide/platform_integration_guides/android/initial_sdk_setup/android_sdk_integration.md index b8341277f62..2a4f96f6706 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/initial_sdk_setup/android_sdk_integration.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/initial_sdk_setup/android_sdk_integration.md @@ -1,171 +1,171 @@ ---- -nav_title: Intégration SDK Android -article_title: Intégration SDK Android pour Android et FireOS -page_order: 0 -platform: - - Android - - FireOS -description: "Cet article de référence explique comment intégrer le SDK Android à votre application Android ou FireOS." -search_rank: 4 ---- - -# Intégration SDK Android - -L’installation du SDK Braze vous fournira des fonctionnalités d’analytique de base ainsi que des messages in-app opérationnels avec lesquels vous pouvez engager vos utilisateurs. - -{% alert note %} -Pour des performances optimales sur Android 12, nous recommandons de mettre à niveau vers le [SDK Braze pour Android v13.1.2 et ultérieurs](https://github.com/Appboy/appboy-android-sdk/blob/master/CHANGELOG.md#1312) dès que possible. Pour plus d’informations, consultez notre [Guide de mise à niveau vers Android 12]({{site.baseurl}}/developer_guide/platform_integration_guides/android/android_12/). -{% endalert %} - -## Étape 1 : Intégrez la bibliothèque Braze - -Le SDK Braze pour Android peut être intégré en option sans composants d’IU. Cependant, les cartes de contenu, et les messages in-app seront inutilisables, sauf si vous transmettez les données personnalisées à une IU que vous avez entièrement conçue. De plus, les notifications push ne fonctionneront pas parce que notre code de gestion de notification push se trouve dans la bibliothèque d’IU. Il est important de noter que ces éléments d’IU sont ouverts et entièrement personnalisables. Nous recommandons vivement l’intégration de ces fonctions. Reportez-vous à la documentation sur les [cartes de contenu]({{site.baseurl}}/user_guide/message_building_by_channel/content_cards/about/#advantages-of-using-content-cards) et les [messages in-app]({{site.baseurl}}/user_guide/message_building_by_channel/in-app_messages/about/) pour voir une liste des avantages à utiliser chaque canal ou outil. - -### Intégration de base - -Pour accéder aux fonctions de messagerie de Braze, vous devez intégrer la bibliothèque d’IU. Consultez les instructions suivantes d’Android Studio pour l’intégration de la bibliothèque d’IU en fonction de votre EDI : - -#### Ajouter notre référentiel - -Dans votre projet de premier niveau `build.gradle`, ajoutez les éléments suivants comme référentiels dans **allprojects > repositories**. Par exemple : - -```gradle -allprojects { - repositories { - google() - maven { url "https://appboy.github.io/appboy-android-sdk/sdk" } - } -} -``` - -{% alert note %} -Le kit SDK Braze pour Android utilise les dépendances Jetpack d’AndroidX à partir de la version 10.0.0 du SDK. -{% endalert %} - -Vous pouvez également trouver directement les fichiers AAR d’artefact sur notre [référentiel Maven][71]. - -#### Ajouter une dépendance Braze - -Ajouter la dépendance `android-sdk-ui` au `build.gradle` de votre application . - -Si vous utilisez une fonctionnalité de localisation ou Braze Geofence, incluez également le `android-sdk-location` dans le `build.gradle` de votre appli. - -{% alert important %} -Si vous utilisez un Android SDK non natif (Flutter, Cordova, Unity, etc.), ce SDK a déjà la `android-sdk-ui` dépendance pour la version correcte de l’Android SDK. Ne mettez pas à jour la version manuellement. -{% endalert %} - -```gradle -dependencies { - implementation "com.braze:android-sdk-ui:+" - implementation "com.braze:android-sdk-location:+" -} -``` - -L’exemple suivant montre où placer la ligne de dépendance dans votre `build.gradle`. Remarquez que la version utilisée dans l’exemple est ancienne. Consultez les [versions du SDK Braze pour Android][60] pour trouver la version la plus récente. - -![Studio Android affichant le « build.gradle ». Dans cette capture d’écran, le code de dépendance est ajouté au bas du fichier.][32] - -#### Synchronisation Gradle - -Assurez-vous d’effectuer une synchronisation Gradle pour construire votre projet et d’incorporer les [ajouts de dépendance](#add-braze-dependency).. - -![Studio Android affichant une bannière et un bouton en haut de l’application qui dit : « Les fichiers Gradle ont changé depuis la dernière synchronisation du projet. Une synchronisation de projet peut être nécessaire pour que l’EDI fonctionne correctement. Sync Now.»][38] - -## Étape 2 : Configurer le SDK Braze en braze.xml - -{% alert note %} -À partir de décembre 2019, les endpoints personnalisés ne sont plus fournis. Si vous disposez d’un endpoint personnalisé préexistant, vous pouvez continuer à l’utiliser. Pour plus de détails, consultez notre liste d'endpoints disponibles. -{% endalert %} - -Maintenant que les bibliothèques ont été intégrées, vous devez créer un fichier `braze.xml` dans le dossier `res/values` de votre projet. Si vous êtes sur un cluster de données spécifique ou disposez d’un endpoint personnalisé préexistant, vous devez également spécifier l’endpoint dans votre fichier `braze.xml`. - -Le contenu de ce fichier devrait ressembler à l’extrait de code suivant : Assurez-vous de remplacer `YOUR_APP_IDENTIFIER_API_KEY` avec l’identifiant trouvé dans la page **Manage Settings** du tableau de bord de Braze. Pour connaître votre cluster ou votre endpoint spécifique, demandez à votre gestionnaire du succès des clients ou ouvrez un [ticket de support][support]. - -```xml - - -YOUR_APP_IDENTIFIER_API_KEY -YOUR_CUSTOM_ENDPOINT_OR_CLUSTER - -``` - -## Étape 3 : Ajouter les autorisations requises au AndroidManifest.xml -Maintenant que vous avez ajouté votre clé API, vous devez ajouter les autorisations suivantes à votre `AndroidManifest.xml` : - -```xml - - -``` - -> Avec la sortie d’Android M, Android est passé d’un modèle d’autorisation de temps d’installation à un de temps d’exécution. Cependant, ces deux autorisations sont normales et accordées automatiquement si elles sont répertoriées dans le manifeste de l’application. Pour plus d’informations, consultez la [documentation Android sur les autorisations][46]. - -## Étape 4 : Suivre les sessions utilisateur dans Android - -### Intégration de la fonction de rappel du cycle de vie de l’activité - -Les appels vers `openSession()`, `closeSession()`, [`ensureSubscribedToInAppMessageEvents()`][64] et l’enregistrement `InAppMessageManager` sont gérés automatiquement de manière optionnelle. - -#### Enregistrer les fonctions de rappel du cycle de vie des activités - -Ajoutez le code suivant à la méthode `onCreate()` de votre classe `Application` : - -{% tabs %} -{% tab JAVA %} - -```java -public class MyApplication extends Application { - @Override - public void onCreate() { - super.onCreate(); - registerActivityLifecycleCallbacks(new BrazeActivityLifecycleCallbackListener(sessionHandlingEnabled, inAppMessagingRegistrationEnabled)); - } -} -``` - -{% endtab %} -{% tab KOTLIN %} - -```kotlin -class MyApplication : Application() { - override fun onCreate() { - super.onCreate() - registerActivityLifecycleCallbacks(BrazeActivityLifecycleCallbackListener(sessionHandlingEnabled, inAppMessagingRegistrationEnabled)) - } -} -``` - -{% endtab %} -{% endtabs %} - -Le premier argument demande à l’écouteur de gérer les appels `openSession()` et `closeSession()`. -Le deuxième argument demande à l’écouteur de gérer les appels `registerInAppMessageManager()` et `unregisterInAppMessageManager()`. - -Consultez notre [KDoc][63] pour plus d’informations. Notez que toute intégration manuelle de session non standard n’est pas entièrement prise en charge. - -## Étape 5 : Activer le suivi de localisation - -Si vous désirez activer le recueil de positions Braze, mettez à jour votre fichier `braze.xml` pour inclure `com_braze_enable_location_collection` et assurez-vous que sa valeur est définie sur `true` : - -```xml -true -``` - -{% alert important %} -À partir de la version 3.6.0 du SDK Braze pour Android, le recueil de position Braze est désactivé par défaut. -{% endalert %} - -## Intégration SDK terminée - -Braze devrait maintenant pouvoir collecter des [données spécifiées depuis votre application]({{site.baseurl}}/user_guide/data_and_analytics/user_data_collection/) et votre intégration de base devrait être terminée. - -Consultez les articles suivants pour activer le [suivi des événements personnalisés]({{site.baseurl}}/developer_guide/platform_integration_guides/android/analytics/tracking_custom_events/), la [messagerie de notification push]({{site.baseurl}}/developer_guide/platform_integration_guides/android/push_notifications/android/integration/standard_integration/), les [cartes de contenu]({{site.baseurl}}/developer_guide/platform_integration_guides/android/content_cards/integration/) et la suite complète de fonctionnalités Braze. - -[2]: {{site.baseurl}}/user_guide/introduction/ -[32]: {% image_buster /assets/img_archive/androidstudio2.png %} -[38]: {% image_buster /assets/img_archive/androidstudio3.png %} -[46]: https://developer.android.com/training/permissions/index.html -[60]: https://github.com/Appboy/appboy-android-sdk/blob/master/CHANGELOG.md -[63]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-braze-activity-lifecycle-callback-listener/index.html -[64]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-braze-in-app-message-manager/ensure-subscribed-to-in-app-message-events.html -[support]: {{site.baseurl}}/braze_support/ -[71]: https://appboy.github.io/appboy-android-sdk/sdk/com/braze +--- +nav_title: Intégration SDK Android +article_title: Intégration SDK Android pour Android et FireOS +page_order: 0 +platform: + - Android + - FireOS +description: "Cet article de référence explique comment intégrer le SDK Android à votre application Android ou FireOS." +search_rank: 4 +--- + +# Intégration SDK Android + +L’installation du SDK Braze vous fournira des fonctionnalités d’analytique de base ainsi que des messages in-app opérationnels avec lesquels vous pouvez engager vos utilisateurs. + +{% alert note %} +Pour des performances optimales sur Android 12, nous recommandons de mettre à niveau vers le [SDK Braze pour Android v13.1.2 et ultérieurs](https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md#1312) dès que possible. Pour plus d’informations, consultez notre [Guide de mise à niveau vers Android 12]({{site.baseurl}}/developer_guide/platform_integration_guides/android/android_12/). +{% endalert %} + +## Étape 1 : Intégrez la bibliothèque Braze + +Le SDK Braze pour Android peut être intégré en option sans composants d’IU. Cependant, les cartes de contenu et les messages in-app seront rendus inutilisables, sauf si vous transmettez les données personnalisées à une IU qui est uniquement de votre conception. De plus, les notifications push ne fonctionneront pas parce que notre code de gestion de notification push se trouve dans la bibliothèque d’IU. Il est important de noter que ces éléments d’IU sont ouverts et entièrement personnalisables. Nous recommandons vivement l’intégration de ces fonctions. Reportez-vous à la documentation sur les [cartes de contenu]({{site.baseurl}}/user_guide/message_building_by_channel/content_cards/about/#advantages-of-using-content-cards) et les [messages in-app]({{site.baseurl}}/user_guide/message_building_by_channel/in-app_messages/about/) pour obtenir une liste des avantages à utiliser chaque canal ou outil. + +### Intégration de base + +Pour accéder aux fonctions de messagerie de Braze, vous devez intégrer la bibliothèque d’IU. Consultez les instructions suivantes d’Android Studio pour l’intégration de la bibliothèque d’IU en fonction de votre EDI : + +#### Ajouter notre référentiel + +Dans votre projet de premier niveau `build.gradle`, ajoutez les éléments suivants comme référentiels dans **allprojects > repositories**. Par exemple : + +```gradle +allprojects { + repositories { + google() + maven { url "https://braze-inc.github.io/braze-android-sdk/sdk" } + } +} +``` + +{% alert note %} +Le kit SDK Braze pour Android utilise les dépendances Jetpack d’AndroidX à partir de la version 10.0.0 du SDK. +{% endalert %} + +Vous pouvez également trouver directement les fichiers AAR d’artefact sur notre [référentiel Maven][71]. + +#### Ajouter une dépendance Braze + +Ajouter la dépendance `android-sdk-ui` au `build.gradle` de votre application. + +Si vous utilisez un emplacement ou la fonctionnalité Braze Geofence, incluez également `android-sdk-location` dans le `build.gradle` de votre application. + +{% alert important %} +Si vous utilisez un SDK Android non natif (p. ex, Flutter, Cordova, Unity, etc.), ce SDK dispose déjà de la dépendance `android-sdk-ui` pour la version correcte du SDK Android. Ne mettez pas à jour la version manuellement. +{% endalert %} + +```gradle +dependencies { + implementation "com.braze:android-sdk-ui:+" + implementation "com.braze:android-sdk-location:+" +} +``` + +L’exemple suivant montre où placer la ligne de dépendance dans votre `build.gradle`. Remarquez que la version utilisée dans l’exemple est ancienne. Consultez les [versions du SDK Braze pour Android][60] pour trouver la version la plus récente. + +![Studio Android affichant le « build.gradle ». Dans cette capture d’écran, le code de dépendance est ajouté au bas du fichier.][32] + +#### Effectuer la synchronisation de Gradle + +Assurez-vous d’effectuer une synchronisation Gradle pour construire votre projet et incorporer les [ajouts de dépendance](#add-braze-dependency). + +![Studio Android affichant une bannière et un bouton en haut de l’application qui dit : « Les fichiers Gradle ont changé depuis la dernière synchronisation du projet. Une synchronisation de projet peut être nécessaire pour que l’EDI fonctionne correctement. Synchroniser maintenant. »][38] + +## Étape 2 : Configurer le SDK Braze en braze.xml + +{% alert note %} +À partir de décembre 2019, les endpoints personnalisés ne sont plus fournis. Si vous disposez d’un endpoint personnalisé préexistant, vous pouvez continuer à l’utiliser. Pour plus de détails, consultez notre liste d’endpoints disponibles. +{% endalert %} + +Maintenant que les bibliothèques ont été intégrées, vous devez créer un fichier `braze.xml` dans le dossier `res/values` de votre projet. Si vous êtes sur un cluster de données spécifique ou disposez d’un endpoint personnalisé préexistant, vous devez également spécifier l’endpoint dans votre fichier `braze.xml`. + +Le contenu de ce fichier devrait ressembler à l’extrait de code suivant : Assurez-vous de remplacer `YOUR_APP_IDENTIFIER_API_KEY` avec l’identifiant trouvé dans la page **Gérer les paramètres** du tableau de bord de Braze. Pour connaître votre cluster ou votre endpoint spécifique, demandez à votre gestionnaire du succès des clients ou ouvrez un [ticket d’assistance][support]. + +```xml + + +YOUR_APP_IDENTIFIER_API_KEY +YOUR_CUSTOM_ENDPOINT_OR_CLUSTER + +``` + +## Étape 3 : Ajouter les autorisations requises au AndroidManifest.xml +Maintenant que vous avez ajouté votre clé API, vous devez ajouter les autorisations suivantes à votre `AndroidManifest.xml` : + +```xml + + +``` + +> Avec la sortie d’Android M, Android est passé d’un modèle d’autorisation de temps d’installation à un de temps d’exécution. Cependant, ces deux autorisations sont normales et accordées automatiquement si elles sont répertoriées dans le manifeste de l’application. Pour plus d’informations, consultez la [documentation d’autorisation][46] d’Android. + +## Étape 4 : Suivre les sessions utilisateur dans Android + +### Intégration de la fonction de rappel du cycle de vie de l’activité + +Les appels vers `openSession()`, `closeSession()`, [`ensureSubscribedToInAppMessageEvents()`][64] et l’enregistrement `InAppMessageManager` sont gérés automatiquement de manière optionnelle. + +#### Enregistrer les fonctions de rappel du cycle de vie des activités + +Ajoutez le code suivant à la méthode `onCreate()` de votre classe `Application` : + +{% tabs %} +{% tab JAVA %} + +```java +public class MyApplication extends Application { + @Override + public void onCreate() { + super.onCreate(); + registerActivityLifecycleCallbacks(new BrazeActivityLifecycleCallbackListener(sessionHandlingEnabled, inAppMessagingRegistrationEnabled)); + } +} +``` + +{% endtab %} +{% tab KOTLIN %} + +```kotlin +class MyApplication : Application() { + override fun onCreate() { + super.onCreate() + registerActivityLifecycleCallbacks(BrazeActivityLifecycleCallbackListener(sessionHandlingEnabled, inAppMessagingRegistrationEnabled)) + } +} +``` + +{% endtab %} +{% endtabs %} + +Le premier argument demande à l’écouteur de gérer les appels `openSession()` et `closeSession()`. +Le deuxième argument demande à l’écouteur de gérer les appels `registerInAppMessageManager()` et `unregisterInAppMessageManager()`. + +Consultez notre [KDoc][63] pour plus d’informations. Notez que toute intégration manuelle de session non standard n’est pas entièrement prise en charge. + +## Étape 5 : Activer le suivi de localisation + +Si vous désirez activer le recueil de positions Braze, mettez à jour votre fichier `braze.xml` pour inclure `com_braze_enable_location_collection` et assurez-vous que sa valeur est définie sur `true` : + +```xml +true +``` + +{% alert important %} +À partir de la version 3.6.0 du SDK Braze pour Android, le recueil de position Braze est désactivé par défaut. +{% endalert %} + +## Intégration SDK terminée + +Braze devrait maintenant pouvoir collecter des [données spécifiées depuis votre application]({{site.baseurl}}/user_guide/data_and_analytics/user_data_collection/) et votre intégration de base devrait être terminée. + +Consultez les articles suivants pour activer le [suivi des événements personnalisés]({{site.baseurl}}/developer_guide/platform_integration_guides/android/analytics/tracking_custom_events/), la [messagerie de notification push]({{site.baseurl}}/developer_guide/platform_integration_guides/android/push_notifications/android/integration/standard_integration/), les [cartes de contenu]({{site.baseurl}}/developer_guide/platform_integration_guides/android/content_cards/integration/) et la suite complète de fonctionnalités Braze. + +[2]: {{site.baseurl}}/user_guide/introduction/ +[32]: {% image_buster /assets/img_archive/androidstudio2.png %} +[38]: {% image_buster /assets/img_archive/androidstudio3.png %} +[46]: https://developer.android.com/training/permissions/index.html +[60]: https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md +[63]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-braze-activity-lifecycle-callback-listener/index.html +[64]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.ui.inappmessage/-braze-in-app-message-manager/ensure-subscribed-to-in-app-message-events.html +[support]: {{site.baseurl}}/braze_support/ +[71]: https://braze-inc.github.io/braze-android-sdk/sdk/com/braze diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/initial_sdk_setup/optional_gaid_collection.md b/_lang/fr/_developer_guide/platform_integration_guides/android/initial_sdk_setup/optional_gaid_collection.md index d2fe1bd0d7d..dfd9bab868e 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/initial_sdk_setup/optional_gaid_collection.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/initial_sdk_setup/optional_gaid_collection.md @@ -4,7 +4,7 @@ article_title: ID publicitaire Google en option pour Android page_order: 9 platform: - Android -description: "Cet article couvre les ID publicitaires Google et comment transmettre ces informations publicitaires à Braze pour votre application Android ou FireOS." +description: "Cet article de référence couvre les ID publicitaires Google et comment transmettre ces informations publicitaires à Braze pour votre application Android ou FireOS." --- @@ -55,5 +55,5 @@ Thread(Runnable { {% endtabs %} -[1]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze/set-google-advertising-id.html +[1]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze/set-google-advertising-id.html [2]: https://support.google.com/googleplay/android-developer/answer/6048248/advertising-id?hl=en diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/news_feed/customization/badges.md b/_lang/fr/_developer_guide/platform_integration_guides/android/news_feed/customization/badges.md index 65fc770f351..8a0c20672bf 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/news_feed/customization/badges.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/news_feed/customization/badges.md @@ -5,7 +5,7 @@ page_order: 3.2 platform: - Android - FireOS -description: "Cet article de référence montre comment ajouter des badges de fil d'actualité à votre application Android ou FireOS." +description: "Cet article de référence montre comment ajouter des badges de fil d’actualité et demander le nombre de cartes de fil d’actualité non lues à votre application Android ou FireOS." channel: - fil d’actualité @@ -27,4 +27,4 @@ getUnreadCardCount() Consultez notre [KDoc][17] pour plus d’informations. -[17]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.appboy.events/-feed-updated-event/get-unread-card-count.html +[17]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.events/-feed-updated-event/get-unread-card-count.html diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/news_feed/customization/click_listener.md b/_lang/fr/_developer_guide/platform_integration_guides/android/news_feed/customization/click_listener.md index 864f97a501b..2106b4e9c87 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/news_feed/customization/click_listener.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/news_feed/customization/click_listener.md @@ -14,7 +14,7 @@ channel: # Gestion manuelle des clics {% alert note %} -Le Fil d’actualité est obsolète. Braze recommande aux clients qui utilisent notre outil de fil d’actualités de passer à notre canal de communication de cartes de contenu - il est plus flexible, plus personnalisable et plus fiable. Consultez le [guide de migration]({{site.baseurl}}/user_guide/message_building_by_channel/content_cards/migrating_from_news_feed/) pour en savoir plus. +Le Fil d’actualité est obsolète. Braze recommande aux clients qui utilisent notre outil de fil d’actualités de passer à notre canal de communication de cartes de contenu : il est plus flexible, plus personnalisable et plus fiable. Consultez le [guide de migration]({{site.baseurl}}/user_guide/message_building_by_channel/content_cards/migrating_from_news_feed/) pour en savoir plus. {% endalert %} Vous pouvez gérer les clics de fil d'actualité manuellement en définissant un écouteur de clic de fil d'actualité personnalisé. Cela permet des cas d’usage tels que l’utilisation sélective du navigateur Web natif pour ouvrir des liens Web. @@ -27,4 +27,4 @@ Créez une classe qui implémente [`IFeedClickActionListener`][37]. Implémentez Une fois que votre `IFeedClickActionListener` est créé, appelez `BrazeFeedManager.getInstance().setFeedCardClickActionListener()` pour demander à `BrazeFeedManager` d’utiliser votre `IFeedClickActionListener` personnalisé. -[37]: https://github.com/Appboy/appboy-android-sdk/blob/master/android-sdk-ui/src/main/java/com/braze/ui/feed/listeners/IFeedClickActionListener.java +[37]: https://github.com/braze-inc/braze-android-sdk/blob/master/android-sdk-ui/src/main/java/com/braze/ui/feed/listeners/IFeedClickActionListener.java diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/news_feed/integration.md b/_lang/fr/_developer_guide/platform_integration_guides/android/news_feed/integration.md index 66e62216203..27a3590a26f 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/news_feed/integration.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/news_feed/integration.md @@ -144,16 +144,16 @@ Pour enregistrer un affichage du fil, appelez [`Braze.logFeedDisplayed()`][6]. Pour enregistrer une impression ou cliquer sur une carte, appelez [`Card.logClick()`][7] et [`Card.logImpression()`][8] respectivement. -[36]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/get-extras.html +[36]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/get-extras.html [2]: http://developer.android.com/guide/components/fragments.html [3]: https://developer.android.com/guide/fragments#Adding "Android Documentation: Fragments" [4]: {{site.baseurl}}/developer_guide/platform_integration_guides/android/analytics/tracking_sessions/ -[6]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze/log-feed-displayed.html -[7]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/log-click.html -[8]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/log-impression.html +[6]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze/log-feed-displayed.html +[7]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/log-click.html +[8]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/log-impression.html [9]: {{site.baseurl}}/developer_guide/platform_integration_guides/android/news_feed/card_types/#card-types -[29]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/index.html -[30]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-banner-image-card/index.html -[31]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-captioned-image-card/index.html -[32]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-text-announcement-card/index.html -[33]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-short-news-card/index.html +[29]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-card/index.html +[30]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-banner-image-card/index.html +[31]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-captioned-image-card/index.html +[32]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-text-announcement-card/index.html +[33]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.cards/-short-news-card/index.html diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/news_feed/refreshing_the_feed.md b/_lang/fr/_developer_guide/platform_integration_guides/android/news_feed/refreshing_the_feed.md index d9689e58be0..72c56f1fb7f 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/news_feed/refreshing_the_feed.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/news_feed/refreshing_the_feed.md @@ -26,4 +26,4 @@ Braze.requestFeedRefresh() Consultez notre [KDoc][16] pour plus d’informations. -[16]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze/request-feed-refresh.html +[16]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze/request-feed-refresh.html diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/push_notifications/android/customization/custom_event_callback.md b/_lang/fr/_developer_guide/platform_integration_guides/android/push_notifications/android/customization/custom_event_callback.md index 6bbb59efdf4..fce70a81885 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/push_notifications/android/customization/custom_event_callback.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/push_notifications/android/customization/custom_event_callback.md @@ -83,4 +83,4 @@ Braze.getInstance(context).subscribeToPushNotificationEvents { event -> Avec les boutons d’action de notification, les intentions `BRAZE_PUSH_INTENT_NOTIFICATION_OPENED` se déclenchent lorsque les boutons avec les actions `opens app` ou `deep link` sont cliqués. La gestion des liens profonds et des compléments reste la même. Les boutons avec des actions `close` ne déclenchent pas les intentions `BRAZE_PUSH_INTENT_NOTIFICATION_OPENED` et rejettent automatiquement la notification. {% endalert %} -[1]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze/subscribe-to-push-notification-events.html +[1]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze/subscribe-to-push-notification-events.html diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/push_notifications/android/integration/standard_integration.md b/_lang/fr/_developer_guide/platform_integration_guides/android/push_notifications/android/integration/standard_integration.md index d5ad2fe374d..794e45eb3c8 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/push_notifications/android/integration/standard_integration.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/push_notifications/android/integration/standard_integration.md @@ -17,11 +17,11 @@ Une notification push est une alerte hors application qui apparaît sur l’écr Braze envoie des notifications push aux appareils Android en utilisant [Firebase Cloud Messaging (FCM)][45]. -Découvrez notre [documentation d’aide][8] pour les meilleures pratiques de notification push. +Découvrez notre [documentation d’aide][8] pour les bonnes pratiques de notification push. ## S’enregistrer pour la notification push -Utilisez [Firebase Cloud Messaging](https://firebase.google.com/docs/cloud-messaging/) (FCM) pour vous enregistrer pour les notifications push. Pour un exemple complet d’utilisation de Firebase avec le SDK Braze pour Android, consultez notre [exemple d’application de notification push Firebase](https://github.com/Appboy/appboy-android-sdk/tree/master/samples/firebase-push). +Utilisez [Firebase Cloud Messaging](https://firebase.google.com/docs/cloud-messaging/) pour vous enregistrer pour les notifications push. Pour un exemple complet d’utilisation de Firebase avec le SDK Braze pour Android, consultez notre [exemple d’application de notification push Firebase](https://github.com/braze-inc/braze-android-sdk/tree/master/samples/firebase-push). ### Étape 1 : Activer Firebase @@ -36,12 +36,12 @@ implementation "com.google.firebase:firebase-messaging:${FIREBASE_PUSH_MESSAGING ### Étape 2 : Configurer l’enregistrement du jeton -Les notifications push de Braze ne fonctionnent pas tant qu’un jeton Firebase Cloud Messaging (jeton d’enregistrement FCM) n’est pas enregistré. Les jetons d’enregistrement FCM peuvent être enregistrés par le SDK Braze **automatiquement** (recommandé) ou **manuellement**. Les jetons peuvent être enregistrés manuellement à l’aide de la méthode [`Braze.setRegisteredPushToken()`](https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-braze/registered-push-token.html). +Les notifications push de Braze ne fonctionnent pas tant qu’un jeton Firebase Cloud Messaging (jeton d’enregistrement FCM) n’est pas enregistré. Les jetons d’enregistrement FCM peuvent être enregistrés par le SDK Braze **automatiquement** (recommandé) ou **manuellement**. Les jetons peuvent être enregistrés manuellement à l’aide de la méthode [`Braze.setRegisteredPushToken()`](https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-braze/registered-push-token.html). Assurez-vous d’utiliser votre ID d’expéditeur Firebase. Il s’agit d’une valeur numérique unique créée lorsque vous créez votre projet Firebase, disponible dans l’onglet **Cloud Messaging (Messagerie cloud)** de la console Firebase, dans le panneau **Settings (Paramètres)**. L’ID d’expéditeur sert à identifier chaque expéditeur qui peut envoyer des messages à l’application client. {% tabs local %} -{% tab Enregistrement automatique (recommandé)) %} +{% tab Automatic registration (recommended) %} Pour enregistrer automatiquement les jetons d’enregistrement FCM, activez l’enregistrement automatique Firebase et définissez un ID d’expéditeur Firebase Cloud Messaging. @@ -80,9 +80,9 @@ Braze.configure(this, brazeConfig) {% endsubtabs %} {% endtab %} -{% tab Enregistrement manuel %} +{% tab Manual registration %} -Pour enregistrer manuellement vos jetons, nous vous recommandons d’appeler [`Braze.setRegisteredPushToken()`](https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-braze/registered-push-token.html) depuis la méthode [`onCreate()`](https://developer.android.com/reference/android/app/Application.html#onCreate) de votre application pour garantir que les jetons de notification push sont livrés de manière fiable à Braze. +Pour enregistrer manuellement vos jetons, nous vous recommandons d’appeler [`Braze.setRegisteredPushToken()`](https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-braze/registered-push-token.html) depuis la méthode [`onCreate()`](https://developer.android.com/reference/android/app/Application.html#onCreate()) de votre application pour garantir que les jetons de notification push sont livrés de manière fiable à Braze. {% subtabs local %} {% subtab JAVA %} @@ -139,7 +139,11 @@ Si vous migrez de l’utilisation de GCM à celle de Firebase avec Braze, consul ### Étape 4 : Définir vos informations d’identification Firebase -Tout d’abord, vous devez localiser votre clé de serveur Firebase et l’ID d’expéditeur dans la [Developer Console de Firebase][58]. Sélectionnez votre projet Firebase et allez à **Settings > Cloud Messaging (Paramètres > Messagerie cloud)** et copiez la clé serveur et l’ID de l’expéditeur : +{% alert warning %} +La clé de serveur API Cloud Messaging **Legacy** est requise pour configurer les notifications push Android dans Braze. L’utilisation des identifiants de l’API Firebase Cloud Messaging (V1) ne vous permettra pas d’envoyer des notifications push. +{% endalert %} + +Tout d’abord, vous devez localiser votre clé de serveur Cloud Messaging et l’ID d’expéditeur dans la [Developer Console de Firebase][58]. Sélectionnez votre projet Firebase et allez à **Settings > Cloud Messaging (Paramètres > Messagerie cloud)** et copiez la **clé serveur de l’API Cloud Messaging (Legacy)** et l’**ID de l’expéditeur** : ![La plateforme Firebase sous « Settings » (Paramètres), puis « Cloud Messaging » (Messagerie cloud) affiche votre ID de serveur et votre clé de serveur.][80] @@ -148,11 +152,11 @@ Si l’API Cloud Messaging est désactivée, cliquez sur les trois points pour a {% endalert %} ![L’API Cloud Messaging peut être activée en cliquant sur les trois points à droite.][79] -Vous devez saisir votre clé de serveur Firebase et votre ID d’expéditeur dans le tableau de bord de Braze : +Saisissez votre clé serveur de l’API Cloud Messaging (Legacy) et votre ID d’expéditeur dans le tableau de bord de Braze : 1. Sur la page **Settings (Paramètres)** (où se trouvent vos clés API), sélectionnez votre application Android. -2. Saisissez votre clé de serveur Firebase dans le champ **Firebase Cloud Messaging Server Key (Clé du serveur Firebase Cloud Messaging)**, dans la section des paramètres de notification push. -3. Saisissez votre clé d’expéditeur Firebase dans le champ **Firebase Cloud Messaging Sender ID (ID d’expéditeur Firebase Cloud Messaging)**, dans la section des paramètres de notification push. +2. Saisissez votre clé de serveur de l’API Cloud Messaging (Legacy) dans le champ **Firebase Cloud Messaging Server Key (Clé du serveur Firebase Cloud Messaging)**, dans la section des paramètres de notification push. +3. Saisissez votre ID d’expéditeur de l’API Cloud Messaging (Legacy) dans le champ **Firebase Cloud Messaging Sender ID (ID d’expéditeur Firebase Cloud Messaging)**, dans la section des paramètres de notification push. ![][16] @@ -412,15 +416,15 @@ Pour les problèmes liés à l’analytique des notifications push, consultez no #### Tester depuis la ligne de commande -Si vous souhaitez tester des notifications push et in-app à l’aide de la ligne de commande, vous pouvez envoyer une seule notification par le terminal via cURL et l’[API de messagerie][22]. Vous devrez remplacer les champs suivants par les valeurs correctes pour votre cas de test : +Si vous souhaitez tester des notifications push et in-app à l’aide de la ligne de commande, vous pouvez envoyer une seule notification par le terminal via cURL et l’[API d’envoi de messages][22]. Vous devrez remplacer les champs suivants par les valeurs correctes pour votre cas de test : - `YOUR_API_KEY` : disponible sur la **Developer Console** - `YOUR_EXTERNAL_USER_ID` : disponible sur la page **User Profile Search (Recherche de profil utilisateur)** -- `YOUR_KEY1` (optional) -- `YOUR_VALUE1` (optional) +- `YOUR_KEY1` (facultatif) +- `YOUR_VALUE1` (facultatif) ```bash -curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer {{YOUR_API_KEY}}" -d '{ +curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer {YOUR_API_KEY}" -d '{ "external_user_ids":["YOUR_EXTERNAL_USER_ID"], "messages": { "android_push": { @@ -483,7 +487,7 @@ override fun createNotification(brazeNotificationPayload: BrazeNotificationPaylo Vous pouvez renvoyer `null` de votre méthode `createNotification()` personnalisée pour ne pas afficher la notification du tout, utiliser `BrazeNotificationFactory.getInstance().createNotification()` pour obtenir la valeur par défaut de l’objet `notification` de Braze pour ces données et le modifier avant affichage ou générer un objet `notification` complètement séparé à afficher. {% alert note %} -Pour consulter la documentation sur les clés de données de la notification push Braze, reportez-vous au [SDK Android](https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-constants/index.html). +Pour consulter la documentation sur les clés de données de la notification push Braze, reportez-vous au [SDK Android](https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-constants/index.html). {% endalert %} #### Étape 2 : Définir votre fabrique de notification personnalisée @@ -508,7 +512,7 @@ setCustomBrazeNotificationFactory(brazeNotificationFactory: IBrazeNotificationFa {% endtab %} {% endtabs %} -L’endroit recommandé pour définir votre `IBrazeNotificationFactory` personnalisée est dans la méthode de cycle de vie de l’application `Application.onCreate()` (pas activité). Cela permettra à la fabrique de notification d’être correctement définie chaque fois que le processus de votre application est actif. +L’endroit recommandé pour définir votre `IBrazeNotificationFactory` personnalisée est dans la méthode de cycle de vie de l’application `Application.onCreate()` (pas activité). Cela permettra à la fabrique de notification d’être correctement définie chaque fois que le processus de votre application est actif. {% alert important %} Créer votre propre notification à partir de zéro est un cas d’usage avancé et ne doit être fait qu’après des tests minutieux et avec une compréhension approfondie des fonctionnalités de notification push Braze. Par exemple, vous devez vous assurer que votre notification enregistre correctement les ouvertures de notifications push. @@ -534,7 +538,7 @@ setCustomBrazeNotificationFactory(null) {% endtab %} {% endtabs %} -[6]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze-notification-factory/index.html +[6]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-i-braze-notification-factory/index.html [8]: {{site.baseurl}}/user_guide/message_building_by_channel/push/best_practices/ [16]: {% image_buster /assets/img_archive/fcm_api_insert.png %} "FCMKey" [22]: {{site.baseurl}}/api/endpoints/messaging/ @@ -561,13 +565,13 @@ setCustomBrazeNotificationFactory(null) [66]: {{site.baseurl}}/api/endpoints/messaging/send_messages/post_send_messages/ [67]: https://developer.android.com/reference/android/app/Application.html#onCreate() [68]: {{site.baseurl}}/developer_guide/platform_integration_guides/android/advanced_use_cases/runtime_configuration/#runtime-configuration -[70]: https://github.com/Appboy/appboy-android-sdk/blob/master/samples/firebase-push/src/main/AndroidManifest.xml "AndroidManifest.xml" -[72]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.configuration/-braze-config/-builder/set-default-notification-channel-name.html -[73]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.configuration/-braze-config/-builder/set-default-notification-channel-description.html -[74]: hhttps://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.push/-braze-firebase-messaging-service/handle-braze-remote-message.html +[70]: https://github.com/braze-inc/braze-android-sdk/blob/master/samples/firebase-push/src/main/AndroidManifest.xml "AndroidManifest.xml" +[72]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.configuration/-braze-config/-builder/set-default-notification-channel-name.html +[73]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.configuration/-braze-config/-builder/set-default-notification-channel-description.html +[74]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.push/-braze-firebase-messaging-service/handle-braze-remote-message.html [75]: https://firebase.google.com/docs/reference/android/com/google/firebase/messaging/RemoteMessage [76]: https://developer.android.com/reference/android/app/Application -[77]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.models.push/-braze-notification-payload/index.html -[78]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-constants/index.html +[77]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.models.push/-braze-notification-payload/index.html +[78]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-constants/index.html [79]: {% image_buster /assets/img_archive/cloud_messaging_legacy_disabled.png %} "Firebase Legacy Disabled" [80]: {% image_buster /assets/img_archive/cloud_messaging_legacy_enabled.png %} "Firebase Server Key" diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/push_notifications/fireos/integration.md b/_lang/fr/_developer_guide/platform_integration_guides/android/push_notifications/fireos/integration.md index 1de668abe91..5ea6b54528f 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/push_notifications/fireos/integration.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/push_notifications/fireos/integration.md @@ -117,7 +117,7 @@ Braze ne recommande pas d’utiliser l’enregistrement manuel, mais si vous dev false ``` -Ensuite, utilisez [`Braze.setRegisteredPushToken()`](https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-braze/registered-push-token.html) pour transmettre l’ADM de votre utilisateur `registration_id` à Braze : +Ensuite, utilisez [`Braze.setRegisteredPushToken()`](https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-braze/registered-push-token.html) pour transmettre l’ADM de votre utilisateur `registration_id` à Braze : {% tabs local %} {% tab Java %} diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/sample_apps.md b/_lang/fr/_developer_guide/platform_integration_guides/android/sample_apps.md index aef0771db24..bc209fae167 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/sample_apps.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/sample_apps.md @@ -5,7 +5,7 @@ platform: - Android - FireOS page_order: 10 -description: "Cet article couvre les exemples d’applications Android." +description: "Cet article de référence explique comment utiliser les exemples d’applications Android." --- @@ -36,7 +36,7 @@ Si votre variable `ANDROID_HOME` n’est pas correctement définie ou n’a pas Pour plus d’informations sur le système de développement SDK pour Android, consultez le [référentiel GitHub README][26]. [25]: {{site.baseurl}}/developer_guide/platform_wide/app_group_configuration/#app-group-configuration -[26]: https://github.com/Appboy/appboy-android-sdk/blob/master/README.md +[26]: https://github.com/braze-inc/braze-android-sdk/blob/master/README.md [27]: https://github.com/JakeWharton/sdk-manager-plugin -[3]: https://github.com/appboy/appboy-android-sdk "Appboy Android GitHub Repository" +[3]: https://github.com/braze-inc/braze-android-sdk "Appboy Android GitHub Repository" [34]: {% image_buster /assets/img_archive/hello_appboy.png %} diff --git a/_lang/fr/_developer_guide/platform_integration_guides/android/storage.md b/_lang/fr/_developer_guide/platform_integration_guides/android/storage.md index b033775f9fa..dcb1a720ca4 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/android/storage.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/android/storage.md @@ -44,6 +44,6 @@ Par défaut, tous les champs sont activés. Notez que sans certaines propriété Pour en savoir plus sur les propriétés du dispositif collectées automatiquement, consultez notre [collecte de données du SDK]({{site.baseurl}}/user_guide/data_and_analytics/user_data_collection/sdk_data_collection/). -[1]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.appboy.enums/-device-key/index.html -[2]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.configuration/-braze-config/-builder/set-device-object-allowlist-enabled.html -[3]: https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.configuration/-braze-config/-builder/set-device-object-allowlist.html +[1]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.appboy.enums/-device-key/index.html +[2]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.configuration/-braze-config/-builder/set-device-object-allowlist-enabled.html +[3]: https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.configuration/-braze-config/-builder/set-device-object-allowlist.html diff --git a/_lang/fr/_developer_guide/platform_integration_guides/cordova/cordova_integration.md b/_lang/fr/_developer_guide/platform_integration_guides/cordova/cordova_integration.md index 4d20a426754..e1a5e8488f2 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/cordova/cordova_integration.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/cordova/cordova_integration.md @@ -38,7 +38,7 @@ Si vous utilisez la configuration par défaut du SDK Cordova, vous n’aurez pas ## Envoi de messages in-app -Le SDK Cordova prend en charge par défaut les messages in-app sans modification. Consultez les exemples d’intégration d’[Android]({{site.baseurl}}/developer_guide/platform_integration_guides/android/in-app_messaging/integration/) ou [iOS]({{ site.baseurl }}/developer_guide/platform_integration_guides/ios/in-app_messaging/overview/) pour plus d’informations sur la personnalisation des messages dans l’application. Vous pouvez en outre regarder l’[exemple d’application Cordova](https://github.com/Appboy/appboy-cordova-sdk/blob/master/sample-project/www/js/index.js), [Android](https://github.com/Appboy/appboy-android-sdk) ou [iOS]({{site.baseurl}}/developer_guide/platform_integration_guides/ios/in-app_messaging/overview/) pour des modèles d’implémentation. +Le SDK Cordova prend en charge par défaut les messages in-app sans modification. Consultez les exemples d’intégration d’[Android]({{site.baseurl}}/developer_guide/platform_integration_guides/android/in-app_messaging/integration/) ou [iOS]({{site.baseurl}}/developer_guide/platform_integration_guides/ios/in-app_messaging/overview/) pour plus d’informations sur la personnalisation des messages dans l’application. Vous pouvez en outre regarder l’[exemple d’application Cordova](https://github.com/Appboy/appboy-cordova-sdk/blob/master/sample-project/www/js/index.js), [Android](https://github.com/braze-inc/braze-android-sdk) ou [iOS]({{site.baseurl}}/developer_guide/platform_integration_guides/ios/in-app_messaging/overview/) pour des modèles d’implémentation. ## Analytique diff --git a/_lang/fr/_developer_guide/platform_integration_guides/react_native/inapp_messages.md b/_lang/fr/_developer_guide/platform_integration_guides/react_native/inapp_messages.md index 09ff7afe00b..99377f41ec4 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/react_native/inapp_messages.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/react_native/inapp_messages.md @@ -126,7 +126,7 @@ Suivez ces étapes pour tester un exemple de message in-app. 1. Définissez un utilisateur actif dans l’application React en appelant la méthode `Braze.changeUserId('your-user-id')`. 2. Dirigez-vous vers **Campaigns (Campagnes)** et suivez [ce guide][5] pour créer une nouvelle campagne de messages in-app. -3. Composez votre campagne de messages in-app et rendez-vous sur l’onglet **Test**. Ajoutez les mêmes `user-id` que l’utilisateur de test et cliquez sur **Envoyer le test**. Vous devriez être très prochainement en mesure de lancer un message in-app sur votre périphérique. +3. Composez votre campagne de messages in-app et rendez-vous sur l’onglet **Test**. Ajoutez les mêmes `user-id` que l’utilisateur de test et cliquez sur **Send Test (Envoyer le test)**. Vous devriez être très prochainement en mesure de lancer un message in-app sur votre périphérique. ![Une campagne de messages in-app Braze montrant que vous pouvez ajouter votre propre ID utilisateur en tant que destinataire de test pour essayer votre message in-app.][6] @@ -137,5 +137,5 @@ Un exemple d’implémentation est disponible dans BrazeProject, dans le [SDK Re [5]: {{site.baseurl}}/user_guide/message_building_by_channel/in-app_messages/create/ [6]: {% image_buster /assets/img/react-native/iam-test.png %} "In-App Messaging Test" [7]: https://github.com/braze-inc/braze-react-native-sdk -[8]: https://github.com/Appboy/appboy-android-sdk +[8]: https://github.com/braze-inc/braze-android-sdk [9]: https://github.com/braze-inc/braze-swift-sdk diff --git a/_lang/fr/_developer_guide/platform_integration_guides/react_native/react_sdk_setup.md b/_lang/fr/_developer_guide/platform_integration_guides/react_native/react_sdk_setup.md index 388c375a823..957bb21842e 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/react_native/react_sdk_setup.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/react_native/react_sdk_setup.md @@ -47,7 +47,7 @@ Assurez-vous que votre version du SDK React Native de Braze correspond au minimu expo install @braze/expo-plugin ``` -#### Étape 2.2 : Ajouter le plugin à votre app.json +#### Étape 2.2 : Ajoutez le plug-in à votre app.json Dans votre `app.json`, ajoutez le Plugin Braze Expo. Vous pouvez fournir les options de configuration suivantes : @@ -129,7 +129,7 @@ buildscript { allprojects { repositories { - maven { url "https://appboy.github.io/appboy-android-sdk/sdk" } + maven { url "https://braze-inc.github.io/braze-android-sdk/sdk" } } } ``` @@ -240,15 +240,14 @@ func application( didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil ) -> Bool { // Setup Braze bridge - let jsCodeLocation : URL = RCTBundleURLProvider.sharedSettings().jsBundleURL( - forBundleRoot: "index" - ) + let moduleInitializer = BrazeReactBridge() + let bridge = RCTBridge( + delegate: moduleInitializer, + launchOptions: launchOptions) let rootView = RCTRootView( - bundleURL: jsCodeLocation, - moduleName: "", - initialProperties: nil, - launchOptions: launchOptions - ) + bridge: bridge, + moduleName: "", + initialProperties: nil) self.bridge = rootView.bridge // Configure views in the application @@ -271,8 +270,6 @@ func application( AppDelegate.braze = braze - /* Other configuration */ - return true } @@ -296,12 +293,12 @@ Dans la méthode `application:didFinishLaunchingWithOptions:`, remplacez la clé - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // Setup Braze bridge - NSURL *jsCodeLocation = - [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index"]; - RCTRootView *rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation - moduleName:@"" - initialProperties:nil - launchOptions:launchOptions]; + id moduleInitializer = [[BrazeReactBridge alloc] init]; + RCTBridge *bridge = [[RCTBridge alloc] initWithDelegate:moduleInitializer + launchOptions:launchOptions]; + RCTRootView *rootView = [[RCTRootView alloc] initWithBridge:bridge + moduleName:@"" + initialProperties:nil]; self.bridge = rootView.bridge; // Configure views in the application @@ -319,8 +316,6 @@ Dans la méthode `application:didFinishLaunchingWithOptions:`, remplacez la clé Braze *braze = [BrazeReactBridge initBraze:configuration]; AppDelegate.braze = braze; - /* Other configuration */ - return YES; } diff --git a/_lang/fr/_developer_guide/platform_integration_guides/sdk_changelogs.md b/_lang/fr/_developer_guide/platform_integration_guides/sdk_changelogs.md index 9bc05dd2970..6f3415a1a16 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/sdk_changelogs.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/sdk_changelogs.md @@ -42,7 +42,7 @@ guide_featured_list: guide_menu_title: "Journaux de modifications sur Github" guide_menu_list: - name: SDK Android - link: https://github.com/Appboy/appboy-android-sdk/blob/master/CHANGELOG.md + link: https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md image: /assets/img/android.png - name: SDK iOS (Swift) link: https://github.com/braze-inc/braze-swift-sdk/blob/main/CHANGELOG.md diff --git a/_lang/fr/_developer_guide/platform_integration_guides/sdk_primer.md b/_lang/fr/_developer_guide/platform_integration_guides/sdk_primer.md index 5ff89a4b22d..b537a29aa3f 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/sdk_primer.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/sdk_primer.md @@ -129,7 +129,7 @@ Vous pouvez soit intégrer certaines parties du SDK, soit utiliser [`disableSDK` {% endtab %} {% tab Android SDK %} -Vous pouvez utiliser [`setDeviceObjectAllowlist`](https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.configuration/-braze-config/-builder/set-device-object-allowlist.html?query=fun%20setDeviceObjectAllowlist(deviceObjectAllowlist:%20EnumSet%3CDeviceKey%3E):% 20BrazeConfig.Builder) pour configurer le SDK afin qu’il envoie uniquement un sous-ensemble de clés d’objet d’appareil ou de valeurs selon une liste de valeurs définie. Cette option doit être activée via [`setDeviceObjectAllowlistEnabled`](https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze.configuration/-braze-config/-builder/set-device-object-allowlist-enabled.html?query=fun%20setDeviceObjectAllowlistEnabled(enabled:%20Boolean):% 20BrazeConfig.Builder). +Vous pouvez utiliser [`setDeviceObjectAllowlist`](https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.configuration/-braze-config/-builder/set-device-object-allowlist.html?query=fun%20setDeviceObjectAllowlist(deviceObjectAllowlist:%20EnumSet%3CDeviceKey%3E):%20BrazeConfig.Builder) pour configurer le SDK afin qu’il envoie uniquement un sous-ensemble de clés d’objet d’appareil ou de valeurs selon une liste de valeurs définie. Cette option doit être activée via [`setDeviceObjectAllowlistEnabled`](https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze.configuration/-braze-config/-builder/set-device-object-allowlist-enabled.html?query=fun%20setDeviceObjectAllowlistEnabled(enabled:%20Boolean):%20BrazeConfig.Builder). {% alert important %} Une liste vide d’autorisations entraînera le **non** envoi des données de l’appareil à Braze. @@ -150,4 +150,4 @@ Par défaut, tous les champs sont collectés par le SDK Braze pour iOS. {% endtabs %} -[3]: {{site.baseurl}}/user_guide/onboarding_with_braze/web_sdk/ \ No newline at end of file +[3]: {{site.baseurl}}/user_guide/onboarding_with_braze/web_sdk/ diff --git a/_lang/fr/_developer_guide/platform_integration_guides/swift/push_notifications/testing.md b/_lang/fr/_developer_guide/platform_integration_guides/swift/push_notifications/testing.md index 648ddecdadc..6567a45aff2 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/swift/push_notifications/testing.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/swift/push_notifications/testing.md @@ -20,7 +20,7 @@ Si vous souhaitez tester des notifications push et in-app à l’aide de la lign - `YOUR_VALUE1` (facultatif) ```bash -curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer {{YOUR_API_KEY}}" -d '{ +curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer {YOUR_API_KEY}" -d '{ "external_user_ids":["YOUR_EXTERNAL_USER_ID"], "messages": { "apple_push": { diff --git a/_lang/fr/_developer_guide/platform_integration_guides/unity/sdk_integration/android.md b/_lang/fr/_developer_guide/platform_integration_guides/unity/sdk_integration/android.md index 60f1515e31d..e6f027191d6 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/unity/sdk_integration/android.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/unity/sdk_integration/android.md @@ -1,173 +1,173 @@ ---- -nav_title: Android -article_title: Intégration SDK Android pour Unity -platform: - - Unity - - Android -page_order: 0 -description: "Cet article de référence couvre l’intégration SDK Android pour la plateforme Unity." -search_rank: .9 ---- - -# Intégration SDK Android - -Suivez ces instructions pour utiliser Braze dans votre application Unity. - -## Étape 1 : Choisissez votre package Braze Unity - -Braze [`.unitypackage`][41] regroupe des liaisons natives pour les plateformes Android et iOS, ainsi qu’une interface C#. - -Il existe plusieurs packages Braze Unity disponibles au téléchargement sur la [Page des versions de Braze Unity ][42] : - -- `Appboy.unitypackage` - - Ce package regroupe les SDK Android et iOS Braze et la dépendance [SDWebImage du SDK iOS][unity-1], nécessaire pour le fonctionnement approprié des messages in-app de Braze et des fonctionnalités de carte de contenu sur iOS. L’infrastructure SDWebImage est utilisée pour télécharger et afficher des images, y compris des GIF. Si vous avez l’intention d’utiliser la fonctionnalité Braze dans son intégralité, téléchargez et importez ce package. -- `Appboy-nodeps.unitypackage` - - Ce package est similaire à `Appboy.unitypackage` à l’exception de l’infrastructure [SDWebImage ][unity-1]qui n’est pas présente. Ce package est utile si vous ne souhaitez pas que l’infrastructure SDWebImage soit présente dans votre application iOS. - -**iOS**: Pour voir si vous avez besoin de la dépendance [SDWebImage][unity-1] pour votre projet iOS, consultez la [Documentation sur les messages in-app iOS][unity-4].
-**Android**: À partir d’Unity 2.6.0, l’artefact SDK groupé de Braze Android nécessite les dépendances [AndroidX][unity-3]. Si vous utilisiez auparavant un `jetified unitypackage`, alors vous pouvez effectuer une transition en toute sécurité vers le `unitypackage` correspondant. - -## Étape 2 : Importer le package - -Dans Unity Editor, importez le package dans votre projet Unity en naviguant vers **Actifs > Importer un package > Personnaliser le package**. Cliquez ensuite sur **Importer**. - -Sinon, suivez les instructions pour [Importer un package d’actifs Unity ][41] pour un guide plus détaillé sur l’importation des packages Unity personnalisés. - -{% alert note %} -Si vous souhaitez importer le plug-in iOS ou Android uniquement, désélectionnez le sous-répertoire `Plugins/Android` ou `Plugins/iOS` lors de l’importation du Braze `.unitypackage`. -{% endalert %} - -## Étape 3 : Mettre à jour votre AndroidManifest.xml - -Les projets Android Unity nécessitent un [`AndroidManifest.xml`](https://docs.unity3d.com/Manual/android-manifest.html) pour exécuter l’application. De plus, Braze nécessite plusieurs ajouts à votre [`AndroidManifest.xml`](https://docs.unity3d.com/Manual/android-manifest.html) pour fonctionner. - -### Configurer le fichier AndroidManifest.xml - -Si votre application n’a pas de `AndroidManifest.xml`, vous pouvez utiliser ce qui suit comme modèle. Sinon, si vous avez déjà un `AndroidManifest.xml`, assurez-vous que l’une des sections manquantes suivantes est ajoutée à votre `AndroidManifest.xml` existant. - -```xml - - - - - - - - - - - - - - - - - - - - - - - - - - -``` - -> Votre `AndroidManifest.xml` doit présent dans `Assets/Plugins/Android/AndroidManifest.xml`. Voir le [Documentation Unity AndroidManifest](https://docs.unity3d.com/Manual/android-manifest.html) pour plus d’informations. - -> Toutes les classes d’activités enregistrées dans votre `AndroidManifest.xml` doit être entièrement intégrées au SDK Braze pour Android. Si vous ajoutez votre propre classe d’activités, vous devez suivre les [Instructions d’intégration d’activité Unity](#extending-braze-unity-player) pour vous assurer que l’analyse soit collectée. - -{% alert note %} -Votre `AndroidManifest.xml` final ne doit contenir qu’une seule activité avec `"android.intent.category.LAUNCHER"` présent. -{% endalert %} - -### Mettre à jour AndroidManifest.xml avec le nom de votre package - -Pour trouver le nom de votre package, cliquez sur **Fichier > Créer des paramètres > Paramètres du lecteur > Onglet Android**. -![]({% image_buster /assets/img_archive/UnityPackageName.png %}) - -Dans votre `AndroidManifest.xml`, toutes les instances de `REPLACE_WITH_YOUR_PACKAGE_NAME` doivent être remplacées par `Package Name` par rapport à l’étape précédente. - -## Étape 4 : Ajouter des dépendances Gradle {#unity-android-gradle-configuration} - -Les dépendances suivantes sont requises : - -```groovy -implementation "org.jetbrains.kotlin:kotlin-stdlib:1.5.21" -implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.5.2" - -// Les deux sont requis si l’on utilise l’Activité de Cartes de contenu par défaut sur Android -implementation "androidx.swiperefreshlayout:swiperefreshlayout:+" -implementation "androidx.recyclerview:recyclerview:+" -``` - -Voici des exemples d’ajout de ces dépendances à l’aide des outils Unity : - -##### [Modèle Gradle personnalisé](https://docs.unity3d.com/Manual/android-gradle-overview.html) - -```groovy -dependencies { - implementation "org.jetbrains.kotlin:kotlin-stdlib:1.5.21" - implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.5.2" -} -``` -##### [Responsable de la dépendance externe pour Unity](https://github.com/googlesamples/unity-jar-resolver) - -```xml - - - - - - -``` - -## Étape 5 : Configurer le SDK {#unity-static-configuration} - -Braze fournit une solution Unity native pour l’automatisation de l’intégration Unity Android. - -1. Dans Unity Editor, ouvrez les paramètres de configuration de Braze en naviguant jusqu’à **Braze > Configuration Braze**. -2. Cochez la case **Automatiser l’intégration d’Unity Android**. -3. Dans le champ « Clé API Braze », saisissez la clé API de votre application présente dans **Gérer les paramètres** sur le tableau de bord de Braze. - -{% alert note %} -Cette intégration automatique ne doit pas être utilisée avec un fichier `braze.xml` créé manuellement, car les valeurs de configuration peuvent entrer en conflit pendant le projet. Si vous avez besoin d’un `braze.xml` manuel, désactivez l’intégration automatique. -{% endalert %} - -## Intégration SDK de base terminée - -Braze devrait maintenant collecter des données depuis votre application et votre intégration de base devrait être terminée. Consultez les articles suivants pour plus d’informations sur l’intégration des notifications push ([Android][53] et [iOS][50]), [Messages in-app][34] et [Cartes de contenu][40]. - -## Options d’implémentation avancées supplémentaires - -### Extension du lecteur Unity de Braze (Android) {#extend-braze-unity-player} - -Le fichier `AndroidManifest.xml` (exemple) fourni a une classe d’activité enregistrée, [`AppboyUnityPlayerActivity`](https://github.com/Appboy/appboy-android-sdk/blob/e67e09f785adeff075a5d7710e79f41ed3676a6a/android-sdk-unity/src/main/java/com/appboy/unity/AppboyUnityPlayerActivity.java). Cette classe est intégrée au SDK Braze et étend `UnityPlayerActivity` à la gestion des sessions, l’enregistrement des messages in-app, la journalisation des analyses des notifications push et bien plus encore. Voir [Unity](https://docs.unity3d.com/Manual/AndroidUnityPlayerActivity.html) pour plus d’informations sur l’extension de la classe `UnityPlayerActivity`. - -Si vous créez votre propre `UnityPlayerActivity` personnalisé dans une bibliothèque ou un projet de plug-in, vous devrez étendre `AppboyUnityPlayerActivity` de Braze pour intégrer votre fonctionnalité personnalisée à Braze. Avant de commencer à travailler sur l’extension `AppboyUnityPlayerActivity`, suivez nos instructions pour intégrer Braze dans votre projet Unity. -1. Ajoutez le SDK Braze pour Android en tant que dépendance à votre bibliothèque ou à votre projet de plug-in comme décrit dans les [Instructions d’intégration du SDK Braze pour Android]({{site.baseurl}}/developer_guide/platform_integration_guides/android/initial_sdk_setup/android_sdk_integration/). -2. Intégrer notre `.aar` Unity, qui contient la fonctionnalité spécifique Unity de Braze, à votre projet de bibliothèque Android que vous construisez pour Unity. Le `appboy-unity.aar` est disponible à partir de notre [dépôt public](https://github.com/Appboy/appboy-unity-sdk/tree/master/Assets/Plugins/Android). Une fois que notre bibliothèque Unity a été intégrée avec succès, modifiez votre `UnityPlayerActivity` pour étendre `AppboyUnityPlayerActivity`. -3. Exportez votre bibliothèque ou votre projet de plug-in et déposez-le dans `//Assets/Plugins/Android` de manière habituelle. N’incluez pas de code source Braze dans votre bibliothèque ou votre plug-in, car ils seront déjà présents dans `//Assets/Plugins/Android`. -4. Modifier votre `//Assets/Plugins/Android/AndroidManifest.xml` pour spécifier votre sous-classe `AppboyUnityPlayerActivity` comme activité principale. - -Vous devriez maintenant pouvoir mettre en package un `.apk` depuis l’IDE Unity qui est entièrement intégré à Braze et contient votre fonctionnalité `UnityPlayerActivity` personnalisée. - -[5]: #transitioning-from-manual-to-automated-integration -[34]: {{site.baseurl}}/developer_guide/platform_integration_guides/unity/in-app_messaging/ -[35]: {{site.baseurl}}/developer_guide/platform_integration_guides/unity/news_feed/ -[40]: {{site.baseurl}}/developer_guide/platform_integration_guides/unity/content_cards/ -[41]: https://docs.unity3d.com/Manual/AssetPackages.html -[42]: https://github.com/Appboy/appboy-unity-sdk/releases -[50]: {{site.baseurl}}/developer_guide/platform_integration_guides/unity/push_notifications/ios/ -[53]: {{site.baseurl}}/developer_guide/platform_integration_guides/unity/push_notifications/android/ -[unity-1]: https://github.com/SDWebImage/SDWebImage -[unity-2]: https://firebase.google.com/docs/unity/setup -[unity-3]: https://developer.android.com/jetpack/androidx -[unity-4]: {{ site.baseurl }}/developer_guide/platform_integration_guides/android/in-app_messaging/integration/ +--- +nav_title: Android +article_title: Intégration SDK Android pour Unity +platform: + - Unity + - Android +page_order: 0 +description: "Cet article de référence couvre l’intégration SDK Android pour la plateforme Unity." +search_rank: .9 +--- + +# Intégration SDK Android + +Suivez ces instructions pour utiliser Braze dans votre application Unity. + +## Étape 1 : Choisissez votre package Braze Unity + +Le Braze [`.unitypackage`][41] regroupe des liaisons natives pour les plateformes Android et iOS, ainsi qu’une interface C#. + +Il existe plusieurs packages Braze Unity disponibles au téléchargement sur la [Page des versions de Braze Unity][42] : + +- `Appboy.unitypackage` + - Ce package regroupe les SDK Android et iOS Braze et la dépendance [SDWebImage][unity-1] du SDK iOS, nécessaire pour le fonctionnement approprié des messages in-app de Braze et des fonctionnalités de carte de contenu sur iOS. L’infrastructure SDWebImage est utilisée pour télécharger et afficher des images, y compris des GIF. Si vous avez l’intention d’utiliser la fonctionnalité Braze dans son intégralité, téléchargez et importez ce package. +- `Appboy-nodeps.unitypackage` + - Ce package est similaire à `Appboy.unitypackage` à l’exception de l’infrastructure [SDWebImage][unity-1] qui n’est pas présente. Ce package est utile si vous ne souhaitez pas que l’infrastructure SDWebImage soit présente dans votre application iOS. + +**iOS :** Pour voir si vous avez besoin de la dépendance [SDWebImage][unity-1] pour votre projet iOS, consultez la [Documentation sur les messages in-app iOS][unity-4].
+**Android :** À partir d’Unity 2.6.0, l’artefact SDK groupé de Braze Android nécessite les dépendances [AndroidX][unity-3]. Si vous utilisiez auparavant un `jetified unitypackage`, alors vous pouvez effectuer une transition en toute sécurité vers le `unitypackage` correspondant. + +## Étape 2 : Importer le package + +Dans Unity Editor, importez le package dans votre projet Unity en naviguant vers **Actifs > Importer un package > Personnaliser le package**. Cliquez ensuite sur **Importer**. + +Sinon, suivez les instructions pour [Importer un package d’actifs Unity][41] pour un guide plus détaillé sur l’importation des packages Unity personnalisés. + +{% alert note %} +Si vous souhaitez importer le plug-in iOS ou Android uniquement, désélectionnez le sous-répertoire `Plugins/Android` ou `Plugins/iOS` lors de l’importation du Braze `.unitypackage`. +{% endalert %} + +## Étape 3 : Mettre à jour votre AndroidManifest.xml + +Les projets Android Unity nécessitent un [`AndroidManifest.xml`](https://docs.unity3d.com/Manual/android-manifest.html) pour exécuter l’application. De plus, Braze nécessite plusieurs ajouts à votre [`AndroidManifest.xml`](https://docs.unity3d.com/Manual/android-manifest.html) pour fonctionner. + +### Configurer le fichier AndroidManifest.xml + +Si votre application n’a pas de `AndroidManifest.xml`, vous pouvez utiliser ce qui suit comme modèle. Sinon, si vous avez déjà un `AndroidManifest.xml`, assurez-vous que l’une des sections manquantes suivantes est ajoutée à votre `AndroidManifest.xml` existant. + +```xml + + + + + + + + + + + + + + + + + + + + + + + + + + +``` + +> Votre `AndroidManifest.xml` doit présent dans `Assets/Plugins/Android/AndroidManifest.xml`. Voir le [Documentation Unity AndroidManifest](https://docs.unity3d.com/Manual/android-manifest.html) pour plus d’informations. + +> Toutes les classes d’activités enregistrées dans votre `AndroidManifest.xml` doit être entièrement intégrées au SDK Braze pour Android. Si vous ajoutez votre propre classe d’activités, vous devez suivre les [Instructions d’intégration d’activité Unity](#extending-braze-unity-player) pour vous assurer que l’analyse soit collectée. + +{% alert note %} +Votre `AndroidManifest.xml` final ne doit contenir qu’une seule activité avec `"android.intent.category.LAUNCHER"` présent. +{% endalert %} + +### Mettre à jour AndroidManifest.xml avec le nom de votre package + +Pour trouver le nom de votre package, cliquez sur **Fichier > Créer des paramètres > Paramètres du lecteur > Onglet Android**. +![]({% image_buster /assets/img_archive/UnityPackageName.png %}) + +Dans votre `AndroidManifest.xml`, toutes les instances de `REPLACE_WITH_YOUR_PACKAGE_NAME` doivent être remplacées par `Package Name` par rapport à l’étape précédente. + +## Étape 4 : Ajouter des dépendances gradle {#unity-android-gradle-configuration} + +Les dépendances suivantes sont requises : + +```groovy +implementation "org.jetbrains.kotlin:kotlin-stdlib:1.5.21" +implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.5.2" + +// Both are required if using the default Content Cards Activity on Android +implementation "androidx.swiperefreshlayout:swiperefreshlayout:+" +implementation "androidx.recyclerview:recyclerview:+" +``` + +Voici des exemples d’ajout de ces dépendances à l’aide des outils Unity : + +##### [Modèle Gradle personnalisé](https://docs.unity3d.com/Manual/android-gradle-overview.html) + +```groovy +dependencies { + implementation "org.jetbrains.kotlin:kotlin-stdlib:1.5.21" + implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.5.2" +} +``` +##### [Responsable de la dépendance externe pour Unity](https://github.com/googlesamples/unity-jar-resolver) + +```xml + + + + + + +``` + +## Étape 5 : Configurer le SDK Braze {#unity-static-configuration} + +Braze fournit une solution Unity native pour l’automatisation de l’intégration Unity Android. + +1. Dans Unity Editor, ouvrez les paramètres de configuration de Braze en naviguant jusqu’à **Braze > Configuration Braze**. +2. Cochez la case **Automatiser l’intégration d’Unity Android**. +3. Dans le champ « Clé API Braze », saisissez la clé API de votre application présente dans **Gérer les paramètres** sur le tableau de bord de Braze. + +{% alert note %} +Cette intégration automatique ne doit pas être utilisée avec un fichier `braze.xml` créé manuellement, car les valeurs de configuration peuvent entrer en conflit pendant le projet. Si vous avez besoin d’un `braze.xml` manuel, désactivez l’intégration automatique. +{% endalert %} + +## Intégration SDK de base terminée + +Braze devrait maintenant collecter des données depuis votre application et votre intégration de base devrait être terminée. Consultez les articles suivants pour plus d’informations sur l’intégration des notifications push ([Android][53] et [iOS][50]), [Messages in-app][34] et [Cartes de contenu][40]. + +## Options d’implémentation avancées supplémentaires + +### Étendre le moteur Unity de Braze (Android) {#extending-braze-unity-player} + +Le fichier `AndroidManifest.xml` (exemple) fourni a une classe d’activité enregistrée, [`AppboyUnityPlayerActivity`](https://github.com/braze-inc/braze-android-sdk/blob/e67e09f785adeff075a5d7710e79f41ed3676a6a/android-sdk-unity/src/main/java/com/appboy/unity/AppboyUnityPlayerActivity.java). Cette classe est intégrée au SDK Braze et étend `UnityPlayerActivity` à la gestion des sessions, l’enregistrement des messages in-app, la journalisation des analyses des notifications push et bien plus encore. Voir [Unity](https://docs.unity3d.com/Manual/AndroidUnityPlayerActivity.html) pour plus d’informations sur l’extension de la classe `UnityPlayerActivity`. + +Si vous créez votre propre `UnityPlayerActivity` personnalisé dans une bibliothèque ou un projet de plug-in, vous devrez étendre `AppboyUnityPlayerActivity` de Braze pour intégrer votre fonctionnalité personnalisée à Braze. Avant de commencer à travailler sur l’extension `AppboyUnityPlayerActivity`, suivez nos instructions pour intégrer Braze dans votre projet Unity. +1. Ajoutez le SDK Braze pour Android en tant que dépendance à votre bibliothèque ou à votre projet de plug-in comme décrit dans les [Instructions d’intégration du SDK Braze pour Android]({{site.baseurl}}/developer_guide/platform_integration_guides/android/initial_sdk_setup/android_sdk_integration/). +2. Intégrer notre `.aar` Unity, qui contient la fonctionnalité spécifique Unity de Braze, à votre projet de bibliothèque Android que vous construisez pour Unity. Le `appboy-unity.aar` est disponible à partir de notre [dépôt public](https://github.com/Appboy/appboy-unity-sdk/tree/master/Assets/Plugins/Android). Une fois que notre bibliothèque Unity a été intégrée avec succès, modifiez votre `UnityPlayerActivity` pour étendre `AppboyUnityPlayerActivity`. +3. Exportez votre bibliothèque ou votre projet de plug-in et déposez-le dans `//Assets/Plugins/Android` de manière habituelle. N’incluez pas de code source Braze dans votre bibliothèque ou votre plug-in, car ils seront déjà présents dans `//Assets/Plugins/Android`. +4. Modifier votre `//Assets/Plugins/Android/AndroidManifest.xml` pour spécifier votre sous-classe `AppboyUnityPlayerActivity` comme activité principale. + +Vous devriez maintenant pouvoir mettre en package un `.apk` depuis l’IDE Unity qui est entièrement intégré à Braze et contient votre fonctionnalité `UnityPlayerActivity` personnalisée. + +[5]: #transitioning-from-manual-to-automated-integration +[34]: {{site.baseurl}}/developer_guide/platform_integration_guides/unity/in-app_messaging/ +[35]: {{site.baseurl}}/developer_guide/platform_integration_guides/unity/news_feed/ +[40]: {{site.baseurl}}/developer_guide/platform_integration_guides/unity/content_cards/ +[41]: https://docs.unity3d.com/Manual/AssetPackages.html +[42]: https://github.com/Appboy/appboy-unity-sdk/releases +[50]: {{site.baseurl}}/developer_guide/platform_integration_guides/unity/push_notifications/ios/ +[53]: {{site.baseurl}}/developer_guide/platform_integration_guides/unity/push_notifications/android/ +[unity-1]: https://github.com/SDWebImage/SDWebImage +[unity-2]: https://firebase.google.com/docs/unity/setup +[unity-3]: https://developer.android.com/jetpack/androidx +[unity-4]: {{ site.baseurl }}/developer_guide/platform_integration_guides/android/in-app_messaging/integration/ diff --git a/_lang/fr/_developer_guide/platform_integration_guides/web/news_feed/integration.md b/_lang/fr/_developer_guide/platform_integration_guides/web/news_feed/integration.md index 63ac61c2ea8..c6cb067f5b8 100644 --- a/_lang/fr/_developer_guide/platform_integration_guides/web/news_feed/integration.md +++ b/_lang/fr/_developer_guide/platform_integration_guides/web/news_feed/integration.md @@ -12,14 +12,14 @@ channel: fil d’actualité # Fil d’actualité {% alert note %} -Le Fil d’actualité est obsolète. Braze recommande aux clients qui utilisent notre outil de fil d’actualités de passer à notre canal de communication de cartes de contenu - il est plus flexible, plus personnalisable et plus fiable. Consultez le [guide de migration]({{site.baseurl}}/user_guide/message_building_by_channel/content_cards/migrating_from_news_feed/) pour en savoir plus. +Le Fil d’actualité est obsolète. Braze recommande aux clients qui utilisent notre outil de fil d’actualités de passer à notre canal de communication de cartes de contenu : il est plus flexible, plus personnalisable et plus fiable. Consultez le [guide de migration]({{site.baseurl}}/user_guide/message_building_by_channel/content_cards/migrating_from_news_feed/) pour en savoir plus. {% endalert %} Le fil d’actualités est un fil de contenu in-app entièrement personnalisable pour vos utilisateurs. Notre ciblage et notre segmentation vous permettent de créer un fil de contenu individuel, adapté aux intérêts de chaque utilisateur. Selon leur position dans le cycle de vie de l’utilisateur et la nature de votre application, il peut s’agir d’un serveur de contenu d’onboarding, d’un centre de publicité, de réalisation ou d’actualités génériques. ## Exemple de fil d'actualité -An example News Feed displaying several notifications such as follow request, update notices, ads, and more. +Un exemple de fil d'actualité affichant plusieurs notifications telles que la demande de suivi, les avis de mise à jour, les publicités, etc. ## Intégration @@ -61,7 +61,7 @@ Vous pouvez à tout moment demander le nombre de cartes non lues en appelant : braze.getCachedFeed().getUnreadCardCount(); ``` -Cela est souvent utilisé pour alimenter les badges indiquant combien de cartes de fil d'actualité n’ont pas été lues. consultez les [Documents de référence JS][17] pour plus d’informations. Notez que Braze n’actualisera pas les cartes de fil d'actualité sur les pages nouvellement chargées (cette fonction reviendra à 0) jusqu’à ce que vous affichiez le fil ou appelez `braze.requestFeedRefresh();` +Cela est souvent utilisé pour alimenter les badges indiquant combien de cartes de fil d’actualité n’ont pas été lues. consultez les [Documents de référence JS][17] pour plus d’informations. Notez que Braze n’actualisera pas les cartes de fil d’actualité sur les pages nouvellement chargées (cette fonction reviendra à 0) jusqu’à ce que vous affichiez le fil ou appelez `braze.requestFeedRefresh();` ### Paires clé-valeur @@ -81,9 +81,9 @@ body .ab-feed { ## Catégories -Les instances du fil d'actualité Braze peuvent être configurées pour ne recevoir que des cartes d’une certaine « catégorie ». Cela permet l’intégration efficace de plusieurs flux de fils d'actualité au sein d’une seule application. +Les instances du fil d’actualité Braze peuvent être configurées pour ne recevoir que des cartes d’une certaine « catégorie ». Cela permet l’intégration efficace de plusieurs flux de fils d’actualité au sein d’une seule application. -Les catégories de fils d'actualité peuvent être définies en fournissant le troisième paramètre `allowedCategories` à `toggleFeed` : +Les catégories de fils d’actualité peuvent être définies en fournissant le troisième paramètre `allowedCategories` à `toggleFeed` : ``` javascript braze.toggleFeed(undefined, undefined, [braze.Card.Category.NEWS]); @@ -99,7 +99,7 @@ braze.toggleFeed(undefined, undefined, [braze.Card.Category.ANNOUNCEMENTS, braze Braze fournit un indicateur de messages lus et non lus sur les cartes de fil d'actualité comme illustré ci-dessous : -![Une carte de fil d'actualité affichant l’image d’une montre accompagnée d’un texte. Dans le coin supérieur droit du texte, on trouve un triangle bleu ou gris, indiquant si une carte a été lue ou non. Un triangle bleu signifie qu’une carte a été lue.][25] +![Une carte de fil d’actualité affichant l’image d’une montre accompagnée d’un texte. Dans le coin supérieur droit du texte, on trouve un triangle bleu ou gris, indiquant si une carte a été lue ou non. Un triangle bleu signifie qu’une carte a été lue.][25] ### Désactiver les indicateurs @@ -117,4 +117,4 @@ Pour désactiver cette fonctionnalité, ajoutez le style suivant à votre CSS : [5]: https://js.appboycdn.com/web-sdk/latest/doc/classes/braze.captionedimage.html [14]: {{site.baseurl}}/user_guide/message_building_by_channel/in-app_messages/reporting/ [17]: https://js.appboycdn.com/web-sdk/latest/doc/classes/braze.feed.html -[25]: {% image_buster /assets/img_archive/UnreadvsReadNewsFeedCard.png %} +[25]: {% image_buster /assets/img_archive/UnreadvsReadNewsFeedCard.png %} \ No newline at end of file diff --git a/_lang/fr/_developer_guide/platform_wide/feature_flags.md b/_lang/fr/_developer_guide/platform_wide/feature_flags.md index 9dc71456635..74ea7c26743 100644 --- a/_lang/fr/_developer_guide/platform_wide/feature_flags.md +++ b/_lang/fr/_developer_guide/platform_wide/feature_flags.md @@ -2,7 +2,7 @@ nav_title: Indicateurs de fonctionnalité article_title: Indicateurs de fonctionnalité page_order: 5 -layout: dev_guide +layout: featured guide_top_header: "Indicateurs de fonctionnalité" guide_top_text: "Les indicateurs de fonctionnalité vous permettent d’activer ou de désactiver à distance la fonctionnalité d’une sélection d’utilisateurs. Il est important de noter qu’ils vous permettent d’activer et de désactiver la production sans déploiement supplémentaire de codes ou mises à jour d’applications. Cela vous permet de déployer de nouvelles fonctionnalités en toute sécurité et en toute confiance." description: "Cette page d’accueil contient toutes les fonctionnalités des indicateurs, y compris des articles sur la création de fonctionnalités et des exemples de cas d’utilisation." @@ -20,10 +20,9 @@ guide_featured_list: - name: Exemples de cas d’utilisation link: /docs/developer_guide/platform_wide/feature_flags/use_cases/ fa_icon: fas fa-paint-brush +- name: Foire aux questions + link: /docs/developer_guide/platform_wide/feature_flags/faq/ + fa_icon: fas fa-question --- -Pour utiliser des indicateurs de fonctionnalité, assurez-vous que vos SDK sont à jour avec au moins ces versions minimales : - -{% sdk_min_versions android:24.2.0 web:4.6.0 swift:5.9.0 %} -

diff --git a/_lang/fr/_developer_guide/platform_wide/feature_flags/about.md b/_lang/fr/_developer_guide/platform_wide/feature_flags/about.md index 9654bacbad3..213e8c10700 100644 --- a/_lang/fr/_developer_guide/platform_wide/feature_flags/about.md +++ b/_lang/fr/_developer_guide/platform_wide/feature_flags/about.md @@ -3,6 +3,7 @@ nav_title: À propos des indicateurs de fonctionnalité article_title: À propos des indicateurs de fonctionnalité page_order: 1 description: "Cet article de référence couvre un aperçu des indicateurs de fonctionnalité, y compris les prérequis et les cas d’utilisation." +tool: Feature Flags platform: - iOS - Android diff --git a/_lang/fr/_developer_guide/platform_wide/feature_flags/create.md b/_lang/fr/_developer_guide/platform_wide/feature_flags/create.md index 8188ddc7aac..98cfa584b5e 100644 --- a/_lang/fr/_developer_guide/platform_wide/feature_flags/create.md +++ b/_lang/fr/_developer_guide/platform_wide/feature_flags/create.md @@ -1,8 +1,9 @@ --- nav_title: Création d’indicateurs de fonctionnalité article_title: Création d’indicateurs de fonctionnalité -page_order: 2 +page_order: 20 description: "Cet article de référence explique comment créer des indicateurs de fonctionnalité pour coordonner les déploiements de nouvelles fonctionnalités." +tool: Feature Flags platform: - iOS - Android @@ -52,7 +53,7 @@ Pour éviter le comportement de l’application de production de rupture, l’in Les indicateurs de fonctionnalité sont partagés entre les applications au sein d’un groupe d’apps afin que différentes plateformes (iOS/Android/Web) puissent partager des références avec la même fonctionnalité. {% endalert %} -#### Propriétés +#### Propriétés {#properties} Les propriétés personnalisées peuvent être définies comme faisant partie de votre indicateur de fonctionnalité. Ces propriétés seront accessibles par votre application via le SDK Braze lorsque la fonctionnalité est activée. Définir des propriétés est une étape facultative. Les variables peuvent être des **chaînes de caractères**, des valeurs **booléennes** ou des **chiffres**. Définissez la clé variable et la valeur par défaut pour chaque propriété. @@ -324,6 +325,36 @@ braze.subscribeToFeatureFlagsUpdates() { event -> {% endtab %} {% endtabs %} +## Bonnes pratiques + +### Conventions de nommage + +- Envisagez de suivre un modèle tel que `{product}.{feature}.{action}`. + - Par exemple, dans une application de covoiturage, votre ID de fonctionnalité peut être `driver.profile.show_animation_v3` +- Cela aide également lors de la recherche d’un domaine de produit spécifique ou des indicateurs de fonctionnalité de l’équipe. +- Assurez-vous que l’état par défaut d’un indicateur de fonctionnalité est désactivé dans votre application. + - Par exemple, il s'agit d'un anti-modèle si vous disposez d’un indicateur nommé `disable_feature_xyz`. Il peut y avoir des exceptions, mais essayez d’éviter de confondre le statut « activé » d’une fonctionnalité avec le comportement réel d’activation (désactivation de la fonctionnalité xyz). + +### Planifier à l’avance + +Jouez toujours la carte de la sécurité. Lorsque vous envisagez de nouvelles fonctionnalités qui peuvent nécessiter un bouton d'arrêt d'urgence, il est préférable de publier un nouveau code avec un indicateur de fonctionnalité et de ne pas en avoir besoin, plutôt que de réaliser qu’une nouvelle mise à jour de l’application est nécessaire. + +### Soyez descriptif + +Ajoutez une description à votre indicateur de fonctionnalité. Bien qu’il s’agisse d’un champ facultatif dans Braze, il peut aider à répondre aux questions que d’autres peuvent avoir lors de la navigation entre les indicateurs de fonctionnalité disponibles. + +- Coordonnées de la personne responsable de l’activation et du comportement de cet indicateur +- Quand cet indicateur doit être désactivé +- Liens vers la documentation ou les notes sur la nouvelle fonctionnalité contrôlée par cet indicateur +- Dépendances ou remarques sur l’utilisation de la fonctionnalité + +### Nettoyer les anciens indicateurs de fonctionnalité + +Nous sommes tous coupables de laisser les fonctionnalités activées à 100 % plus longtemps que nécessaire. + +Pour vous aider à garder votre code (et le tableau de bord de Braze) propre, supprimez les indicateurs de fonctionnalité permanents de votre base de code une fois que tous les utilisateurs ont mis à niveau et que vous n’avez plus besoin d’une option pour désactiver la fonctionnalité. + +Cela permet de réduire la complexité de votre environnement de développement, mais aussi de garder votre liste d’indicateurs de fonctionnalités bien ordonnée. [1]: {% image_buster /assets/img/feature_flags/feature-flags-list.png %} [2]: {% image_buster /assets/img/feature_flags/feature-flags-create.png %} diff --git a/_lang/fr/_developer_guide/platform_wide/feature_flags/faq.md b/_lang/fr/_developer_guide/platform_wide/feature_flags/faq.md new file mode 100644 index 00000000000..a5e3fb344b0 --- /dev/null +++ b/_lang/fr/_developer_guide/platform_wide/feature_flags/faq.md @@ -0,0 +1,114 @@ +--- +nav_title: Foire aux questions +article_title: Foire aux questions +page_order: 40 +description: "Le présent article fournit des réponses aux questions fréquemment posées sur les campagnes." +tool: Feature Flags +platform: + - iOS + - Android + - Web +--- + +# Foire aux questions + +## Fonctionnalité et support + +### Comment puis-je rejoindre le programme bêta des indicateurs de fonctionnalité ? {#join-beta} + +Les indicateurs de fonctionnalité de Braze sont actuellement en version bêta ouverte. Veuillez demander à votre équipe de compte Braze pour en savoir plus sur l’adhésion au programme bêta. + +### Sur quelles plateformes les indicateurs de fonctionnalité Braze sont-ils pris en charge ? {#platforms} + +Braze prend en charge les indicateurs de fonctionnalité sur les plateformes iOS, Android et Web avec les exigences de version SDK suivantes : + +{% sdk_min_versions android:24.2.0 web:4.6.0 swift:5.9.0 %} + +Avez-vous besoin d’assistance sur d’autres plateformes ? Envoyez un e-mail à notre équipe : [feature-flags-feedback@braze.com](mailto:feature-flags-feedback@braze.com). + +### Quel est le niveau d’effort requis lors de la mise en œuvre d’un indicateur de fonctionnalité ? {#level-of-effort} + +Un indicateur de fonctionnalité peut être créé et intégré en quelques minutes. + +La plupart des efforts impliqués seront liés à la création par votre équipe d’ingénieurs de la nouvelle fonctionnalité que vous prévoyez de déployer. Mais lorsqu’il s’agit d’ajouter un indicateur de fonctionnalité, il s’agit simplement d’un énoncé `IF`/`ELSE` dans le code de votre application ou de votre site Web : + +```javascript +import { getFeatureFlag } from "@braze/web-sdk"; + +if (getFeatureFlag("new_shopping_cart").enabled) { + // Show the new homepage your team has built +} +else { + // Show the old homepage +} +``` + +### Comment les indicateurs de fonctionnalité peuvent-ils bénéficier aux équipes marketing ? {#marketing-teams} + +Les équipes marketing peuvent utiliser des indicateurs de fonctionnalité pour coordonner les annonces de produit (comme les e-mails de lancement de produit) lorsqu'une fonctionnalité n'est activée que pour un faible pourcentage d'utilisateurs. + + + +### Comment les indicateurs de fonctionnalité peuvent-ils bénéficier aux équipes produit ? {#product-teams} + +Les équipes produit peuvent utiliser des indicateurs de fonctionnalité pour effectuer des déploiements progressifs ou des lancements en douceur de nouvelles fonctionnalités afin de surveiller les indicateurs de performance clés et les commentaires des clients avant de les mettre à la disposition de tous les utilisateurs. + +Les équipes produit peuvent utiliser les [propriétés de l'indicateur de fonctionnalité][properties] pour remplir à distance le contenu d'une application, comme des liens profonds, du texte, des images ou d'autres contenus dynamiques. + + + +### Comment les indicateurs de fonctionnalité peuvent-ils bénéficier aux équipes d’ingénierie ? {#engineering-teams} + +Les équipes d'ingénierie peuvent utiliser des indicateurs de fonctionnalité pour réduire le risque inhérent au lancement de nouvelles fonctionnalités et éviter de se précipiter pour déployer des correctifs de code au milieu de la nuit. + +En publiant un nouveau code caché derrière un indicateur de fonctionnalité, votre équipe peut activer ou désactiver la fonctionnalité à distance à partir du tableau de bord de Braze, évitant ainsi le retard inhérent à la suppression d’un nouveau code ou à l’attente de l’approbation de mise à jour par l’App Store. + +## Déploiements et ciblage des fonctionnalités + +### Un indicateur de fonctionnalité peut-il être déployé uniquement pour un groupe sélectionné d’utilisateurs ? {#target-users} + +Oui, il vous suffit de créer un segment dans Braze qui cible des utilisateurs spécifiques — par adresse e-mail, `user_id` ou tout autre attribut de vos profils utilisateur. Ensuite, déployez l’indicateur de fonctionnalité pour atteindre 100 % de ce segment. + +### Comment l’ajustement du pourcentage de déploiement affecte-t-il les utilisateurs qui étaient précédemment inclus dans le groupe activé ? {#random-buckets} + +Les déploiements d’indicateurs de fonctionnalité restent cohérents pour les utilisateurs, que ce soit au niveau des appareils ou des sessions. + +- Lorsqu’un indicateur de fonctionnalité est déployé pour 10 % d’utilisateurs aléatoires, ce pourcentage reste activé et persiste pendant toute la durée de vie de cet indicateur de fonctionnalité. +- Si vous augmentez le déploiement de 10 % à 20 %, les 10 % d’origine conserveront l’activation et 10 % d’utilisateurs supplémentaires seront ajoutés au groupe « activé ». +- Si vous réduisez le déploiement de 20 % à 10 %, seuls les 10 % d’utilisateurs d’origine resteront activés. + +Cette stratégie permet de garantir que les utilisateurs bénéficient d’une expérience cohérente au sein de votre application et ne basculent pas entre les expériences d’une session à l’autre. Bien sûr, la désactivation d’une fonctionnalité jusqu’à 0 % supprimera tous les utilisateurs de l’indicateur de fonctionnalité, ce qui est utile au cas où vous découvriez un bug ou auriez besoin de désactiver complètement la fonctionnalité. + +### Puis-je créer un segment d’utilisateurs qui se trouvent actuellement dans un indicateur de fonctionnalité ? {#feature-flag-filter} + +C’est sur notre feuille de route produit. Pour vous aider à faire passer cette fonction en priorité, veuillez faire part de vos commentaires à votre équipe de compte Braze ou envoyer un e-mail à notre équipe : [feature-flags-feedback@braze.com](mailto:feature-flags-feedback@braze.com). + +## Sujets techniques + +### Les indicateurs de fonctionnalité peuvent-ils être utilisés pour contrôler quand le SDK Braze est initialisé ? {#initialization} + +Non, le SDK doit être initialisé afin de télécharger et de synchroniser les indicateurs de fonctionnalité pour l’utilisateur actuel. Cela signifie que vous ne pouvez pas utiliser les indicateurs de fonctionnalité pour limiter les utilisateurs créés ou suivis dans Braze. + +### À quelle fréquence les indicateurs de fonctionnalité sont-ils actualisés par le SDK ? {#refresh-frequency} + +Les indicateurs de fonctionnalité sont actualisés au début de la session et lors du changement d’utilisateurs actifs. Les indicateurs de fonctionnalité peuvent également être actualisés manuellement à l'aide de la [méthode d'actualisation][refreshing] du SDK. + +Gardez à l’esprit que les bonnes pratiques en matière de données recommandent de ne pas actualiser les indicateurs de fonctionnalité trop rapidement (avec une limitation du taux potentielle si c’est le cas), il est donc préférable d’actualiser seulement avant qu’un utilisateur interagisse avec de nouvelles fonctionnalités ou périodiquement dans l’application si nécessaire. + +### Les indicateurs de fonctionnalité sont-ils disponibles lorsqu’un utilisateur est hors ligne ? {#offline} + +Oui, une fois que les indicateurs de fonctionnalité sont actualisés, ils sont stockés localement sur l'appareil de l'utilisateur et sont accessibles hors ligne. + +### Que se passe-t-il si les indicateurs de fonctionnalité sont actualisés en cours de session ? {#listen-for-updates} + +Les indicateurs de fonctionnalité peuvent être actualisés en cours de session. Dans certains cas, vous pouvez mettre à jour votre application si certaines variables ou votre configuration doivent changer. Il existe d’autres scénarios dans lesquels vous ne souhaitez peut-être pas mettre à jour votre application, afin d’éviter un changement choquant dans la façon dont votre IU s’affiche. + +Pour le contrôler, [écoutez les mises à jour][listen-for-updates] des indicateurs de fonctionnalité et prenez la décision de réafficher ou non votre application en fonction des indicateurs de fonctionnalité qui ont été modifiés. + +## Questions ? + +Vous avez des questions ou des commentaires ? Envoyez un e-mail à notre équipe : [feature-flags-feedback@braze.com](mailto:feature-flags-feedback@braze.com). + +[properties]: {{site.baseurl}}/developer_guide/platform_wide/feature_flags/create/#properties +[refreshing]: {{site.baseurl}}/developer_guide/platform_wide/feature_flags/create/#refreshing +[listen-for-updates]: {{site.baseurl}}/developer_guide/platform_wide/feature_flags/create/#updates \ No newline at end of file diff --git a/_lang/fr/_developer_guide/platform_wide/feature_flags/use_cases.md b/_lang/fr/_developer_guide/platform_wide/feature_flags/use_cases.md index 22d70a676ae..6422f078a5b 100644 --- a/_lang/fr/_developer_guide/platform_wide/feature_flags/use_cases.md +++ b/_lang/fr/_developer_guide/platform_wide/feature_flags/use_cases.md @@ -1,8 +1,9 @@ --- nav_title: Exemples de cas d’utilisation article_title: Exemples de cas d’utilisation -page_order: 3 +page_order: 30 description: "Cet article de référence couvre des exemples de cas d’utilisation d’indicateurs de fonctionnalité, y compris les déploiements progressifs, la configuration à distance, la coordination des messages et l’expérimentation." +tool: Feature Flags platform: - iOS - Android @@ -10,7 +11,7 @@ platform: --- -# Exemples de cas d’utilisation +# Exemple de cas d’utilisation > Cet article décrit des exemples précis d’utilisation des indicateurs de fonctionnalité pour améliorer votre expérience utilisateur. Vous cherchez les étapes permettant de créer un indicateur de fonctionnalité dans Braze ? Consulter [Créer des indicateurs de fonctionnalité][8]. diff --git a/_lang/fr/_developer_guide/platform_wide/sdk_authentication.md b/_lang/fr/_developer_guide/platform_wide/sdk_authentication.md index 76cf6e89364..d23e4b3e48b 100644 --- a/_lang/fr/_developer_guide/platform_wide/sdk_authentication.md +++ b/_lang/fr/_developer_guide/platform_wide/sdk_authentication.md @@ -1,445 +1,446 @@ ---- -nav_title: Authentification SDK -article_title: Authentification SDK -page_order: 6 -description: "Cet article de référence couvre l’authentification SDK et la manière d’activer cette fonctionnalité dans le SDK Braze." -platform: - - iOS - - Android - - Web - ---- - -# Authentification SDK - -L’authentification SDK vous permet de fournir des preuves cryptographiques (côté serveur généré) aux requêtes SDK effectuées pour au nom des utilisateurs connectés. Lorsque cette fonctionnalité est activée dans votre application, le tableau de bord de Braze peut être configuré pour rejeter les demandes avec une signature JSON Web Token (JWT) manquante ou non valide. - -Lorsqu’elle est activée, cette fonctionnalité empêchera les requêtes non autorisées qui utilisent la clé API SDK de votre application pour les utilisateurs connectés, notamment : -- Envoi d’événements personnalisés, d’attributs, d’achats et de données de session -- Création de nouveaux utilisateurs dans votre groupe d’apps Braze -- Mise à jour des attributs de profil utilisateur standard -- Réception ou déclenchement de messages - -## Démarrage - -Il existe quatre étapes de haut niveau pour commencer : - -1. [Intégration côté serveur][1] - Générez une paire de clés publique et privée et utilisez votre clé privée pour créer un JWT pour l’utilisateur connecté actuel.

-2. [Intégration SDK][2] - Activez cette fonctionnalité dans le SDK Braze et demandez le JWT généré à partir de votre serveur.

-3. [Ajout de clé publique ][3] - Ajoutez votre _clé publique_ au tableau de bord de Braze dans la page **Gérer les paramètres**.

-4. [Basculer l’application dans le tableau de bord de Braze ][4]- Basculez l’application de cette fonctionnalité dans le tableau de bord de Braze, application par application. - -## Intégration côté serveur {#server-side-integration} - -### Générer une paire de clés publique/privée {#generate-keys} - -Générer une paire de clés publiques/privées RSA. La clé publique sera ajoutée au tableau de bord de Braze, tandis que la clé privée devra être stockée en toute sécurité sur votre serveur. - -Nous recommandons une clé RSA avec 2 048 bits pour une utilisation avec l’algorithme RS256 JWT. - -{% alert warning %} -N’oubliez pas de conserver vos clés privées _privé_. N’exposez jamais ou ne saisissez jamais votre clé privée dans votre application ou site Internet. Toute personne qui connaît votre clé privée peut se faire passer pour un autre utilisateur ou créer des utilisateurs au nom de votre application. -{% endalert %} - -### Créer un jeton Web JSON pour l’utilisateur actuel {#create-jwt} - -Une fois que vous avez votre clé privée, votre application côté serveur doit l’utiliser pour renvoyer un JWT à votre application ou site Internet pour l’utilisateur actuellement connecté. - -En général, cette logique peut aller partout où votre application demande normalement le profil de l’utilisateur actuel, comme un endpoint de connexion ou partout où votre application a rafraîchi le profil de l’utilisateur actuel. - -Lors de la génération du JWT, les champs suivants sont attendus : - -**En-tête JWT** - -| Champ | Requis | Description | -| ----- | -------- | ----------------------------------- | -| `alg` | Oui | L’algorithme pris en charge est `RS256`. | -| `typ` | Oui | Le type doit être égal à `JWT`. | - -{: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3} - -**Charge utile JWT** - -| Champ | Requis | Description | -| ----- | -------- | -------------------------------------------------------------------------------------- | -| `sub` | Oui | Le « sujet » doit être égal à l’ID utilisateur que vous fournissez à Braze SDK lorsque vous appelez `changeUser` | -| `exp` | Oui | L’« expiration » ou le moment où vous souhaitez que ce jeton expire. | -| `aud` | Non | La demande d’« audience » est facultative, et si elle est effectuée, elle doit être égale à `braze` | -| `iss` | Non | La demande « émetteur » est facultative, et si elle est effectuée, elle doit être égale à votre clé API SDK. | - -{: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3} - -### Bibliothèques JWT - -Pour en savoir plus sur les JSON Web Token ou pour parcourir les nombreuses bibliothèques open source qui simplifient ce processus de signature, consultez [https://jwt.io](https://jwt.io). - -## Intégration SDK {#sdk-integration} - -Cette fonctionnalité est disponible à partir des [versions SDK]({{ site.baseurl }}/user_guide/engagement_tools/campaigns/ideas_and_strategies/new_features/#filtering-by-most-recent-app-versions) suivantes : - -{% sdk_min_versions web:3.3.0 ios:4.3.0 android:14.0.0 %} - -### Activez cette fonction dans le SDK Braze. - -Lorsque cette fonctionnalité est activée, le SDK Braze ajoutera le dernier JWT connu de l’utilisateur actuel aux demandes réseau effectuées sur les serveurs Braze. - -{% alert note %} -Ne vous inquiétez pas, l’initialisation avec cette option seule n’aura aucune incidence sur la collecte de données jusqu’à ce que vous commenciez à [forcer l’authentification](#braze-dashboard) dans le tableau de bord de Braze. -{% endalert %} - -{% tabs %} -{% tab Javascript %} -Lorsque vous appelez `initialize`, définissez la propriété `enableSdkAuthentication` facultative à `true`. -```javascript -import* as braze from"@braze/web-sdk"; -braze.initialize("YOUR-API-KEY-HERE", { - baseUrl: "YOUR-SDK-ENDPOINT-HERE", - enableSdkAuthentication: true, -}); -``` -{% endtab %} -{% tab Java %} -Lors de la configuration de l’instance Appboy, appelez le `setIsSdkAuthenticationEnabled` vers `true`. -```java -BrazeConfig.Builder brazeConfigBuilder = new BrazeConfig.Builder() - .setIsSdkAuthenticationEnabled(true); -Braze.configure(this, brazeConfigBuilder.build()); -``` - -Vous pouvez également ajouter `true` à votre braze.xml. -{% endtab %} -{% tab KOTLIN %} -Lors de la configuration de l’instance Appboy, appelez le `setIsSdkAuthenticationEnabled` vers `true`. -```kotlin -BrazeConfig.Builder brazeConfigBuilder = BrazeConfig.Builder() - .setIsSdkAuthenticationEnabled(true) -Braze.configure(this, brazeConfigBuilder.build()) -``` - -Vous pouvez également ajouter `true` à votre braze.xml. -{% endtab %} -{% tab Objective-C %} -Pour activer l’authentification SDK, ajoutez la clé `EnableSDKAuthentication` au dictionnaire `Braze` dans votre fichier `.plist` et attribuez-lui la valeur « vrai ». - -Vous pouvez également activer l’authentification SDK lors de l’initialisation du SDK : - -```objc -[Appboy startWithApiKey:@"YOUR-API-KEY" - inApplication:application - withLaunchOptions:launchOptions - withAppboyOptions:@{ABKEnableSDKAuthenticationKey : @YES}]; -``` -{% endtab %} -{% tab Swift %} -Pour activer l’authentification SDK, ajoutez la clé `EnableSDKAuthentication` au dictionnaire `Braze` dans votre fichier `.plist` et attribuez-lui la valeur « vrai ». - -Vous pouvez également activer l’authentification SDK lors de l’initialisation du SDK : - -```swift -Appboy.start(withApiKey: "YOUR-API-KEY", - dans l’application, - withLaunchOptions:launchOptions, - withAppboyOptions:[ ABKEnableSDKAuthenticationKey : true ]) -``` -{% endtab %} -{% tab Dart %} -Actuellement, l’authentification SDK doit être activée dans le cadre de l’initialisation du SDK dans le code iOS et Android natif. Pour activer l’authentification SDK dans le SDK Flutter, suivez les intégrations pour iOS et Android depuis les autres onglets. Une fois que l’authentification SDK est activée, le reste de la fonctionnalité peut être intégré à Dart. -{% endtab %} -{% endtabs %} - -### Définir le jeton JWT de l’utilisateur actuel - -Lorsque votre application appelle la méthode `changeUser` Braze, fournissez également le jeton JWT qui a été [généré côté serveur][4]. - -Vous pouvez également configurer le jeton pour actualiser la mi-session pour l’utilisateur actuel. - -{% alert note %} -Gardez à l’esprit que `changeUser` ne doit être appelée que lorsque l’ID utilisateur a _réellement été modifié_. Vous ne devez pas utiliser cette méthode pour mettre à jour la signature si l’ID utilisateur n’a pas changé. -{% endalert %} - -{% tabs %} -{% tab Javascript %} -Fournissez le jeton JWT lorsque vous lancez [`changeUser`](https://js.appboycdn.com/web-sdk/latest/doc/modules/braze.html#changeuser) : - -```javascript -import * as braze from "@braze/web-sdk"; -braze.changeUser("NEW-USER-ID", "JWT-TOKEN-FROM-SERVER"); -``` - -Ou, lorsque vous avez actualisé la mi-session jeton de l’utilisateur : - -```javascript -import* as braze from"@braze/web-sdk"; -braze.setSdkAuthenticationSignature("NEW-JWT-TOKEN-FROM-SERVER"); -``` -{% endtab %} -{% tab Java %} - -Fournissez le jeton JWT lorsque vous lancez [`appboy.changeUser`](https://appboy.github.io/appboy-android-sdk/javadocs/com/appboy/Appboy.html#changeUser-java.lang.String-) : - -```java -Braze.getInstance(this).changeUser("NEW-USER-ID", "JWT-TOKEN-FROM-SERVER"); -``` - -Ou, lorsque vous avez actualisé la mi-session jeton de l’utilisateur : - -```java -Braze.getInstance(this).setSdkAuthenticationSignature("NEW-JWT-TOKEN-FROM-SERVER"); -``` -{% endtab %} -{% tab KOTLIN %} - -Fournissez le jeton JWT lorsque vous lancez [`appboy.changeUser`](https://appboy.github.io/appboy-android-sdk/javadocs/com/appboy/Appboy.html#changeUser-java.lang.String-) : - -```kotlin -Braze.getInstance(this).changeUser("NEW-USER-ID", "JWT-TOKEN-FROM-SERVER") -``` - -Ou, lorsque vous avez actualisé la mi-session jeton de l’utilisateur : - -```kotlin -Braze.getInstance(this).setSdkAuthenticationSignature("NEW-JWT-TOKEN-FROM-SERVER") -``` -{% endtab %} -{% tab Objective-C %} - -Fournissez le jeton JWT lorsque vous lancez [`changeUser`](https://appboy.github.io/appboy-ios-sdk/docs/interface_appboy.html#ac8b369b40e15860b0ec18c0f4b46ac69) : - -```objc -[[Appboy sharedInstance] changeUser:@"userId" sdkAuthSignature:@"signature"]; -``` - -Ou, lorsque vous avez actualisé la mi-session jeton de l’utilisateur : - -```objc -[[Appboy sharedInstance] setSdkAuthenticationSignature:@"signature"]; -``` -{% endtab %} -{% tab Swift %} - -Fournissez le jeton JWT lorsque vous lancez [`changeUser`](https://appboy.github.io/appboy-ios-sdk/docs/interface_appboy.html#ac8b369b40e15860b0ec18c0f4b46ac69) : - -```swift -Appboy.sharedInstance()?.changeUser("userId", sdkAuthSignature: "signature") -``` -Ou, lorsque vous avez actualisé la mi-session jeton de l’utilisateur : - -```swift -Appboy.sharedInstance()?.setSdkAuthenticationSignature("signature") -``` -{% endtab %} -{% tab Dart %} - -Fournissez le jeton JWT lorsque vous lancez [`changeUser`](https://js.appboycdn.com/web-sdk/latest/doc/modules/braze.html#changeuser) : - -```dart -braze.changeUser("userId", sdkAuthSignature: "signature") -``` -Ou, lorsque vous avez actualisé la mi-session jeton de l’utilisateur : - -```dart -braze.setSdkAuthenticationSignature("signature") -``` - -{% endtab %} -{% endtabs %} - -### Enregistrer une fonction de rappel pour les jetons invalides {#sdk-callback} - -Lorsque cette fonction est définie comme [Required](#enforcement-options), les scénarios suivants entraîneront le rejet des demandes SDK par Braze : -- Le JWT a expiré au moment où l’API Braze a été reçue -- JWT était vide ou manquant -- JWT n’a pas vérifié les clés publiques que vous avez téléchargées sur le tableau de bord de Braze - -Vous pouvez utiliser `subscribeToSdkAuthenticationFailures` pour vous abonner à être averti lorsque les demandes SDK échouent pour l’une de ces raisons. Une fonction de rappel contient un objet avec les [`errorCode`][9], `reason` pour l’erreur, le `userId` de la demande (si l’utilisateur n’est pas anonyme) et l’authentification `signature` qui a causé l’erreur. - -Les demandes échouées seront périodiquement récupérées jusqu’à ce que votre application fournisse un nouveau JWT valide. Si cet utilisateur est toujours connecté, vous pouvez utiliser cette fonction de rappel comme une opportunité de demander un nouveau JWT depuis votre serveur et de fournir le SDK de Braze avec ce nouveau jeton valide. - -{% alert tip %} -Ces méthodes de fonction de rappel sont un excellent endroit pour ajouter votre propre service de surveillance ou d’erreur afin de suivre la fréquence à laquelle vos demandes de Braze sont rejetées. -{% endalert %} - -{% tabs %} -{% tab Javascript %} -```javascript -import* as braze from"@braze/web-sdk"; -braze.subscribeToSdkAuthenticationFailures((error) => { - // TODO: Vous pouvez, à titre facultatif, vous connecter à votre service error-reporting (signalement des erreurs) - // TODO: Vérifiez si `user_id` de `error` correspond à l’utilisateur actuellement connecté - const updated_jwt = await getNewTokenSomehow(error); - appboy.setSdkAuthenticationSignature(updated_jwt); -}); -``` -{% endtab %} -{% tab Java %} -```java -Braze.getInstance(this).subscribeToSdkAuthenticationFailures(error -> { - // TODO: Vous pouvez, à titre facultatif, vous connecter à votre service error-reporting (signalement des erreurs) - // TODO: Vérifiez si l’utilisateur de l’erreur correspond à l’utilisateur actuellement connecté - String newToken = getNewTokenSomehow(error); - Braze.getInstance(getContext()).setSdkAuthenticationSignature(newToken); -}); -``` -{% endtab %} -{% tab KOTLIN %} -```kotlin -Braze.getInstance(this).subscribeToSdkAuthenticationFailures({ error: BrazeSdkAuthenticationErrorEvent -> - // TODO: Vous pouvez, à titre facultatif, vous connecter à votre service error-reporting (signalement des erreurs) - // TODO: Vérifiez si `user_id` de `error` correspond à l’utilisateur actuellement connecté - val newToken: String = getNewTokenSomehow(error) - Braze.getInstance(getContext()).setSdkAuthenticationSignature(newToken) -}) -``` -{% endtab %} -{% tab Objective-C %} -```objc -[[Appboy sharedInstance] setSdkAuthenticationDelegate:delegate]; - -// Méthodes d’implémentation dans la délégation -- (void)handleSdkAuthenticationError:(ABKSdkAuthenticationError *)error { - // TODO: Vous pouvez, à titre facultatif, vous connecter à votre service error-reporting (signalement des erreurs) - // TODO: Vérifiez si `user_id` de `error` correspond à l’utilisateur actuellement connecté - NSLog(@"Signature d’authentification du SDK invalide."); - NSString *newSignature = getNewSignatureSomehow(error); - [[Appboy sharedInstance] setSdkAuthenticationSignature:newSignature]; -} -``` -{% endtab %} -{% tab Swift %} -```swift -Appboy.sharedInstance()?.setSdkAuthenticationDelegate(delegate) - -// Méthodes d’implémentation dans la délégation -func handle(_ error: ABKSdkAuthenticationError?) { - // TODO: Vous pouvez, à titre facultatif, vous connecter à votre service error-reporting (signalement des erreurs) - // TODO: Vérifiez si `user_id` de `error` correspond à l’utilisateur actuellement connecté - print("Signature d’authentification du SDK invalide.") - let newSignature = getNewSignatureSomehow(error) - Appboy.sharedInstance()?.setSdkAuthenticationSignature(newSignature) -} -``` -{% endtab %} -{% tab Dart %} -```dart -braze.setBrazeSdkAuthenticationErrorCallback((BrazeSdkAuthenticationError error) async { - // TODO: Vous pouvez, à titre facultatif, vous connecter à votre service error-reporting (signalement des erreurs) - // TODO: Vérifiez si `user_id` de `error` correspond à l’utilisateur actuellement connecté - print("Signature d’authentification du SDK invalide.") - let newSignature = getNewSignatureSomehow(error) - braze.setSdkAuthenticationSignature(newSignature); -}); -``` -{% endtab %} -{% endtabs %} - -## Ajout de clés publiques {#key-management} - -Dans la page **Manage Settings (Gérer les paramètres)** du tableau de bord, ajoutez votre clé publique à une application spécifique du tableau de bord de Braze. Chaque application prend en charge jusqu’à 3 clés publiques. Notez que les mêmes clés publiques/privées peuvent être utilisées sur les applications. - -Pour ajouter une clé publique : - -1. Choisissez l’application dans la liste des applications disponibles. -2. Sous **Authentification SDK**, cliquez sur **Ajouter une clé publique**. -3. Coller dans la clé publique et ajouter une description facultative. -4. Après avoir enregistré vos modifications, la clé apparaîtra dans la liste des clés publiques. - -Pour supprimer une clé ou pour définir une clé dans la clé principale, choisissez l’action correspondante dans le menu de débordement à côté de chaque clé. - -## Activation du tableau de bord de Braze {#braze-dashboard} - -Une fois votre [Intégration côté serveur][1] et [Intégration SDK][2] terminées, vous pouvez commencer à activer cette fonction pour ces applications spécifiques. - -N’oubliez pas que les demandes SDK continueront à circuler comme d’habitude sans authentification, sauf si le paramètre d’authentification SDK de l’application est passé à **Requis** dans le tableau de bord de Braze. - -Si quelque chose ne va pas dans votre intégration (c.-à-d. votre application ne transmet pas correctement les jetons au SDK ou votre serveur génère des jetons invalides), il suffit de désactiver cette fonctionnalité dans le tableau de bord de Braze et les données recommenceront à circuler comme d’habitude, sans vérification. - -### Options d’application {#enforcement-options} - -Dans la page **Manage Settings (Gérer les paramètres)** du tableau de bord, chaque application dispose de trois états d’authentification SDK qui contrôlent la manière dont Braze vérifie les requêtes. - -| Réglage| Description| -| ------ | ---------- | -| **Désactivé** | Braze ne vérifiera pas le JWT fourni à un utilisateur. (Paramètre par défaut)| -| **Facultatif** | Braze vérifiera les demandes pour les utilisateurs connectés, mais ne rejettera pas les demandes non valides. | -| **Requis** | Braze vérifiera les demandes pour les utilisateurs connectés, et rejettera les JWT non valides.| -{: .reset-td-br-1 .reset-td-br-2} - -![][8] - -Le paramètre **Optional (Facultatif)** est un moyen utile de surveiller l’impact potentiel que cette fonction aura sur le trafic SDK de votre application. - -Les signatures JWT non valides seront signalées dans les modes **Facultatif** et **Requis** mais seulement le mode **Requis** rejettera les demandes de SDK obligeant les applications à réessayer et à demander de nouvelles signatures. - -## Analyse {#analytics} - -Chaque application présente une ventilation des erreurs d’authentification SDK relevées lorsque cette fonction est en mode **Facultatif** et **Requis**. - -Les données sont disponibles en temps réel, et vous pouvez déplacer le curseur sur les points du graphique pour voir la répartition des erreurs pour une date donnée. - -![Graphique montrant le nombre d’erreurs d’authentification. Le nombre total d’erreurs, le type d’erreur et la plage de dates réglables sont également affichés.][10]{: style="max-width:80%"} - -## Codes d’erreur {#error-codes} - -| Code d’erreur| Cause de l’erreur | Description | -| -------- | ------------ | --------- | -| 10 | `EXPIRATION_REQUIRED` | L’expiration est un champ obligatoire pour l’utilisation de Braze.| -| 20 | `DECODING_ERROR` | Clé publique non conforme ou erreur générale non détectée.| -| 21 | `SUBJECT_MISMATCH` | Les sujets attendus et réels ne sont pas les mêmes.| -| 22 | `EXPIRED` | Le jeton fourni a expiré.| -| 23 | `INVALID_PAYLOAD` | La charge utile jeton n’est pas valide.| -| 24 | `INCORRECT_ALGORITHM` | L’algorithme du jeton n’est pas pris en charge.| -| 25 | `PUBLIC_KEY_ERROR` | La clé publique n’a pas pu être convertie au format approprié.| -| 26 | `MISSING_TOKEN` | Aucun jeton n’a été fourni dans la demande.| -| 27 | `NO_MATCHING_PUBLIC_KEYS` | Aucune clé publique ne correspond au jeton fourni.| -| 28 | `PAYLOAD_USER_ID_MISMATCH` | Tous les identifiants d’utilisateur de la demande de charge utile ne sont pas requis.| -{: .reset-td-br-1 .reset-td-br-2, .reset-td-br-3} - -## Foire aux Questions {#faq} - -#### Cette fonction doit-elle être activée sur toutes mes applications en même temps ? {#faq-app-by-app} - -Non, cette fonctionnalité peut être activée pour des applications spécifiques et n’a pas besoin d’être utilisée sur toutes vos applications, en même temps. - -#### Que se passe-t-il pour les utilisateurs qui sont toujours sur les versions antérieures de mon application ? {#faq-sdk-backcompatibility} - -Lorsque vous commencez à faire appliquer cette fonctionnalité, les demandes effectuées par les versions anciennes d’applications seront rejetées par Braze et récupérées par les SDK. Une fois que les utilisateurs ont mis à niveau leur application vers une version prise en charge, les demandes mises en file d’attente seront à nouveau acceptées. - -Dans la mesure du possible, il convient de faire en sorte que les utilisateurs effectuent la mise à niveau comme pour toute autre mise à niveau obligatoire. Vous pouvez également conserver la fonction [Optional][6] jusqu’à ce que vous voyiez qu’un pourcentage acceptable d’utilisateurs a été mis à niveau. - -#### Quelle expiration dois-je utiliser lors de la génération de jetons JWT ? {#faq-expiration} - -Nous vous recommandons d’utiliser la valeur la plus élevée parmi : la durée moyenne de la session, l’expiration du cookie/jeton de la session, ou la fréquence à laquelle votre application rafraîchirait autrement le profil utilisateur actuel. - -#### Que se passe-t-il si un JWT expire au milieu de la session d’un utilisateur ? {#faq-jwt-expiration} - -Si le jeton d’un utilisateur expire à mi-session, le SDK a une [fonction de rappel][7]. Il sera appelé à laisser votre application savoir qu’un nouveau jeton JWT est nécessaire pour continuer à envoyer des données à Braze. - -#### Que se passe-t-il si mon intégration côté serveur est interrompue et que je ne peux plus créer JWT ? {#faq-server-temps d’arrêt} - -Si votre serveur n’est pas en mesure de fournir des jetons JWT ou si vous remarquez un problème d’intégration, vous pouvez toujours désactiver la fonction dans le tableau de bord de Braze. - -Une fois désactivée, toutes les demandes de SDK échouées en attente seront finalement récupérées par le SDK et acceptées par Braze. - -#### Pourquoi cette fonction utilise-t-elle des clés publiques/privées plutôt que des secrets partagés ? {#faq-shared-secrets} - -Lorsque vous utilisez des secrets partagés, toute personne ayant accès à ce secret partagé (c.-à-d. la page du tableau de bord de Braze) serait en mesure de générer des jetons et de se faire passer pour vos utilisateurs finaux. - -Nous utilisons plutôt des clés publiques/privées pour que ni même les employés de Braze (seuls les utilisateurs de votre tableau de bord) aient accès à vos clés privées. - -#### Comment les demandes rejetées seront-elles récupérées ? {#faq-retry-logic} - -Lorsqu’une demande est rejetée en raison d’une erreur d’authentification, les SDK invoqueront votre fonction de rappel utilisé pour actualiser la signature JWT de l’utilisateur. - -Les demandes réessaieront périodiquement en utilisant une approche de délais exponentielle. Après 50 tentatives consécutives échouées, les nouvelles tentatives seront interrompues jusqu’à la prochaine session. Chaque SDK dispose également d’une méthode qui permet de demander manuellement un rafraîchissement des données. - -[1]: #server-side-integration -[2]: #sdk-integration -[3]: #key-management -[4]: #braze-dashboard -[5]: #create-jwt -[6]: #enforcement-options -[7]: #sdk-callback -[8]: {% image_buster /assets/img/sdk-auth-settings.png %} -[9]: #error-codes -[10]: {% image_buster /assets/img/sdk-auth-analytics.png %} -[11]: https://js.appboycdn.com/web-sdk/latest/doc/modules/braze.html#changeuser +--- +nav_title: Authentification SDK +article_title: Authentification SDK +page_order: 6 +description: "Cet article de référence couvre l’authentification SDK et la manière d’activer cette fonctionnalité dans le SDK Braze." +platform: + - iOS + - Android + - Web + +--- + +# Authentification SDK + +L’authentification SDK vous permet de fournir des preuves cryptographiques (côté serveur généré) aux requêtes SDK effectuées pour au nom des utilisateurs connectés. Lorsque cette fonctionnalité est activée dans votre application, le tableau de bord de Braze peut être configuré pour rejeter les demandes avec une signature JSON Web Token (JWT) manquante ou non valide. + +Lorsqu’elle est activée, cette fonctionnalité empêchera les requêtes non autorisées qui utilisent la clé API SDK de votre application pour les utilisateurs connectés, notamment : +- Envoi d’événements personnalisés, d’attributs, d’achats et de données de session +- Création de nouveaux utilisateurs dans votre groupe d’apps Braze +- Mise à jour des attributs de profil utilisateur standard +- Réception ou déclenchement de messages + +## Démarrage + +Il existe quatre étapes de haut niveau pour commencer : + +1. [Intégration côté serveur][1] - Générez une paire de clés publique et privée et utilisez votre clé privée pour créer un JWT pour l’utilisateur connecté actuel.

+2. [Intégration SDK][2] - Activez cette fonctionnalité dans le SDK Braze et demandez le JWT généré à partir de votre serveur.

+3. [Ajout de clés publiques][3] - Ajoutez votre _clé publique_ au tableau de bord de Braze dans la page **Manage Settings (Gérer les paramètres)**.

+4. [Basculer l’application dans le tableau de bord de Braze][4] - Basculez l’application de cette fonctionnalité dans le tableau de bord de Braze, application par application. + +## Intégration côté serveur {#server-side-integration} + +### Générer une paire de clés publiques/privées {#generate-keys} + +Générer une paire de clés publiques/privées RSA. La clé publique sera ajoutée au tableau de bord de Braze, tandis que la clé privée devra être stockée en toute sécurité sur votre serveur. + +Nous recommandons une clé RSA avec 2 048 bits pour une utilisation avec l’algorithme RS256 JWT. + +{% alert warning %} +N’oubliez pas de conserver vos clés privées _privées_. N’exposez jamais ou ne saisissez jamais votre clé privée dans votre application ou site Internet. Toute personne qui connaît votre clé privée peut se faire passer pour un autre utilisateur ou créer des utilisateurs au nom de votre application. +{% endalert %} + +### Créer un jeton Web JSON pour l’utilisateur actuel {#create-jwt} + +Une fois que vous avez votre clé privée, votre application côté serveur doit l’utiliser pour renvoyer un JWT à votre application ou site Internet pour l’utilisateur actuellement connecté. + +En général, cette logique peut aller partout où votre application demande normalement le profil de l’utilisateur actuel, comme un endpoint de connexion ou partout où votre application a rafraîchi le profil de l’utilisateur actuel. + +Lors de la génération du JWT, les champs suivants sont attendus : + +**En-tête JWT** + +| Champ | Requis | Description | +| ----- | -------- | ----------------------------------- | +| `alg` | Oui | L’algorithme pris en charge est `RS256`. | +| `typ` | Oui | Le type doit être égal à `JWT`. | + +{: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3} + +**Charge utile JWT** + +| Champ | Requis | Description | +| ----- | -------- | -------------------------------------------------------------------------------------- | +| `sub` | Oui | Le « sujet » doit être égal à l’ID utilisateur que vous fournissez à Braze SDK lorsque vous appelez `changeUser` | +| `exp` | Oui | L’« expiration » ou le moment où vous souhaitez que ce jeton expire. | +| `aud` | Non | La demande d’« audience » est facultative, et si elle est effectuée, elle doit être égale à `braze` | +| `iss` | Non | La demande « émetteur » est facultative, et si elle est effectuée, elle doit être égale à votre clé API SDK. | + +{: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3} + +### Bibliothèques JWT + +Pour en savoir plus sur les jetons Web JSON ou pour parcourir les nombreuses bibliothèques open source qui simplifient ce processus de signature, consultez [https://jwt.io](https://jwt.io). + +## Intégration SDK {#sdk-integration} + +Cette fonctionnalité est disponible à partir des [versions SDK]({{ site.baseurl }}/user_guide/engagement_tools/campaigns/ideas_and_strategies/new_features/#filtering-by-most-recent-app-versions) suivantes : + +{% sdk_min_versions web:3.3.0 ios:4.3.0 android:14.0.0 %} + +### Activez cette fonction dans le SDK Braze. + +Lorsque cette fonctionnalité est activée, le SDK Braze ajoutera le dernier JWT connu de l’utilisateur actuel aux demandes réseau effectuées sur les serveurs Braze. + +{% alert note %} +Ne vous inquiétez pas, l’initialisation avec cette option seule n’aura aucune incidence sur la collecte de données jusqu’à ce que vous commenciez à [forcer l’authentification](#braze-dashboard) dans le tableau de bord de Braze. +{% endalert %} + +{% tabs %} +{% tab Javascript %} +Lorsque vous appelez `initialize`, définissez la propriété `enableSdkAuthentication` facultative à `true`. +```javascript +import * as braze from"@braze/web-sdk"; +braze.initialize("YOUR-API-KEY-HERE", { + baseUrl: "YOUR-SDK-ENDPOINT-HERE", + enableSdkAuthentication: true, +}); +``` +{% endtab %} +{% tab Java %} +Lors de la configuration de l’instance Appboy, appelez le `setIsSdkAuthenticationEnabled` vers `true`. +```java +BrazeConfig.Builder brazeConfigBuilder = new BrazeConfig.Builder() + .setIsSdkAuthenticationEnabled(true); +Braze.configure(this, brazeConfigBuilder.build()); +``` + +Vous pouvez également ajouter `true` à votre braze.xml. +{% endtab %} +{% tab KOTLIN %} +Lors de la configuration de l’instance Appboy, appelez le `setIsSdkAuthenticationEnabled` vers `true`. +```kotlin +BrazeConfig.Builder brazeConfigBuilder = BrazeConfig.Builder() + .setIsSdkAuthenticationEnabled(true) +Braze.configure(this, brazeConfigBuilder.build()) +``` + +Vous pouvez également ajouter `true` à votre braze.xml. +{% endtab %} +{% tab Objective-C %} +Pour activer l’authentification SDK, ajoutez la clé `EnableSDKAuthentication` au dictionnaire `Braze` dans votre fichier `.plist` et attribuez-lui la valeur « vrai ». + +Vous pouvez également activer l’authentification SDK lors de l’initialisation du SDK : + +```objc +[Appboy startWithApiKey:@"YOUR-API-KEY" + inApplication:application + withLaunchOptions:launchOptions + withAppboyOptions:@{ABKEnableSDKAuthenticationKey : @YES}]; +``` +{% endtab %} +{% tab Swift %} +Pour activer l’authentification SDK, ajoutez la clé `EnableSDKAuthentication` au dictionnaire `Braze` dans votre fichier `.plist` et attribuez-lui la valeur « vrai ». + +Vous pouvez également activer l’authentification SDK lors de l’initialisation du SDK : + +```swift +Appboy.start(withApiKey: "YOUR-API-KEY", + in:application, + withLaunchOptions:launchOptions, + withAppboyOptions:[ ABKEnableSDKAuthenticationKey : true ]) +``` +{% endtab %} +{% tab Dart %} +Actuellement, l’authentification SDK doit être activée dans le cadre de l’initialisation du SDK dans le code iOS et Android natif. Pour activer l’authentification SDK dans le SDK Flutter, suivez les intégrations pour iOS et Android depuis les autres onglets. Une fois que l’authentification SDK est activée, le reste de la fonctionnalité peut être intégré à Dart. +{% endtab %} +{% endtabs %} + +### Définir le jeton JWT de l’utilisateur actuel + +Lorsque votre application appelle la méthode `changeUser` Braze, fournissez également le jeton JWT qui a été [généré côté serveur][4]. + +Vous pouvez également configurer le jeton pour actualiser la mi-session pour l’utilisateur actuel. + +{% alert note %} +Gardez à l’esprit que `changeUser` ne doit être appelée que lorsque l’ID utilisateur a _réellement été modifié_. Vous ne devez pas utiliser cette méthode pour mettre à jour la signature si l’ID utilisateur n’a pas changé. +{% endalert %} + +{% tabs %} +{% tab Javascript %} +Fournissez le jeton JWT lorsque vous appelez [`changeUser`](https://js.appboycdn.com/web-sdk/latest/doc/modules/braze.html#changeuser +) : + +```javascript +import * as braze from "@braze/web-sdk"; +braze.changeUser("NEW-USER-ID", "JWT-TOKEN-FROM-SERVER"); +``` + +Ou, lorsque vous avez actualisé la mi-session jeton de l’utilisateur : + +```javascript +import * as braze from"@braze/web-sdk"; +braze.setSdkAuthenticationSignature("NEW-JWT-TOKEN-FROM-SERVER"); +``` +{% endtab %} +{% tab Java %} + +Fournissez le jeton JWT lorsque vous lancez [`appboy.changeUser`](https://braze-inc.github.io/braze-android-sdk/javadocs/com/appboy/Appboy.html#changeUser-java.lang.String-) : + +```java +Braze.getInstance(this).changeUser("NEW-USER-ID", "JWT-TOKEN-FROM-SERVER"); +``` + +Ou, lorsque vous avez actualisé la mi-session jeton de l’utilisateur : + +```java +Braze.getInstance(this).setSdkAuthenticationSignature("NEW-JWT-TOKEN-FROM-SERVER"); +``` +{% endtab %} +{% tab KOTLIN %} + +Fournissez le jeton JWT lorsque vous lancez [`appboy.changeUser`](https://braze-inc.github.io/braze-android-sdk/javadocs/com/appboy/Appboy.html#changeUser-java.lang.String-) : + +```kotlin +Braze.getInstance(this).changeUser("NEW-USER-ID", "JWT-TOKEN-FROM-SERVER") +``` + +Ou, lorsque vous avez actualisé la mi-session jeton de l’utilisateur : + +```kotlin +Braze.getInstance(this).setSdkAuthenticationSignature("NEW-JWT-TOKEN-FROM-SERVER") +``` +{% endtab %} +{% tab Objective-C %} + +Fournissez le jeton JWT lorsque vous lancez [`changeUser`](https://appboy.github.io/appboy-ios-sdk/docs/interface_appboy.html#ac8b369b40e15860b0ec18c0f4b46ac69) : + +```objc +[[Appboy sharedInstance] changeUser:@"userId" sdkAuthSignature:@"signature"]; +``` + +Ou, lorsque vous avez actualisé la mi-session jeton de l’utilisateur : + +```objc +[[Appboy sharedInstance] setSdkAuthenticationSignature:@"signature"]; +``` +{% endtab %} +{% tab Swift %} + +Fournissez le jeton JWT lorsque vous lancez [`changeUser`](https://appboy.github.io/appboy-ios-sdk/docs/interface_appboy.html#ac8b369b40e15860b0ec18c0f4b46ac69) : + +```swift +Appboy.sharedInstance()?.changeUser("userId", sdkAuthSignature: "signature") +``` +Ou, lorsque vous avez actualisé la mi-session jeton de l’utilisateur : + +```swift +Appboy.sharedInstance()?.setSdkAuthenticationSignature("signature") +``` +{% endtab %} +{% tab Dart %} + +Fournissez le jeton JWT lorsque vous lancez [`changeUser`](https://js.appboycdn.com/web-sdk/latest/doc/modules/braze.html#changeuser) : + +```dart +braze.changeUser("userId", sdkAuthSignature: "signature") +``` +Ou, lorsque vous avez actualisé la mi-session jeton de l’utilisateur : + +```dart +braze.setSdkAuthenticationSignature("signature") +``` + +{% endtab %} +{% endtabs %} + +### Enregistrer une fonction de rappel pour les jetons invalides {#sdk-callback} + +Lorsque cette fonction est définie comme [Required](#enforcement-options), les scénarios suivants entraîneront le rejet des demandes SDK par Braze : +- Le JWT a expiré au moment où l’API Braze a été reçue +- JWT était vide ou manquant +- JWT n’a pas vérifié les clés publiques que vous avez téléchargées sur le tableau de bord de Braze + +Vous pouvez utiliser `subscribeToSdkAuthenticationFailures` pour vous abonner à être averti lorsque les demandes SDK échouent pour l’une de ces raisons. Une fonction de rappel contient un objet avec les [`errorCode`][9], `reason` pour l’erreur, le `userId` de la demande (si l’utilisateur n’est pas anonyme) et l’authentification `signature` qui a causé l’erreur. + +Les demandes échouées seront périodiquement récupérées jusqu’à ce que votre application fournisse un nouveau JWT valide. Si cet utilisateur est toujours connecté, vous pouvez utiliser cette fonction de rappel comme une opportunité de demander un nouveau JWT depuis votre serveur et de fournir le SDK de Braze avec ce nouveau jeton valide. + +{% alert tip %} +Ces méthodes de fonction de rappel sont un excellent endroit pour ajouter votre propre service de surveillance ou d’erreur afin de suivre la fréquence à laquelle vos demandes de Braze sont rejetées. +{% endalert %} + +{% tabs %} +{% tab Javascript %} +```javascript +import * as braze from"@braze/web-sdk"; +braze.subscribeToSdkAuthenticationFailures((error) => { + // TODO: Optionally log to your error-reporting service + // TODO: Check if the `user_id` within the `error` matches the currently logged-in user + const updated_jwt = await getNewTokenSomehow(error); + appboy.setSdkAuthenticationSignature(updated_jwt); +}); +``` +{% endtab %} +{% tab Java %} +```java +Braze.getInstance(this).subscribeToSdkAuthenticationFailures(error -> { + // TODO: Optionally log to your error-reporting service + // TODO: Check if the error user matches the currently logged-in user + String newToken = getNewTokenSomehow(error); + Braze.getInstance(getContext()).setSdkAuthenticationSignature(newToken); +}); +``` +{% endtab %} +{% tab KOTLIN %} +```kotlin +Braze.getInstance(this).subscribeToSdkAuthenticationFailures({ error: BrazeSdkAuthenticationErrorEvent -> + // TODO: Optionally log to your error-reporting service + // TODO: Check if the `user_id` within the `error` matches the currently logged-in user + val newToken: String = getNewTokenSomehow(error) + Braze.getInstance(getContext()).setSdkAuthenticationSignature(newToken) +}) +``` +{% endtab %} +{% tab Objective-C %} +```objc +[[Appboy sharedInstance] setSdkAuthenticationDelegate:delegate]; + +// Method to implement in delegate +- (void)handleSdkAuthenticationError:(ABKSdkAuthenticationError *)error { + // TODO: Optionally log to your error-reporting service + // TODO: Check if the `user_id` within the `error` matches the currently logged-in user + NSLog(@"Invalid SDK Authentication signature."); + NSString *newSignature = getNewSignatureSomehow(error); + [[Appboy sharedInstance] setSdkAuthenticationSignature:newSignature]; +} +``` +{% endtab %} +{% tab Swift %} +```swift +Appboy.sharedInstance()?.setSdkAuthenticationDelegate(delegate) + +// Method to implement in delegate +func handle(_ error: ABKSdkAuthenticationError?) { + // TODO: Optionally log to your error-reporting service + // TODO: Check if the `user_id` within the `error` matches the currently logged-in user + print("Invalid SDK Authentication signature.") + let newSignature = getNewSignatureSomehow(error) + Appboy.sharedInstance()?.setSdkAuthenticationSignature(newSignature) +} +``` +{% endtab %} +{% tab Dart %} +```dart +braze.setBrazeSdkAuthenticationErrorCallback((BrazeSdkAuthenticationError error) async { + // TODO: Optionally log to your error-reporting service + // TODO: Check if the `user_id` within the `error` matches the currently logged-in user + print("Invalid SDK Authentication signature.") + let newSignature = getNewSignatureSomehow(error) + braze.setSdkAuthenticationSignature(newSignature); +}); +``` +{% endtab %} +{% endtabs %} + +## Ajouter des clés publiques {#key-management} + +Dans la page **Manage Settings (Gérer les paramètres)** du tableau de bord, ajoutez votre clé publique à une application spécifique du tableau de bord de Braze. Chaque application prend en charge jusqu’à 3 clés publiques. Notez que les mêmes clés publiques/privées peuvent être utilisées sur les applications. + +Pour ajouter une clé publique : + +1. Choisissez l’application dans la liste des applications disponibles. +2. Sous **SDK Authentication** (Authentification SDK), cliquez sur **Add Public Key** (Ajouter une clé publique). +3. Coller dans la clé publique et ajouter une description facultative. +4. Après avoir enregistré vos modifications, la clé apparaîtra dans la liste des clés publiques. + +Pour supprimer une clé ou pour définir une clé dans la clé principale, choisissez l’action correspondante dans le menu de débordement à côté de chaque clé. + +## Activation dans le tableau de bord de Braze {#braze-dashboard} + +Une fois votre [Intégration côté serveur][1] et [Intégration SDK][2] terminées, vous pouvez commencer à activer cette fonction pour ces applications spécifiques. + +N’oubliez pas que les demandes SDK continueront à circuler comme d’habitude sans authentification, sauf si le paramètre d’authentification SDK de l’application est passé à **Requis** dans le tableau de bord de Braze. + +Si quelque chose ne va pas dans votre intégration (c.-à-d. votre application ne transmet pas correctement les jetons au SDK ou votre serveur génère des jetons invalides), il suffit de désactiver cette fonctionnalité dans le tableau de bord de Braze et les données recommenceront à circuler comme d’habitude, sans vérification. + +### Options d’application {#enforcement-options} + +Dans la page **Manage Settings (Gérer les paramètres)** du tableau de bord, chaque application dispose de trois états d’authentification SDK qui contrôlent la manière dont Braze vérifie les requêtes. + +| Réglage| Description| +| ------ | ---------- | +| **Désactivé** | Braze ne vérifiera pas le JWT fourni à un utilisateur. (Paramètre par défaut)| +| **Facultatif** | Braze vérifiera les demandes pour les utilisateurs connectés, mais ne rejettera pas les demandes non valides. | +| **Requis** | Braze vérifiera les demandes pour les utilisateurs connectés et rejettera les JWT non valides.| +{: .reset-td-br-1 .reset-td-br-2} + +![][8] + +Le paramètre **Optional (Facultatif)** est un moyen utile de surveiller l’impact potentiel que cette fonction aura sur le trafic SDK de votre application. + +Les signatures JWT non valides seront signalées dans les modes **Optional** (Facultatif) et **Required** (Requis) mais seulement le mode **Required** (Requis) rejettera les demandes de SDK obligeant les applications à réessayer et à demander de nouvelles signatures. + +## Analytique {#analytics} + +Chaque application présente une ventilation des erreurs d’authentification SDK relevées lorsque cette fonction est en mode **Optional** (Facultatif) et **Required** (Requis). + +Les données sont disponibles en temps réel, et vous pouvez déplacer le curseur sur les points du graphique pour voir la répartition des erreurs pour une date donnée. + +![Graphique montrant le nombre d’erreurs d’authentification. Le nombre total d’erreurs, le type d’erreur et la plage de dates réglables sont également affichés.][10]{: style="max-width:80%"} + +## Codes d’erreur {#error-codes} + +| Code d’erreur| Cause de l’erreur | Description | +| -------- | ------------ | --------- | +| 10 | `EXPIRATION_REQUIRED` | L’expiration est un champ obligatoire pour l’utilisation de Braze.| +| 20 | `DECODING_ERROR` | Clé publique non conforme ou erreur générale non détectée.| +| 21 | `SUBJECT_MISMATCH` | Les sujets attendus et réels ne sont pas les mêmes.| +| 22 | `EXPIRED` | Le jeton fourni a expiré.| +| 23 | `INVALID_PAYLOAD` | La charge utile du jeton n’est pas valide.| +| 24 | `INCORRECT_ALGORITHM` | L’algorithme du jeton n’est pas pris en charge.| +| 25 | `PUBLIC_KEY_ERROR` | La clé publique n’a pas pu être convertie au format approprié.| +| 26 | `MISSING_TOKEN` | Aucun jeton n’a été fourni dans la requête.| +| 27 | `NO_MATCHING_PUBLIC_KEYS` | Aucune clé publique ne correspond au jeton fourni.| +| 28 | `PAYLOAD_USER_ID_MISMATCH` | Tous les identifiants d’utilisateur dans la charge utile de la requête ne correspondent pas à ceux pas requis.| +{: .reset-td-br-1 .reset-td-br-2, .reset-td-br-3} + +## Foire aux Questions {#faq} + +#### Cette fonctionnalité doit-elle être activée sur toutes mes applications en même temps ? {#faq-app-by-app} + +Non, cette fonctionnalité peut être activée pour des applications spécifiques et n’a pas besoin d’être utilisée sur toutes vos applications, en même temps. + +#### Que se passe-t-il pour les utilisateurs qui sont toujours sur les versions antérieures de mon application ? {#faq-sdk-backward-compatibility} + +Lorsque vous commencez à faire appliquer cette fonctionnalité, les demandes effectuées par les versions anciennes d’applications seront rejetées par Braze et récupérées par les SDK. Une fois que les utilisateurs ont mis à niveau leur application vers une version prise en charge, les demandes mises en file d’attente seront à nouveau acceptées. + +Dans la mesure du possible, il convient de faire en sorte que les utilisateurs effectuent la mise à niveau comme pour toute autre mise à niveau obligatoire. Vous pouvez également conserver la fonction [Optional][6] jusqu’à ce que vous voyiez qu’un pourcentage acceptable d’utilisateurs a été mis à niveau. + +#### Quelle expiration dois-je utiliser lors de la génération de jetons JWT ? {#faq-expiration} + +Nous vous recommandons d’utiliser la valeur la plus élevée parmi : la durée moyenne de la session, l’expiration du cookie/jeton de la session, ou la fréquence à laquelle votre application rafraîchirait autrement le profil utilisateur actuel. + +#### Que se passe-t-il si un JWT expire au milieu de la session d’un utilisateur ? {#faq-jwt-expiration} + +Si le jeton d’un utilisateur expire à mi-session, le SDK a une [fonction de rappel][7]. Il sera appelé à laisser votre application savoir qu’un nouveau jeton JWT est nécessaire pour continuer à envoyer des données à Braze. + +#### Que se passe-t-il si mon intégration côté serveur est interrompue et que je ne peux plus créer un JWT ? {#faq-server-downtime} + +Si votre serveur n’est pas en mesure de fournir des jetons JWT ou si vous remarquez un problème d’intégration, vous pouvez toujours désactiver la fonction dans le tableau de bord de Braze. + +Une fois désactivée, toutes les demandes de SDK échouées en attente seront finalement récupérées par le SDK et acceptées par Braze. + +#### Pourquoi cette fonction utilise-t-elle des clés publiques/privées plutôt que des secrets partagés ? {#faq-shared-secrets} + +Lorsque vous utilisez des secrets partagés, toute personne ayant accès à ce secret partagé (c.-à-d. la page du tableau de bord de Braze) serait en mesure de générer des jetons et de se faire passer pour vos utilisateurs finaux. + +Nous utilisons plutôt des clés publiques/privées pour que ni même les employés de Braze (seuls les utilisateurs de votre tableau de bord) aient accès à vos clés privées. + +#### Comment les demandes rejetées seront-elles récupérées ? {#faq-retry-logic} + +Lorsqu’une demande est rejetée en raison d’une erreur d’authentification, les SDK invoqueront votre fonction de rappel utilisé pour actualiser la signature JWT de l’utilisateur. + +Les demandes réessaieront périodiquement en utilisant une approche de délais exponentielle. Après 50 tentatives consécutives échouées, les nouvelles tentatives seront interrompues jusqu’à la prochaine session. Chaque SDK dispose également d’une méthode qui permet de demander manuellement un rafraîchissement des données. + +[1]: #server-side-integration +[2]: #sdk-integration +[3]: #key-management +[4]: #braze-dashboard +[5]: #create-jwt +[6]: #enforcement-options +[7]: #sdk-callback +[8]: {% image_buster /assets/img/sdk-auth-settings.png %} +[9]: #error-codes +[10]: {% image_buster /assets/img/sdk-auth-analytics.png %} +[11]: https://js.appboycdn.com/web-sdk/latest/doc/modules/braze.html#changeuser diff --git a/_lang/fr/_developer_guide/platform_wide/sending_test_messages.md b/_lang/fr/_developer_guide/platform_wide/sending_test_messages.md index 8f9fe86f7d5..4b00b6d864d 100644 --- a/_lang/fr/_developer_guide/platform_wide/sending_test_messages.md +++ b/_lang/fr/_developer_guide/platform_wide/sending_test_messages.md @@ -1,162 +1,162 @@ ---- -nav_title: Envoi des messages de test -article_title: Envoi des messages de test -page_order: 3 -description: "Cet article de référence couvre les messages de test pour différents canaux." - ---- - -# Envoyer des messages de test - -Avant d’envoyer une campagne de messagerie à vos utilisateurs, vous pouvez la tester pour vous assurer qu’elle semble correcte et fonctionne de la manière prévue. Créer et envoyer des messages de test pour sélectionner des appareils ou des membres de l’équipe est très facile à l’aide des outils du tableau de bord. - -## Créer un segment d’essai spécifié - -Une fois que vous avez configuré un segment d’essai, vous pouvez l’utiliser pour tester **n’importe lequel** de nos canaux de messagerie. Si le processus est configuré correctement, une seule fois suffira à le réaliser. - -Pour configurer un segment d'essai, accédez à la page **Segments** du tableau de bord et créez un nouveau segment. Cliquez sur **Ajouter un filtre** pour choisir les filtres de test qui se trouvent vers le bas du menu déroulant. - -![Une campagne de test Braze affichant les filtres disponibles dans l’étape de ciblage][1] - -Deux filtres de test de ce type vous permettent de sélectionner des utilisateurs avec des adresses e-mail spécifiques ou des [ID utilisateur externes][2]. - -![Un menu déroulant présentant plusieurs filtres répertoriés sous un en-tête indiquant Essais][3] - -Les filtres de l’adresse de courriel et de l’ID utilisateurs ont tous deux trois options : - - 1) **« Égal à »** - Recherche l’adresse e-mail exacte ou l’ID utilisateur que vous fournissez. Utilisez cette option si vous souhaitez envoyer les campagnes de test uniquement aux appareils associés à un seul e-mail ou ID utilisateur. - - 2) **« N’est pas égal à »** - Utilisez cette option si vous souhaitez exclure un e-mail ou un ID utilisateur particulier des campagnes de test. - - 3) **« Correspond »** - Trouve les utilisateurs qui ont des adresses e-mail ou des ID utilisateur qui correspondent à une partie du terme que vous fournissez. Vous pouvez l’utiliser pour trouver uniquement les utilisateurs disposant d’une adresse « @votresociété.com », ce qui vous permet d’envoyer des messages à tous les membres de votre équipe. - -Vous pouvez sélectionner plusieurs e-mails spécifiques en utilisant l’option « correspondances » et en séparant les adresses e-mail avec un caractère | (par. ex., « correspondances » « e-mail1braze.com | email2@braze.com") »). - -Ces filtres peuvent également être utilisés conjointement pour limiter votre liste d’utilisateurs de test. Par exemple, le segment d’essai peut inclure un filtre d’adresse e-mail qui « correspond à » "@braze.com" et un autre filtre qui « n’est pas égal à » "sales@braze.com". - -Après avoir ajouté les filtres de test à votre segment d’essai, vérifiez que vous n’avez sélectionné que les utilisateurs désirés en cliquant sur **Aperçu** en haut de l’éditeur de segments ou en exportant les données utilisateur de ce segment en CSV, en cliquant sur l’icône d’engrenage dans l’angle à droite de l’éditeur et en sélectionnant **CSV Exporter toutes les données utilisateur** dans le menu déroulant. - -![Une rubrique d’une campagne Braze intitulée Détails du segment][4] - -> L’exportation des données utilisateur du segment en CSV vous donnera l’image la plus précise de ceux qui dont partie de ce segment. L’onglet **Aperçu** n’affiche qu’un échantillon des utilisateurs dans le segment et peut donc sembler ne pas avoir sélectionné tous les membres prévus. - -## Envoi d’une notification push test ou de messages in-app - -Pour envoyer des notifications push test et/ou des messages in-app, vous devez cibler votre segment d’essai précédemment créé. Commencez par créer une campagne et suivez les étapes habituelles. Lorsque vous atteignez l’étape **Utilisateurs cible**, sélectionnez votre segment d’essai dans le menu déroulant. - -![Une campagne de test Braze affichant les segments disponibles dans l’étape de ciblage.][11] - -Terminez la confirmation de votre campagne et lancez-la pour tester votre notification push et vos messages dans l’application. - -> Assurez-vous de sélectionner **Autoriser les utilisateurs à devenir rééligibles pour recevoir la campagne** dans la partie **Planification** de l’assistant de campagne si vous avez l’intention d’utiliser une campagne unique pour vous envoyer un message de test à plusieurs reprises. - -## Envoi d’un message e-mail test - -Si vous ne testez que des messages e-mails, vous n’avez pas à configurer un segment d'essai. Dans la première étape de l’assistant de campagne où vous composez l’e-mail de votre campagne, cliquez sur **Envoyer un test** et saisir l’adresse de courriel à laquelle vous souhaitez envoyer le courriel test. - -![Une campagne Braze avec l’onglet Envoyer un test sélectionné][5] - -{% alert tip %} -Vous pouvez également activer ou désactiver le fait que [TEST (ou SEED)][14] soit ajouté à vos messages de test. -{% endalert %} - - -## Tester depuis la ligne de commande - -Sinon, si vous souhaitez tester des notifications push via la ligne de commande, vous pouvez suivre les exemples suivants pour chaque plateforme. - -### Test de notification push avec applications iOS via cURL - -Vous pouvez envoyer une seule notification par le terminal via CURL et l’[API d’envoi de messages][13]. Vous devrez remplacer les champs suivants par les valeurs correctes pour votre cas de test : - -- `YOUR_API_KEY` - disponible sur la page **Developer Console** -- `YOUR_EXTERNAL_USER_ID` : disponible sur la page **Recherche d’utilisateur** -- `YOUR_KEY1` (facultatif) -- `YOUR_VALUE1` (facultatif) - - -> Les exemples suivants illustrent les endpoints API appropriés pour les clients de l’`US-01`instance. Si vous n’êtes pas dans cette instance, consultez notre [Documentation API ][66]pour voir quel endpoint doit effectuer les requêtes. - -```bash -curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer{{YOUR_API_KEY}}" -d '{ - "external_user_ids":["YOUR_EXTERNAL_USER_ID"], - "messages": { - "apple_push": { - "alert": "Test push", - "extra": { - "YOUR_KEY1" :"YOUR_VALUE1" - } - } - } -}' https://rest.iad-01.braze.com/messages/send -``` - -### Test de notification push avec applications Android via cURL - -Vous pouvez envoyer une seule notification par le terminal via cURL et l’[API d’envoi de messages][13]. Vous devrez remplacer les champs suivants par les valeurs correctes pour votre cas de test : - -- `YOUR_API_KEY` - disponible sur la page **Developer Console** -- `YOUR_EXTERNAL_USER_ID` : disponible sur la page **Recherche d’utilisateur** -- `YOUR_KEY1` (facultatif) -- `YOUR_VALUE1` (facultatif) - -> Les exemples suivants illustrent les endpoints API appropriés pour les clients de l’`US-01`instance. Si vous n’êtes pas dans cette instance, consultez notre [Documentation API ][66]pour voir quel endpoint doit effectuer les requêtes. - -```bash -curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer{{YOUR_API_KEY}}" -d '{ - "external_user_ids":["YOUR_EXTERNAL_USER_ID"], - "messages": { - "android_push": { - "title":"Test push title", - "alert":"Test de notification push", - "extra":{ - "YOUR_KEY1":"YOUR_VALUE1" - } - } - } -}' https://rest.iad-01.braze.com/messages/send -``` - -### Test de notification push avec applications Kindle via cURL - -Vous pouvez envoyer une seule notification par le terminal via cURL et l’[API d’envoi de messages][13]. Vous devrez remplacer les champs suivants par les valeurs correctes pour votre cas de test : - -- `YOUR_API_KEY` - disponible sur la page **Developer Console** -- `YOUR_EXTERNAL_USER_ID` : disponible sur la page **Recherche d’utilisateur** -- `YOUR_KEY1` (facultatif) -- `YOUR_VALUE1` (facultatif) - -```bash -curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer{{YOUR_API_KEY}}" -d '{ - "external_user_ids":["YOUR_EXTERNAL_USER_ID"], - "messages": { - "kindle_push": { - "title":"Test push title", - "alert":"Test de notification push", - "extra":{ - "YOUR_KEY1":"YOUR_VALUE1" - } - } - } -}' https://rest.iad-01.braze.com/messages/send -``` - -## Limites des messages test - -Dans quelques rares situations, les messages test ne sont pas dotés d’une parité complète de fonctionnalités lors du lancement d’une campagne ou de canvas à un ensemble d’utilisateurs réels. Dans ces situations, pour valider ce comportement, vous devez lancer la campagne ou le canvas à un ensemble limité d’utilisateurs. - -- Consulter le [centre de préférence][16] de Braze depuis des **Messages test** a pour effet de griser le bouton soumettre -- L’en-tête de désabonnement de la liste n’est pas incluse dans les courriels envoyés par la fonctionnalité de message test -- Pour les messages dans l’appli et les cartes de contenu, l’utilisateur cible doit avoir un jeton de notification push pour l’appareil cible - -[1]: {% image_buster /assets/img_archive/testmessages1.png %} -[2]: {{site.baseurl}}/developer_guide/platform_integration_guides/ios/analytics/setting_user_ids/#setting-user-ids -[3]: {% image_buster /assets/img_archive/testmessages2.png %} -[4]: {% image_buster /assets/img_archive/testmessages3.png %} -[5]: {% image_buster /assets/img_archive/testmessages45.png %} -[9]: {{site.baseurl}}/developer_guide/platform_wide/platform_features/#user-segmentation -[11]: {% image_buster /assets/img_archive/test_segment.png %} -[13]: {{site.baseurl}}/api/endpoints/messaging/ -[66]: {{site.baseurl}}/api/endpoints/messaging/send_messages/post_send_messages/ -[16]: {{site.baseurl}}/user_guide/message_building_by_channel/email/managing_user_subscriptions/#subscription-groups -[14]: {{site.baseurl}}/user_guide/administrative/app_settings/manage_app_group/email_settings/#test-and-seed-subject-lines +--- +nav_title: Envoyer des messages de test +article_title: Envoyer des messages de test +page_order: 3 +description: "Cet article de référence couvre les messages de test pour différents canaux." + +--- + +# Envoyer des messages de test + +Avant d’envoyer une campagne de messagerie à vos utilisateurs, vous pouvez la tester pour vous assurer qu’elle semble correcte et fonctionne de la manière prévue. Créer et envoyer des messages de test pour sélectionner des appareils ou des membres de l’équipe est très facile à l’aide des outils du tableau de bord. + +## Créer un segment d’essai spécifié + +Une fois que vous avez configuré un segment d’essai, vous pouvez l’utiliser pour tester **n’importe lequel** de nos canaux de messagerie. Si le processus est configuré correctement, une seule fois suffira à le réaliser. + +Pour configurer un segment d'essai, accédez à la page **Segments** du tableau de bord et créez un nouveau segment. Cliquez sur **Add Filter** (Ajouter un filtre) pour choisir les filtres de test qui se trouvent vers le bas du menu déroulant. + +![Une campagne de test Braze affichant les filtres disponibles dans l’étape de ciblage.][1] + +Deux filtres de test de ce type vous permettent de sélectionner des utilisateurs avec des adresses e-mail spécifiques ou des [ID utilisateur][2] externes. + +![Un menu déroulant présentant plusieurs filtres répertoriés sous un en-tête indiquant Essais][3] + +Les filtres de l’adresse de courriel et de l’ID utilisateurs ont tous deux trois options : + + 1) **« Égal à »** : Recherche l’adresse e-mail exacte ou l’ID utilisateur que vous fournissez. Utilisez cette option si vous souhaitez envoyer les campagnes de test uniquement aux appareils associés à un seul e-mail ou ID utilisateur. + + 2) **« N’est pas égal à »** : Utilisez cette option si vous souhaitez exclure un e-mail ou un ID utilisateur particulier des campagnes de test. + + 3) **« Correspond »** : Trouve les utilisateurs qui ont des adresses e-mail ou des ID utilisateur qui correspondent à une partie du terme que vous fournissez. Vous pouvez l’utiliser pour trouver uniquement les utilisateurs disposant d’une adresse « @votresociété.com », ce qui vous permet d’envoyer des messages à tous les membres de votre équipe. + +Vous pouvez sélectionner plusieurs e-mails spécifiques en utilisant l’option « correspondances » et en séparant les adresses e-mail avec un caractère | (p. ex., « correspondances » « e-mail1@braze.com | email2@braze.com »). + +Ces filtres peuvent également être utilisés conjointement pour limiter votre liste d’utilisateurs de test. Par exemple, le segment d’essai peut inclure un filtre d’adresse e-mail qui « correspond à » « @braze.com » et un autre filtre qui « n’est pas égal à » « sales@braze.com ». + +Après avoir ajouté les filtres de test à votre segment d’essai, vérifiez que vous n’avez sélectionné que les utilisateurs désirés en cliquant sur **Preview** (Aperçu) en haut de l’éditeur de segments ou en exportant les données utilisateur de ce segment en CSV, en cliquant sur l’icône d’engrenage dans l’angle à droite de l’éditeur et en sélectionnant **CSV Export All User Data** (CSV Exporter toutes les données utilisateur) dans le menu déroulant. + +![Une rubrique d’une campagne Braze intitulée Détails du segment][4] + +> L’exportation des données utilisateur du segment en CSV vous donnera l’image la plus précise de ceux qui dont partie de ce segment. L’onglet **Aperçu** n’affiche qu’un échantillon des utilisateurs dans le segment et peut donc sembler ne pas avoir sélectionné tous les membres prévus. + +## Envoi d’une notification push test ou de messages in-app + +Pour envoyer des notifications push test et/ou des messages in-app, vous devez cibler votre segment d’essai précédemment créé. Commencez par créer une campagne et suivez les étapes habituelles. Lorsque vous atteignez l’étape **Utilisateurs cible**, sélectionnez votre segment d’essai dans le menu déroulant. + +![Une campagne de test Braze affichant les segments disponibles dans l’étape de ciblage.][11] + +Terminez la confirmation de votre campagne et lancez-la pour tester votre notification push et vos messages dans l’application. + +> Assurez-vous de sélectionner **Allow users to become re-eligible to receive campaign** (Autoriser les utilisateurs à devenir rééligibles pour recevoir la campagne) dans la partie **Schedule** (Planification) de l’assistant de campagne si vous avez l’intention d’utiliser une campagne unique pour vous envoyer un message de test à plusieurs reprises. + +## Envoi d’un message e-mail test + +Si vous ne testez que des messages e-mails, vous n’avez pas à configurer un segment d'essai. Dans la première étape de l’assistant de campagne où vous composez l’e-mail de votre campagne, cliquez sur **Send Test** (Envoyer un test) et saisir l’adresse de courriel à laquelle vous souhaitez envoyer le courriel test. + +![Une campagne Braze avec l’onglet Test Send (Envoyer un test) sélectionné][5] + +{% alert tip %} +Vous pouvez également activer ou désactiver le fait que [TEST (ou SEED)][14] soit ajouté à vos messages de test. +{% endalert %} + + +## Tester depuis la ligne de commande + +Sinon, si vous souhaitez tester des notifications push via la ligne de commande, vous pouvez suivre les exemples suivants pour chaque plateforme. + +### Test de notification push avec applications iOS via cURL + +Vous pouvez envoyer une seule notification par le terminal via CURL et l’[API de messagerie][13]. Vous devrez remplacer les champs suivants par les valeurs correctes pour votre cas de test : + +- `YOUR_API_KEY` - disponible sur la page **Developer Console** +- `YOUR_EXTERNAL_USER_ID` : disponible sur la page **User Search** (Recherche d’utilisateur) +- `YOUR_KEY1` (facultatif) +- `YOUR_VALUE1` (facultatif) + + +> Les exemples suivants illustrent les endpoints API appropriés pour les clients de l’`US-01`instance. Si vous n’êtes pas dans cette instance, consultez notre [Documentation API][66] pour voir quel endpoint doit effectuer les requêtes. + +```bash +curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer {YOUR_API_KEY}" -d '{ + "external_user_ids":["YOUR_EXTERNAL_USER_ID"], + "messages": { + "apple_push": { + "alert": "Test push", + "extra": { + "YOUR_KEY1" :"YOUR_VALUE1" + } + } + } +}' https://rest.iad-01.braze.com/messages/send +``` + +### Test de notification push avec applications Android via cURL + +Vous pouvez envoyer une seule notification par le terminal via cURL et l’[API de messagerie][13]. Vous devrez remplacer les champs suivants par les valeurs correctes pour votre cas de test : + +- `YOUR_API_KEY` - disponible sur la page **Developer Console** +- `YOUR_EXTERNAL_USER_ID` : disponible sur la page **User Search** (Recherche d’utilisateur) +- `YOUR_KEY1` (facultatif) +- `YOUR_VALUE1` (facultatif) + +> Les exemples suivants illustrent les endpoints API appropriés pour les clients de l’`US-01`instance. Si vous n’êtes pas dans cette instance, consultez notre [Documentation API][66] pour voir quel endpoint doit effectuer les requêtes. + +```bash +curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer {YOUR_API_KEY}" -d '{ + "external_user_ids":["YOUR_EXTERNAL_USER_ID"], + "messages": { + "android_push": { + "title":"Test push title", + "alert":"Test push", + "extra":{ + "YOUR_KEY1":"YOUR_VALUE1" + } + } + } +}' https://rest.iad-01.braze.com/messages/send +``` + +### Test de notification push avec applications Kindle via cURL + +Vous pouvez envoyer une seule notification par le terminal via cURL et l’[API de messagerie][13]. Vous devrez remplacer les champs suivants par les valeurs correctes pour votre cas de test : + +- `YOUR_API_KEY` - disponible sur la page **Developer Console** +- `YOUR_EXTERNAL_USER_ID` : disponible sur la page **User Search** (Recherche d’utilisateur) +- `YOUR_KEY1` (facultatif) +- `YOUR_VALUE1` (facultatif) + +```bash +curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer {YOUR_API_KEY}" -d '{ + "external_user_ids":["YOUR_EXTERNAL_USER_ID"], + "messages": { + "kindle_push": { + "title":"Test push title", + "alert":"Test push", + "extra":{ + "YOUR_KEY1":"YOUR_VALUE1" + } + } + } +}' https://rest.iad-01.braze.com/messages/send +``` + +## Limites des messages test + +Dans quelques rares situations, les messages test ne sont pas dotés d’une parité complète de fonctionnalités lors du lancement d’une campagne ou de canvas à un ensemble d’utilisateurs réels. Dans ces situations, pour valider ce comportement, vous devez lancer la campagne ou le canvas à un ensemble limité d’utilisateurs. + +- Consulter le [Preference center (Centre de préférence)][16] de Braze depuis **Test Messages (Messages test)** a pour effet de griser le bouton soumettre +- L’en-tête de désabonnement de la liste n’est pas incluse dans les courriels envoyés par la fonctionnalité de message test +- Pour les messages dans l’appli et les cartes de contenu, l’utilisateur cible doit avoir un jeton de notification push pour l’appareil cible + +[1]: {% image_buster /assets/img_archive/testmessages1.png %} +[2]: {{site.baseurl}}/developer_guide/platform_integration_guides/ios/analytics/setting_user_ids/#setting-user-ids +[3]: {% image_buster /assets/img_archive/testmessages2.png %} +[4]: {% image_buster /assets/img_archive/testmessages3.png %} +[5]: {% image_buster /assets/img_archive/testmessages45.png %} +[9]: {{site.baseurl}}/developer_guide/platform_wide/platform_features/#user-segmentation +[11]: {% image_buster /assets/img_archive/test_segment.png %} +[13]: {{site.baseurl}}/api/endpoints/messaging/ +[66]: {{site.baseurl}}/api/endpoints/messaging/send_messages/post_send_messages/ +[16]: {{site.baseurl}}/user_guide/message_building_by_channel/email/managing_user_subscriptions/#subscription-groups +[14]: {{site.baseurl}}/user_guide/administrative/app_settings/manage_app_group/email_settings/#test-and-seed-subject-lines diff --git a/_lang/fr/_developer_guide/platform_wide/tv_and_ott.md b/_lang/fr/_developer_guide/platform_wide/tv_and_ott.md index e0f68b15ce2..49693b8a0b6 100644 --- a/_lang/fr/_developer_guide/platform_wide/tv_and_ott.md +++ b/_lang/fr/_developer_guide/platform_wide/tv_and_ott.md @@ -109,7 +109,7 @@ Les fonctionnalités et canaux de messagerie suivants sont pris en charge aujour {% alert note %} Les éléments suivants ne sont pas pris en charge sur OTT à l’heure actuelle : -- Messages in-app coulissant ut-of-the-box +- Messages in-app slideup prêts à l’emploi - HTML personnalisé {% endalert %} @@ -214,7 +214,7 @@ Les fonctionnalités comprennent : - Consultez notre [exemple d’application][9] pour en savoir plus sur l’utilisation d’une interface utilisateur Headless pour l’envoi de messages personnalisés sur tvOS. - Notification push silencieuses et mise à jour des badges -**Remarque :** Pour éviter d’afficher des messages in-app mobiles à vos utilisateurs de TV, assurez-vous de configurer soit [App Targeting](#app-targeting) (Ciblage application) ou d’utiliser les paires clé-valeur pour filtrer les messages. Par exemple, afficher uniquement les messages tvOS s’ils contiennent une paire clé-valeur spéciale `tv = true`. +**Remarque :** Pour éviter d’afficher des messages in-app mobiles à vos utilisateurs de TV, assurez-vous de configurer soit [App Targeting](#app-targeting) (Ciblage application) ou d’utiliser les paires clé-valeur pour filtrer les messages. Par exemple, afficher uniquement les messages tvOS s’ils contiennent une `tv = true` paire clé-valeur spéciale. ## Ciblage des applications {#app-targeting} @@ -252,5 +252,5 @@ En savoir plus sur la gestion personnalisée de l’envoi de messages : [6]: {{site.baseurl}}/developer_guide/platform_integration_guides/android/push_notifications/android_tv_push/ [7]: https://developer.amazon.com/docs/fire-tv/notifications.html#headsup [8]: {{site.baseurl}}/developer_guide/platform_integration_guides/web/smart_tvs/ -[android-tv-html]: https://github.com/Appboy/appboy-android-sdk/blob/master/CHANGELOG.md#2310 +[android-tv-html]: https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md#2310 [9]: https://github.com/braze-inc/braze-swift-sdk/tree/main/Examples#inappmessages-custom-ui diff --git a/_lang/fr/_docs_pages/cla.md b/_lang/fr/_docs_pages/cla.md index 226f19ae306..c97036c9976 100644 --- a/_lang/fr/_docs_pages/cla.md +++ b/_lang/fr/_docs_pages/cla.md @@ -1,5 +1,5 @@ --- -title: "Braze : Accord de licence contributeur" +title: "Braze - Contribution License Agreement" permalink: cla/ layout: documents @@ -45,7 +45,7 @@ Sélectionnez une des options ci-dessous et signez comme indiqué. En signant, v

-
+




@@ -56,7 +56,7 @@ Sélectionnez une des options ci-dessous et signez comme indiqué. En signant, v

-
+
diff --git a/_lang/fr/_help/help_articles/content_cards/empty_content_card_feed.md b/_lang/fr/_help/help_articles/content_cards/empty_content_card_feed.md index efb970ec436..17660869ea2 100644 --- a/_lang/fr/_help/help_articles/content_cards/empty_content_card_feed.md +++ b/_lang/fr/_help/help_articles/content_cards/empty_content_card_feed.md @@ -10,12 +10,13 @@ channel: cartes de contenu # Flux de carte de contenu vide -Vous ne pouvez pas envoyer de cartes aux utilisateurs qui n’existent pas. Par définition, les nouveaux utilisateurs n’auront aucune carte dans leur flux lors de leur première session. +Lors de l’envoi d’une campagne de carte de contenu avec livraison planifiée, l’option que vous choisissez pour la [création de carte]({{site.baseurl}}/user_guide/message_building_by_channel/content_cards/create/card_creation/#overview) peut affecter le fait que les nouveaux utilisateurs aient des cartes dans leur flux lors de leur première session. Si **Card Creation (Création de carte)** est définie sur **At campaign launch (Au lancement de campagne)**, les utilisateurs qui sont créés après le lancement de la campagne ne recevront pas la carte de contenu dans leur flux, car Braze évalue l’appartenance à l’audience lorsque la campagne est envoyée. -Si vous souhaitez qu’un nouvel utilisateur reçoive des cartes, créez une [Campagne de cartes de contenu]({{site.baseurl}}/user_guide/message_building_by_channel/content_cards/create/) déclenchée par l’événement [`SessionStart`]({{site.baseurl}}/user_guide/data_and_analytics/braze_currents/event_glossary/customer_behavior_events/#session-start-event) sans rééligibilité, pour que les utilisateurs reçoivent la campagne une seule fois. Ils recevront cette carte à leur prochaine session. +Si vous souhaitez qu’un nouvel utilisateur reçoive des cartes, effectuez l’une des opérations suivantes : -Vous pouvez également envoyer la carte à leur première session. Appelez [`requestContentCardsRefresh`]({{site.baseurl}}/developer_guide/platform_integration_guides/web/content_cards/refreshing_the_feed/#refreshing-content-cards) sur le SDK pendant cette session après l’appel `requestImmediateDataFlush`. +- Créez une campagne de livraison planifiée et définissez **Card Creation (Création de carte)** sur **At first impression (À la première impression)**. Ils recevront cette carte à leur prochaine session. +- Créez une campagne à livraison par événement. Ils recevront cette carte la prochaine fois qu’ils effectueront l’action sélectionnée. Vous avez toujours besoin d’aide ? Ouvrez un [ticket de support]({{site.baseurl}}/braze_support/). -_Dernière mise à jour le 3 juin 2021_ \ No newline at end of file +_Dernière mise à jour le 17 mars 2023_ \ No newline at end of file diff --git a/_lang/fr/_help/help_articles/segments/segmentation_logic_with_and_or.md b/_lang/fr/_help/help_articles/segments/segmentation_logic_with_and_or.md index d7255d5498b..5899506db70 100644 --- a/_lang/fr/_help/help_articles/segments/segmentation_logic_with_and_or.md +++ b/_lang/fr/_help/help_articles/segments/segmentation_logic_with_and_or.md @@ -10,31 +10,33 @@ tool: Segments # Logique de segmentation -Les opérateurs `AND` et `OR` permettent un filtrage puissant lors de la création d’un [segment]({{site.baseurl}}/user_guide/engagement_tools/segments/creating_a_segment/). +Les opérateurs `AND` et `OR` permettent un filtrage puissant lors de la création d’un [segment]({{site.baseurl}}/user_guide/engagement_tools/segments/creating_a_segment/). À l’aide de ces opérateurs, vous pouvez cibler vos utilisateurs en fonction de leurs actions ou comportements dans l’étape **Audience cible** de la création de vos campagnes ou Canvas. -## Utilisation de l’opérateur AND (ET) +## Comprendre les opérateurs AND (ET) et OR (OU) -Utilisez `AND` si vous êtes intéressé par l’intersection de deux groupes. C’est-à-dire ce qui est similaire entre les deux groupes. Si vous souhaitez inclure des clients avec deux valeurs ou plus pour un attribut particulier, vous devez utiliser l’opérateur `AND`. +Les opérateurs `AND` et `OR` fonctionnent de différentes manières. Vous pouvez utiliser chaque opérateur en fonction de ce que vous souhaitez accomplir lors de la segmentation de votre audience. -Prenons l’exemple d’utilisation d’un ciblage des clients de tous les pays, sauf le Canada et les États-Unis. L’instruction `Country is not United States AND Country is not Canada` inclura uniquement les clients qui ne sont pas des États-Unis et qui ne sont pas du Canada. Par conséquent, les clients des États-Unis et les clients canadiens seront exclus. +### Quand utiliser l’opérateur AND (ET) -## Utilisation de l’opérateur OR (OU) +En général, utilisez `AND` si vous êtes intéressé par l'intersection de deux valeurs ou plus pour un attribut particulier. -Utiliser `OR` si vous souhaitez cibler les utilisateurs qui répondent à au moins une condition dans un groupe de conditions. Si vous avez trois conditions reliées par `OR`, alors une, deux ou les trois conditions peuvent être vraies pour que l’instruction soit vraie. +Prenons l’exemple du ciblage des utilisateurs de tous les pays, sauf le Canada et les États-Unis dans une campagne. Dans ce cas, l’utilisation de l’opérateur `AND` peut aider à filtrer ces utilisateurs. L’instruction `Country is not United States AND Country is not Canada` inclura uniquement les utilisateurs qui ne sont pas des États-Unis et qui ne sont pas du Canada. Ainsi, en utilisant cette logique, les utilisateurs du Canada et des États-Unis seront exclus. -Imaginez par exemple que vous souhaitiez envoyer un message à tous les utilisateurs qui ont la version 1.0 ou 1.1 de votre application. Pour cibler les utilisateurs qui se trouvent sur la version 1.0 et sur la version 1.1, vous pouvez utiliser les filtres `Is 1.0` et `Is 1.1` avec l’opérateur `OR` pour votre segment. Cela ciblera tous les utilisateurs qui se trouvent sur les versions 1.0 ou 1.1. +### Quand utiliser l’opérateur OR (OU) + +Utilisez `OR` si votre but est de cibler les utilisateurs qui répondent à au moins une condition dans un ensemble de conditions. Si vous avez trois conditions reliées par `OR`, alors une, deux ou les trois conditions peuvent être vraies pour que l’instruction proprement dite soit vraie. -Dans cet exemple, imaginons une promotion valable pour les clients aux États-Unis et au Canada. Vous souhaitez vous assurer que seuls les clients qui habitent là où la promotion est valide reçoivent la promotion. Dans ce scénario, utilisez l’instruction suivante pour cibler votre campagne : `Country is United States OR Country is Canada`. +Imaginez par exemple que vous souhaitiez envoyer un message à tous les utilisateurs qui ont la version 1.0 ou 1.1 de votre application. Pour cibler les utilisateurs qui se trouvent sur la version 1.0 et sur la version 1.1, vous pouvez utiliser les filtres `Is 1.0` et `Is 1.1` avec l’opérateur `OR` pour votre segment. Cela ciblera tous les utilisateurs qui se trouvent sur les versions 1.0 ou 1.1. -Avec l’opérateur `OR`, votre campagne ne sera accessible qu’aux clients dont le pays est le Canada ou dont le pays est les États-Unis. +Dans cet exemple, imaginons une promotion valable pour les utilisateurs aux États-Unis et au Canada. Vous souhaitez vous assurer que seuls les utilisateurs qui habitent là où la promotion est valide reçoivent la promotion. Dans ce scénario, utilisez l’instruction suivante pour cibler votre campagne : `Country is United States OR Country is Canada`. Avec l’opérateur `OR`, votre campagne ne serait accessible qu’aux utilisateurs dont le pays est le Canada ou dont le pays est les États-Unis. -### Éviter l’opérateur OR (OU) +#### Quand éviter l’opérateur OR -Dans certaines circonstances, l’opérateur `OR` ne doit pas être utilisé. +Il peut y avoir des situations de ciblage de l’utilisateur où l’utilisation de l’opérateur `OR` doit être évitée. L’opérateur `OR` crée une instruction qui évalue si un utilisateur répond aux critères d’un ou plusieurs filtres d’une instruction. Par exemple, si vous souhaitez créer un segment d’utilisateurs qui appartiennent au segment « gastronomes » mais qui n’appartiennent pas soit au segment « non gastronomes » soit au segment « amateurs de bonbons », l’opérateur `OR` peut alors fonctionner. -Par exemple, n’utilisez pas `OR` si vous avez une campagne valable dans tous les pays, sauf aux États-Unis et au Canada. Pour filtrer ce segment, vous pouvez essayer d’inverser la logique du scénario précédent. Cependant, cela génère un segment qui cible tous les clients : `Country is not United States OR Country is not Canada`. +![][1] -L’instruction précédente cible tous les clients, car tous les clients répondent aux critères d’un ou de plusieurs filtres. Les clients canadiens répondent aux critères de `Country is not United States`. Les clients américains répondent aux critères de `Country is not Canada`. +Cependant, si votre objectif est de segmenter les utilisateurs qui appartiennent au segment « gastronomes » et qui ne sont dans aucun des segments « non gastronomes » et « amateurs de bonbons », utilisez l’opérateur `AND`. Cela garantit que les utilisateurs qui reçoivent la campagne ou le Canvas sont dans le segment prévu (« gastronomes ») et non dans les autres segments (« non gastronomes » et « amateurs de bonbons ») en même temps. Les critères de ciblage négatifs suivants ne doivent pas être utilisés avec l’opérateur `OR` lorsque deux filtres ou plus font référence au même attribut : @@ -42,13 +44,13 @@ Les critères de ciblage négatifs suivants ne doivent pas être utilisés avec - `does not equal` - `does not match regex` -Si `is not`, `does not equal` ou `does not match regex` sont utilisés avec l’opérateur `OR` deux fois ou plus dans une instruction, les clients ayant toutes les valeurs de l’attribut pertinent seront ciblés. +Si `is not`, `does not equal` ou `does not match regex` sont utilisés avec l’opérateur `OR` deux fois ou plus dans une instruction, les utilisateurs ayant toutes les valeurs de l’attribut pertinent seront ciblés. -## Utiliser les deux opérateurs +### Utiliser les deux opérateurs Dans l’exemple suivant, nous utiliserons les deux opérateurs `AND` et `OR`. Ici, le public cible comprend les utilisateurs qui ont acheté des baskets Nike ou des baskets Adidas, et qui ont accepté de recevoir des notifications par e-mail. -![Créer un segment pour Amateurs de Sneakers dont la marque préférée est égale à Nike ou Adidas, et qui ont accepté de recevoir des e-mails][33] +![Créer un segment pour Amateurs de Sneakers pour les utilisateurs dont la marque préférée est égale à Nike ou Adidas, et qui ont accepté de recevoir des e-mails][33] Une autre façon de vous assurer que vous construisez la logique adéquate est de créer votre segment et de [prévisualiser les utilisateurs][35] qui sont dedans en fonction de vos filtres. Ainsi, vous pouvez vous assurer que leurs attributs, version d’application ou toute autre segmentation correspondent à ce que vous voyez. @@ -56,5 +58,6 @@ Vous avez toujours besoin d’aide ? Ouvrez un [ticket de support]({{site.baseu _Dernière mise à jour le 3 juin 2022_ +[1]: {% image_buster /assets/img_archive/or_operator_segment.png %} [33]: {% image_buster /assets/img_archive/NikeSneakers.png %} [35]: {{site.baseurl}}/user_guide/data_and_analytics/reporting/viewing_and_understanding_segment_data/#viewing-and-understanding-segment-data diff --git a/_lang/fr/_help/release_notes.md b/_lang/fr/_help/release_notes.md index 0df58e7e8d5..cce52461073 100644 --- a/_lang/fr/_help/release_notes.md +++ b/_lang/fr/_help/release_notes.md @@ -2,7 +2,7 @@ nav_title: Notes de version article_title: Notes de version page_order: 4 -layout: dev_guide +layout: featured guide_top_header: "Notes de version" guide_top_text: "C’est là que vous trouverez toutes les mises à jour de la plateforme Braze, avec les dernières mises à jour de la plateforme suivantes. Vous pouvez également consulter notre Journal de modifications du SDK ." page_type: landing @@ -51,7 +51,7 @@ guide_featured_list: >
> Pour plus d’informations sur les mises à jour listées dans cette section, contactez votre gestionnaire de compte ou [créez un ticket de support][support]. Vous pouvez également consulter [notre Journal de modifications du SDK]({{site.baseurl}}/developer_guide/platform_integration_guides/sdk_changelogs/) pour voir plus d’informations sur nos versions, mises à jour et améliorations mensuelles du SDK. -## Version du 7 mars 2023 +## Version du 7 mars 2023 ### Suppression de la prise en charge de la duplication des expériences originales Canvas @@ -100,7 +100,7 @@ La recherche d’utilisateur est disponible lors de : - La création d’un segment - La configuration d’une campagne ou d’une audience Canvas -- La configuration d’une étape de Parcours d’audience +- La configuration d’une étape de Parcours d'audience ### Liste d’interdiction ou suppression des données personnalisées @@ -112,7 +112,7 @@ Vous pouvez occasionnellement identifier des attributs personnalisés, des évé #### Données Sisu - Aide à la décision -L’intégration de [Sisu Data]({{site.baseurl}}/partners/data_and_infrastructure_agility/business_intelligence/sisu_data/) et de Braze vous permet de comprendre dans toutes les campagnes ou au niveau de la campagne pourquoi les indicateurs (par ex., taux d’ouverture, taux de clics, taux de conversion, etc.) changent et ce qui génère les résultats les plus optimaux. Une fois ces segments identifiés, les utilisateurs de Braze peuvent matérialiser les sorties dans leur entrepôt de données ou les envoyer directement de Sisu vers Braze pour recibler et réengager les utilisateurs. +L’intégration de [Sisu Data]({{site.baseurl}}/partners/data_and_infrastructure_agility/business_intelligence/sisu_data/) et Braze vous permet de comprendre dans toutes les campagnes ou au niveau de la campagne pourquoi les indicateurs (par ex., taux d’ouverture, taux de clics, taux de conversion, etc.) changent et ce qui génère les résultats les plus optimaux. Une fois ces segments identifiés, les utilisateurs de Braze peuvent matérialiser les sorties dans leur entrepôt de données ou les envoyer directement de Sisu vers Braze pour recibler et réengager les utilisateurs. #### Loplat - Emplacement contextuel @@ -127,7 +127,7 @@ L’intégration de Braze et [ActionIQ]({{site.baseurl}}/partners/data_and_infra #### Komo - Contenu dynamique -L’intégration de Braze et [Komo]({{site.baseurl}}/partners/message_personalization/dynamic_content/komo/) vous permet de collecter des données first et zero-party via les hubs d’engagement Komo. Ces hubs sont des microsites dynamiques qui proposent un contenu interactif et des fonctionnalités de gamification. Les données utilisateur collectées à partir de ces hubs sont ensuite transmises à l’API Braze. +L’intégration de Braze et [Komo]({{site.baseurl}}/partners/message_personalization/dynamic_content/komo/) vous permet de collecter des données zero et first-party via les hubs d’engagement Komo. Ces hubs sont des microsites dynamiques qui proposent un contenu interactif et des fonctionnalités de gamification. Les données utilisateur collectées à partir de ces hubs sont ensuite transmises à l’API Braze. - Ingérez en temps réel de données utilisateur zero et first-party collectées depuis Komo vers Braze - Ingérez des données d’études de marché et de préférences utilisateurs lorsqu’ils répondent à des enquêtes, des sondages et des questionnaires @@ -150,7 +150,7 @@ L’intégration Braze et [Sageflo]({{site.baseurl}}/partners/message_orchestrat L’intégration de Braze et [Airbyte]({{site.baseurl}}/partners/data_and_infrastructure_agility/workflow_automation/airbyte/) vous permet de créer un pipeline de données pour collecter et analyser les données de Braze en connectant toutes vos applications et bases de données à un entrepôt central. Une fois ces données collectées dans l’entrepôt, les équipes de données peuvent explorer efficacement les données de Braze en utilisant leurs outils d’aide à la décision préférés. -#### Volant - Automatisation des flux de travail +#### Flywheel - Automatisation des flux de travail L’intégration de Braze et [Flywheel]({{site.baseurl}}/partners/data_and_infrastructure_agility/workflow_automation/flywheel/) vous permet de segmenter les données client directement à partir de l’entrepôt de données et de les envoyer à Braze, garantissant ainsi que les utilisateurs peuvent optimiser l’ensemble de fonctionnalités approfondies de Braze en tandem avec une source unique de vérité. Rationalisez les efforts marketing pour la segmentation et l’activation des clients, en réduisant le temps nécessaire pour segmenter, lancer, tester et mesurer les résultats des campagnes ciblées envoyées à Braze. @@ -171,7 +171,7 @@ Les mises à jour SDK suivantes ont été publiées. Les dernières mises à jou - [SDK Swift 5.10.0-5.11.0](https://github.com/braze-inc/braze-swift-sdk/blob/main/CHANGELOG.md) - [SDK Web 4.6.2-4.6.3](https://github.com/braze-inc/braze-web-sdk/blob/master/CHANGELOG.md) - [Segment iOS SDK 4.6.1](https://github.com/Appboy/appboy-segment-ios/releases) -- [SDK iOS AppboyKit 4.5.4](https://github.com/Appboy/appboy-ios-sdk/releases/tag/4.5.4) +- [SDK iOS AppboyKit 4.5.4](https://github.com/Appboy/appboy-ios-sdk/releases/tag/4.5.4) - [React Native SDK 2.0.0-2.1.0](https://github.com/braze-inc/braze-react-native-sdk/blob/master/CHANGELOG.md) - [SDK Xamarin 1.27.0](https://github.com/braze-inc/braze-xamarin-sdk/blob/master/CHANGELOG.md) - [ExpoPlugin 1.0.0-1.1.0](https://github.com/braze-inc/braze-expo-plugin/blob/main/CHANGELOG.md) @@ -200,16 +200,16 @@ Cette fonctionnalité est actuellement en version bêta. Si vous souhaitez parti ### Nouveaux événements Currents -Les événements Currents suivants ont récemment été publiés et ajoutés au [glossaire des événements d’engagement par message]({{site.baseurl}}/user_guide/data_and_analytics/braze_currents/event_glossary/message_engagement_events) : +Les événements Currents suivants ont récemment été publiés et ajoutés aux glossaires [ des événements d’engagement par message]({{site.baseurl}}/user_guide/data_and_analytics/braze_currents/event_glossary/message_engagement_events) et des [événements utilisateur et de comportement des clients]({{site.baseurl}}/user_guide/data_and_analytics/braze_currents/event_glossary/customer_behavior_events) : Événements d’interruption de message : -- `users_messages_contentcard_abort` -- `users_messages_email_abort` -- `users_messages_inappmessage_abort` -- `users_messages_newsfeedcard_abort` -- `users_messages_pushnotification_abort` -- `users_messages_sms_abort` -- `users_messages_webhook_abort` +- `users.messages.contentcard.abort` +- `users.messages.email.abort` +- `users.messages.inappmessage.abort` +- `users.messages.newsfeedcard.abort` +- `users.messages.pushnotification.abort` +- `users.messages.sms.abort` +- `users.messages.webhook.abort` Événements de clic sur lien court SMS : - `users.messages.sms.ShortLinkClick` @@ -221,10 +221,8 @@ Les événements Currents suivants ont récemment été publiés et ajoutés au - `users.behaviors.subscriptiongroup.StateChange` Événements de sortie Canvas : -- `users_canvas_exit_PerformedEvent` -- `users_canvas_exit_PerformedEvent_Details` -- `users_canvas_exit_MatchedAudience` -- `users_canvas_exit_MatchedAudience_Details` +- `users.canvas.exit.PerformedEvent` +- `users.canvas.exit.MatchedAudience` ### Variante personnalisée @@ -237,25 +235,25 @@ Les [Segment Extensions]({{site.baseurl}}/sql_segments/) vous permettent de gén ### Liste de contrôle avant et après lancement pour Canvas Avant et après le lancement d’un Canvas, vous devez vérifier plusieurs détails : -- Assurez-vous que vos messages et heures d’envoi correspondent aux préférences de votre audience. +- Assurez-vous que vos envois de messages et heures d’envoi correspondent aux préférences de votre audience - Tenez compte des différences de fuseaux horaires, de paramètres d’entrée, etc. -- Révisez et ajustez votre Canvas en cas de divergences après le lancement sur la base de ces scénarios. +- Révisez et ajustez votre Canvas en cas de divergences après le lancement sur la base de ces scénarios Utilisez cette [liste de contrôle]({{site.baseurl}}/user_guide/engagement_tools/canvas/ideas_and_strategies/pre_post_launch_checklist#pre-and-post-launch-checklist) comme guide pour affiner ces domaines en fonction de votre cas d’utilisation pour contribuer à la réussite de votre Canvas. ### Nouveau endpoint API : Mettre à jour l’alias d’utilisateur -Utilisez le [endpoint mettre à jour l’alias d’utilisateur]({{site.baseurl}}/api/endpoints/user_data/post_users_alias_update/) pour mettre à jour les alias d’utilisateur existants. +Utilisez l’[endpoint Mettre à jour l’alias d'utilisateur]({{site.baseurl}}/api/endpoints/user_data/post_users_alias_update/) pour mettre à jour les alias d’utilisateur existants. ### Mises à jour SDK Les mises à jour SDK suivantes ont été publiées. Les dernières mises à jour sont répertoriées ci-dessous ; vous pouvez trouver toutes les autres mises à jour en consultant les journaux de modifications SDK correspondants. - [SDK Web 4.6.0-4.6.1](https://github.com/braze-inc/braze-web-sdk/blob/master/CHANGELOG.md#461) -- [SDK Android 24.1.0-24.2.0](https://github.com/Appboy/appboy-android-sdk/blob/master/CHANGELOG.md#2420) -- [SDK iOS AppboyKit 4.5.3](https://github.com/Appboy/appboy-ios-sdk/releases/tag/4.5.3) +- [SDK Android 24.1.0-24.2.0](https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md#2420) +- [SDK iOS AppboyKit 4.5.3](https://github.com/Appboy/appboy-ios-sdk/releases/tag/4.5.3) - [SDK Swift 5.9.0-5.9.1](https://github.com/braze-inc/braze-swift-sdk/blob/main/CHANGELOG.md#591) - - Élève la cible minimale de déploiement vers iOS 11.0 et tvOS 11.0. + - Élève la cible minimale de déploiement vers iOS 11.0 et tvOS 11.0. - Élève la version Xcode vers 14.1 (14B47b). - [SDK Flutter 3.1.0](https://pub.dev/packages/braze_plugin/changelog) - Le pont Android natif utilise le SDK Android de Braze 24.2.0. @@ -263,7 +261,7 @@ Les mises à jour SDK suivantes ont été publiées. Les dernières mises à jou - La cible minimale de déploiement iOS est 11.0. - [SDK Cordova 2.33.0](https://github.com/Appboy/appboy-cordova-sdk/blob/2.33.0/CHANGELOG.md#2330) - Migration du plug-in iOS pour utiliser le nouveau SDK Braze Swift (5.8.1). - - L’IU du Fil d’actualité n’est plus prise en charge sur iOS. + - L’IU du Fil d'actualité n’est plus prise en charge sur iOS. ## Version du 10 janvier 2023 @@ -273,7 +271,7 @@ Le composant [User Update (Mise à jour de l’utilisateur)]({{site.baseurl}}/us ### Mettre en place des groupes d’abonnement par API -Lorsque vous créez de nouveaux utilisateurs au moyen de l’endpoint [/users/track]({{site.baseurl}}/api/endpoints/user_data/post_user_track/), vous pouvez définir des groupes d’abonnement dans l’objet attributs d’utilisateur, ce qui vous permet de créer un utilisateur et de définir l’état du groupe d’abonnement dans un seul appel API. +Lorsque vous créez de nouveaux utilisateurs au moyen de l’endpoint [/users/track]({{site.baseurl}}/api/endpoints/user_data/post_user_track/), vous pouvez définir des groupes d'abonnement dans l’objet attributs d’utilisateur, ce qui vous permet de créer un utilisateur et de définir l’état du groupe d’abonnement dans un seul appel API. ### Accès anticipé au tableau de bord des conversions @@ -299,7 +297,7 @@ Les mises à jour SDK suivantes ont été publiées. Les dernières mises à jou - [SDK Swift 5.8.0–5.8.1](https://github.com/braze-inc/braze-swift-sdk/blob/main/CHANGELOG.md#580) - Renomme la classe `BrazeLocation` en `BrazeLocationProvider` pour éviter de mettre dans l’ombre le module du même nom. - [SDK Flutter 3.0.1](https://pub.dev/packages/braze_plugin/changelog) -- [SDK Android 24.0.0](https://github.com/Appboy/appboy-android-sdk/blob/master/CHANGELOG.md) +- [SDK Android 24.0.0](https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md) - La fonctionnalité de positionnement et de geofence a été déplacée dans un nouveau module appelé `com.braze:android-sdk-location`. - Les classes et les fichiers Appboy ont tous été déplacés vers Braze. - Modification du comportement par défaut de `DefaultContentCardsUpdateHandler` pour utiliser la date de création au lieu de la date de dernière mise à jour lors du tri des cartes de contenu. @@ -349,17 +347,17 @@ L’[intégration Shopify]({{site.baseurl}}/partners/message_orchestration/chann ### Nouveaux partenariats Braze #### Ada - Sondages -Les intégrations d’[Ada]({{site.baseurl}}/partners/message_orchestration/channel_extensions/surveys/ada/) et de Braze vous permettent d’augmenter les profils d’utilisateurs avec les données collectées à partir de vos conversations automatisées Ada. Vous pouvez définir des attributs utilisateur personnalisés en fonction des informations que vous collectez lors d’un chat Ada et enregistrer des événements personnalisés dans Braze à des moments spécifiés d’une conversation Ada. En connectant votre chatbot Ada à Braze, vous pouvez en savoir plus sur vos consommateurs en fonction des questions qu’ils posent sur votre marque ou en entamant de manière proactive des conversations avec eux avec des questions qui vous permettent d’en savoir plus sur leurs intérêts et leurs préférences. +Les intégrations d’[Ada]({{site.baseurl}}/partners/message_orchestration/channel_extensions/surveys/ada/) et de Braze vous permettent d’augmenter les profils d’utilisateurs avec les données collectées à partir de vos conversations automatisées Ada. Vous pouvez définir des attributs utilisateur personnalisés en fonction des informations que vous collectez lors d'un chat Ada et enregistrer des événements personnalisés dans Braze à des moments spécifiés d'une conversation Ada. En connectant votre chatbot Ada à Braze, vous pouvez en savoir plus sur vos consommateurs en fonction des questions qu'ils posent sur votre marque ou en entamant de manière proactive des conversations avec eux avec des questions qui vous permettent d'en savoir plus sur leurs intérêts et leurs préférences. #### B.Layer - Modèles de messages -L’intégration de [B.Layer]({{site.baseurl}}/partners/message_orchestration/channel_extensions/email_templates/blayer) et de Braze vous permet de tirer parti du générateur de messages in-app B.Layer pour vous aider à créer des messages in-app intégrés à la marque qui peuvent être exportés sous forme de fichier zip ou HTML intégré vers Braze. Cette intégration ne nécessite pas de ressources de développement supplémentaires, ce qui vous permet d’économiser du temps et de l’argent. +L’intégration de [B.Layer]({{site.baseurl}}/partners/message_orchestration/channel_extensions/email_templates/blayer) et de Braze vous permet de tirer parti du générateur de messages in-app B.Layer pour vous aider à créer des messages in-app intégrés à la marque qui peuvent être exportés sous forme de fichier zip ou HTML intégré vers Braze. Cette intégration ne nécessite pas de ressources de développement supplémentaires, ce qui vous permet d'économiser du temps et de l'argent. #### Contentsquare - Analytiques -L’intégration de [Contentsquare]({{site.baseurl}}/partners/data_and_infrastructure_agility/analytics/contentsquare/) et de Braze vous permet d’envoyer des signaux en direct (fraude, signaux de frustration, etc.) en tant qu’événements personnalisés dans Braze. Tirez parti des insights sur l’expérience Contentsquare pour améliorer la pertinence et les taux de conversion de vos campagnes en ciblant les messages en fonction de l’expérience numérique et du langage corporel de vos clients. +L’intégration de [Contentsquare]({{site.baseurl}}/partners/data_and_infrastructure_agility/analytics/contentsquare/) et de Braze vous permet d’envoyer des signaux en direct (fraude, signaux de frustration, etc.) en tant qu’événements personnalisés dans Braze. Tirez parti des insights sur l'expérience Contentsquare pour améliorer la pertinence et les taux de conversion de vos campagnes en ciblant les messages en fonction de l'expérience numérique et du langage corporel de vos clients. #### Dynamic Yield - Contenu dynamique Le partenariat entre [Dynamic Yield]({{site.baseurl}}/partners/message_personalization/dynamic_content/dynamic_yield/) et Braze vous permet de tirer parti du moteur de recommandations et de segmentations de Dynamic Yield pour créer des blocs d’expérience pouvant être intégrés à des messages Braze. Les blocs d’expérience peuvent être constitués des éléments suivants : -- **Blocs de recommandations** : Définissez des algorithmes et appliquez des filtres au contenu personnalisé des utilisateurs se propageant lorsque l’e-mail est ouvert. +- **Blocs de recommandations** : Définissez des algorithmes et appliquez des filtres au contenu personnalisé des utilisateurs se propageant lors que l’e-mail est ouvert. - **Blocs de contenu dynamique** : Adaptez les promotions et les messages aux différents utilisateurs ciblés. Le ciblage peut être réalisé en fonction de l’affinité ou de l’audience. Dynamic Yield détermine quelle expérience personnalisée offrir lorsque l’e-mail est ouvert. #### Octolis - Analytiques @@ -369,13 +367,13 @@ L’intégration d’[Octolis]({{site.baseurl}}/partners/data_and_infrastructure [Phrasee React]({{site.baseurl}}/partners/data_and_infrastructure_agility/ab_testing/phrasee/phrasee_react/), de Phrasee X, tire profit de Currents Braze et du Contenu connecté pour collecter les informations de suivi des clics de vos utilisateurs abonnés à l’aide de webhooks. Phrasee associe ensuite ces événements à vos variantes de langue pour optimiser la langue en temps réel. #### Sheetlabs - Contenu dynamique -L’intégration de [Sheetlabs]({{site.baseurl}}/partners/message_personalization/dynamic_content/sheetlabs/) et de Braze vous permet de tirer parti de [Contenu connecté](https://www.braze.com/docs/user_guide/personalization_and_dynamic_content/connected_content/about_connected_content/) pour inclure les API de Sheetlabs dans vos campagnes de marketing Braze. Cette fonction est généralement utilisée pour faire le lien entre une feuille de calcul Google (qui est mise à jour directement par l’équipe marketing) et les modèles de Braze. Cela vous permet d’obtenir plus de résultats avec les modèles Braze, comme des traductions ou des ensembles plus importants d’attributs personnalisés. +L’intégration de [Sheetlabs]({{site.baseurl}}/partners/message_personalization/dynamic_content/sheetlabs/) et de Braze vous permet de tirer parti de [Contenu connecté](https://www.braze.com/docs/user_guide/personalization_and_dynamic_content/connected_content/about_connected_content/) pour inclure les API de Sheetlabs dans vos campagnes de marketing Braze. Cette fonction est généralement utilisée pour faire le lien entre une feuille de calcul Google (qui est mise à jour directement par l'équipe marketing) et les modèles de Braze. Cela vous permet d'obtenir plus de résultats avec les modèles Braze, comme des traductions ou des ensembles plus importants d'attributs personnalisés. #### Tellius - Analytiques L’intégration de [Tellius]({{site.baseurl}}/partners/data_and_infrastructure_agility/analytics/tellius/) et de Braze permet aux utilisateurs d’exploiter les données, sans avoir recours à des ingénieurs BI, pour créer des tableaux de bord et générer des insights afin de prendre de meilleures décisions marketing. #### ThoughtSpot - Analytiques -L’intégration de [ThoughtSpot]({{site.baseurl}}/partners/data_and_infrastructure_agility/analytics/thoughtspot/) et de Braze s’appuie sur les ThoughtSpot TML Blocks qui permettent aux utilisateurs de Braze d’accélérer leurs analyses du comportement des utilisateurs grâce à des modèles préétablis de feuilles de travail et de modèles. Cette intégration permet aux utilisateurs d’effectuer des recherches illimitées dans leurs données d’interaction Braze et de découvrir des insights exploitables. +L’intégration de [ThoughtSpot]({{site.baseurl}}/partners/data_and_infrastructure_agility/analytics/thoughtspot/) et de Braze s’appuie sur les ThoughtSpot TML Blocks qui permettent aux utilisateurs de Braze d’accélérer leurs analyses du comportement des utilisateurs grâce à des modèles préétablis de feuilles de travail et de modèles. Cette intégration permet aux utilisateurs d'effectuer des recherches illimitées dans leurs données d'interaction Braze et de découvrir des insights exploitables. #### Wunderkind - Analytiques L’intégration de [Wunderkind]({{site.baseurl}}/partners/data_and_infrastructure_agility/analytics/wunderkind/) et de Braze vous permet d’analyser l’amélioration des performances et d’identifier davantage d’utilisateurs anonymes, en mettant à l’échelle 1 pour 1 de manière significative les messages envoyés via Braze et les contacts ajoutés directement à Braze. @@ -435,7 +433,7 @@ Nous avons ajouté un nouveau cas d’utilisation à la [Bibliothèque de cas d Les mises à jour SDK suivantes ont été publiées. Il n’y a pas de mises à jour récentes avec ces versions. Vous pouvez trouver toutes les autres mises à jour en consultant les journaux de modifications SDK correspondants. -- [SDK Android 23.3.0](https://github.com/Appboy/appboy-android-sdk/blob/master/CHANGELOG.md#2330) +- [SDK Android 23.3.0](https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md#2330) - [SDK Web 4.4.0](https://github.com/braze-inc/braze-web-sdk/blob/master/CHANGELOG.md#440) - [SDK Unity 3.11.0](https://github.com/Appboy/appboy-unity-sdk/blob/master/CHANGELOG.md#3110) - [SDK Xamarin 1.26.0](https://github.com/braze-inc/braze-xamarin-sdk/blob/master/CHANGELOG.md#1260) @@ -454,7 +452,7 @@ Les blocs de contenu utilisés exclusivement dans l’éditeur Drag & Drop ont d ### ScriptTag Shopify -L’[intégration de Braze et Shopify]({{site.baseurl}}/partners/message_orchestration/channel_extensions/ecommerce/shopify) vous permet désormais d’implanter notre intégration SDK Web via ScriptTag dans votre boutique Shopify. L’implémentation de notre SDK Web via ScriptTag permet de suivre les éléments suivants : +L’[intégration de Braze et Shopify]({{site.baseurl}}/partners/message_orchestration/channel_extensions/ecommerce/shopify) vous permet désormais d’implanter notre intégration SDK Web via ScriptTag dans votre boutique Shopify. L'implémentation de notre SDK Web via ScriptTag permet de suivre les éléments suivants : - Suivi des utilisateurs anonymes pour suivre l’activité des clients dans votre magasin - Suivi des utilisateurs actifs par mois étant donné que le SDK Web est capable de suivre les données de session des visiteurs de votre boutique - Option pour obtenir les données utilisateur Shopify qui compteront dans votre consommation de point de données @@ -476,11 +474,11 @@ Le [Désabonnement vague]({{site.baseurl}}/user_guide/message_building_by_channe Les mises à jour SDK suivantes ont été publiées. Les dernières mises à jour sont répertoriées ci-dessous ; vous pouvez trouver toutes les autres mises à jour en consultant les journaux de modifications SDK correspondants. -- [SDK  23.2.0-23.2.1](https://github.com/Appboy/appboy-android-sdk/blob/master/CHANGELOG.md#2321) +- [SDK  23.2.0-23.2.1](https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md#2321) - [SDK iOS Objective-C 4.5.1](https://github.com/Appboy/appboy-ios-sdk/blob/master/CHANGELOG.md#451) - [SDK iOS Swift 5.5.0S-SDK 5.5.1](https://github.com/braze-inc/braze-swift-sdk/blob/main/CHANGELOG.md#550) - [SDK Cordova 2.31.0](https://github.com/Appboy/appboy-cordova-sdk/blob/master/CHANGELOG.md#2310) - - Mis à jour vers [SDK Android de Braze 23.0.1](https://github.com/Appboy/appboy-android-sdk/releases/tag/v23.0.1). + - Mis à jour vers [SDK Android de Braze 23.0.1](https://github.com/braze-inc/braze-android-sdk/releases/tag/v23.0.1). - [Unity 3.10.0](https://github.com/Appboy/appboy-unity-sdk/blob/master/CHANGELOG.md#3100) - [SDK React v1.39.0](https://github.com/braze-inc/braze-react-native-sdk/blob/master/CHANGELOG.md#1400) - Mise à jour du SDK Android natif vers 23.2.0. @@ -515,7 +513,7 @@ Braze et [Shopify]({{site.baseurl}}/partners/message_orchestration/channel_exten Les mises à jour SDK suivantes ont été publiées. Les dernières mises à jour sont répertoriées ci-dessous ; vous pouvez trouver toutes les autres mises à jour en consultant les journaux de modifications SDK correspondants. -- [SDK Android 23.1.0–23.12](https://github.com/Appboy/appboy-android-sdk/blob/master/CHANGELOG.md) +- [SDK Android 23.1.0–23.12](https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md) - [SDK React Native v1.38.0–v1.38.1](https://github.com/braze-inc/braze-expo-plugin/blob/main/CHANGELOG.md) - Mise à jour du pont Android natif vers le SDK Android de Braze 23.0.1. - Mise à jour du pont iOS natif vers le SDK iOS de Braze 4.5.0. diff --git a/_lang/fr/_help/release_notes/2022/10_18_22.md b/_lang/fr/_help/release_notes/2022/10_18_22.md index b83dbdd94e3..abc4bb638ed 100644 --- a/_lang/fr/_help/release_notes/2022/10_18_22.md +++ b/_lang/fr/_help/release_notes/2022/10_18_22.md @@ -14,15 +14,15 @@ L’onglet **Message History (Historique d’envoi de messages)** du profil util ## Blocs de contenu de l’éditeur Drag & Drop -Les blocs de contenu utilisés exclusivement dans l’éditeur Drag & Drop ont des fonctionnalités similaires aux [blocs de contenu]({{site.baseurl}}/user_guide/engagement_tools/templates_and_media/content_blocks/) utilisés sur différents canaux. Ils servent d’emplacement centralisé pour la conservation d’informations qui peuvent être référencées dans diverses campagnes par e-mail. Il peut s’agir de regrouper des en-têtes de courriels, des pointeurs promotionnelles et plus encore, le tout sur une seule ligne réutilisable. +Les blocs de contenu utilisés exclusivement dans l’éditeur Drag & Drop ont des fonctionnalités similaires aux [blocs de contenu]({{site.baseurl}}/user_guide/engagement_tools/templates_and_media/content_blocks/) utilisés sur différents canaux. Ils servent d’emplacement centralisé pour la conservation d’informations qui peuvent être référencées dans diverses campagnes par e-mail. Il peut s’agir de regrouper des en-têtes de courriels, des pointeurs promotionnels et plus encore, le tout sur une seule ligne réutilisable. ## ScriptTag Shopify L’[intégration de Braze et Shopify]({{site.baseurl}}/partners/message_orchestration/channel_extensions/ecommerce/shopify) vous permet désormais d’implanter notre intégration SDK Web via ScriptTag dans votre boutique Shopify. L'implémentation de notre SDK Web via ScriptTag permet de suivre les éléments suivants : -- Suivi anonyme des utilisateurs pour suivre l’activité des clients dans votre magasin +- Suivi des utilisateurs anonymes pour suivre l’activité des clients dans votre magasin - Suivi des utilisateurs actifs par mois étant donné que le SDK Web est capable de suivre les données de session des visiteurs de votre boutique -- Option pour obtenir les données utilisateur Shopify qui compteront dans votre consommation de point de données. -- Option pour activer messages dans le navigateur comme canal sur votre boutique Shopify. +- Option pour obtenir les données utilisateur Shopify qui compteront dans votre consommation de point de données +- Option pour activer messages dans le navigateur comme canal sur votre boutique Shopify ## Endpoint SCIM @@ -40,13 +40,13 @@ Le [Désabonnement vague]({{site.baseurl}}/user_guide/message_building_by_channe Les mises à jour SDK suivantes ont été publiées. Les dernières mises à jour sont répertoriées ci-dessous ; vous pouvez trouver toutes les autres mises à jour en consultant les journaux de modifications SDK correspondants. -- [SDK  23.2.0-23.2.1](https://github.com/Appboy/appboy-android-sdk/blob/master/CHANGELOG.md#2321) +- [SDK  23.2.0-23.2.1](https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md#2321) - [SDK iOS Objective-C 4.5.1](https://github.com/Appboy/appboy-ios-sdk/blob/master/CHANGELOG.md#451) - [SDK iOS Swift 5.5.0S-SDK 5.5.1](https://github.com/braze-inc/braze-swift-sdk/blob/main/CHANGELOG.md#550) - [SDK Cordova 2.31.0](https://github.com/Appboy/appboy-cordova-sdk/blob/master/CHANGELOG.md#2310) - - Mis à jour vers [SDK Android de Braze 23.0.1](https://github.com/Appboy/appboy-android-sdk/releases/tag/v23.0.1). + - Mis à jour vers [SDK Android de Braze 23.0.1](https://github.com/braze-inc/braze-android-sdk/releases/tag/v23.0.1). - [Unity 3.10.0](https://github.com/Appboy/appboy-unity-sdk/blob/master/CHANGELOG.md#3100) -- [SDK React v1.39.0](https://github.com/Appboy/appboy-react-sdk/blob/master/CHANGELOG.md#1400) +- [SDK React v1.39.0](https://github.com/braze-inc/braze-react-native-sdk/blob/master/CHANGELOG.md#1400) - Mise à jour du SDK Android natif vers 23.2.0. - Renommer la variable de modèle gradle `kotlin_versio` en `kotlinVersion` - [SDK Flutter 2.6.0](https://pub.dev/packages/braze_plugin/changelog#260) diff --git a/_lang/fr/_help/release_notes/2022/11_15_22.md b/_lang/fr/_help/release_notes/2022/11_15_22.md index a532142303a..d5d3b18d6f1 100644 --- a/_lang/fr/_help/release_notes/2022/11_15_22.md +++ b/_lang/fr/_help/release_notes/2022/11_15_22.md @@ -44,9 +44,9 @@ Nous avons ajouté un nouveau cas d’utilisation à la [Bibliothèque de cas d Les mises à jour SDK suivantes ont été publiées. Il n’y a pas de mises à jour récentes avec ces versions. Vous pouvez trouver toutes les autres mises à jour en consultant les journaux de modifications SDK correspondants. -- [SDK Android 23.3.0](https://github.com/Appboy/appboy-android-sdk/blob/master/CHANGELOG.md#2330) +- [SDK Android 23.3.0](https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md#2330) - [SDK Web 4.4.0](https://github.com/braze-inc/braze-web-sdk/blob/master/CHANGELOG.md#440) - [SDK Unity 3.11.0](https://github.com/Appboy/appboy-unity-sdk/blob/master/CHANGELOG.md#3110) -- [SDK Xamarin 1.26.0](https://github.com/Appboy/appboy-xamarin-bindings/blob/master/CHANGELOG.md#1260) +- [SDK Xamarin 1.26.0](https://github.com/braze-inc/braze-xamarin-sdk/blob/master/CHANGELOG.md#1260) - [SDK iOS Swift 5.6.0–5.6.2](https://github.com/braze-inc/braze-swift-sdk/blob/main/CHANGELOG.md#562) - [SDK Flutter 2.6.1](https://pub.dev/packages/braze_plugin/changelog#261) diff --git a/_lang/fr/_help/release_notes/2022/7_26_22.md b/_lang/fr/_help/release_notes/2022/7_26_22.md index 900bb03787b..1871b9b293b 100644 --- a/_lang/fr/_help/release_notes/2022/7_26_22.md +++ b/_lang/fr/_help/release_notes/2022/7_26_22.md @@ -36,7 +36,7 @@ Les mises à jour SDK suivantes ont été publiées. Les dernières mises à jou - [SDK Roku 0.1.2](https://github.com/braze-inc/braze-roku-sdk/blob/main/CHANGELOG.md#012) - [SDK React Native 1.37.0](https://github.com/braze-inc/braze-react-native-sdk/blob/master/CHANGELOG.md#1370) - Le SDK React Native de Braze exporte désormais son objet par défaut en tant que module ES. Si vous importez actuellement le SDK à l’aide de `require()`, vous devrez maintenant l’importer en tant que module ES standard (par exemple, importer Braze à partir de "`@braze/react-native-sdk`"). -- [SDK Android 22.0.0](https://github.com/Appboy/appboy-android-sdk/blob/master/CHANGELOG.md#2200) +- [SDK Android 22.0.0](https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md#2200) - `Appboy.java` est désormais `Braze.kt`. Les clients Kotlin devront mettre à jour leur code pour prendre en charge l’utilisation des propriétés Kotlin sur le singleton Braze si nécessaire. - `Braze.registerPushToken()`/`Braze.getRegisteredPushToken()` est désormais `Braze.setRegisteredPushToken()/Braze.getRegisteredPushToken()`. Si vous utilisez Kotlin, utilisez la propriété `Braze.registeredPushToken`. - `Braze.getDeviceId` est désormais simplement `Braze.deviceId` pour Kotlin. @@ -45,7 +45,7 @@ Les mises à jour SDK suivantes ont été publiées. Les dernières mises à jou - Remplacé `setCustomAppboyNotificationFactory()` par `setCustomBrazeNotificationFactory()` / `customBrazeNotificationFactory`. - Renommé `enableMockAppboyNetworkRequestsAndDropEventsMode` par `enableMockNetworkRequestsAndDropEventsMode`. - Déplacé `com.appboy.IBrazeEndpointProvider` vers `com.braze.IBrazeEndpointProvider`. - - Renommé `com.appboy.events.IEventSubscriber` par `com.braze.events.IEventSubscriber`. + - Renommé `com.braze.events.IEventSubscriber` par `com.braze.events.IEventSubscriber`. - Supprimé `Appboy.registerAppboyPushMessages()` / `Appboy.getAppboyPushMessageRegistrationId()`. Remplacé avec `getRegisteredPushToken()` / `setRegisteredPushToken()`. - Remplacé `IAppboyNotificationFactory` par `IBrazeNotificationFactory`. - Supprimé `com.appboy.ui.inappmessage.listeners.IHtmlInAppMessageActionListener`. Utilisez `com.braze.ui.inappmessage.listeners.IHtmlInAppMessageActionListener` à la place. diff --git a/_lang/fr/_help/release_notes/2022/8_23_22.md b/_lang/fr/_help/release_notes/2022/8_23_22.md index 9c68b5cb89b..48779d292e2 100644 --- a/_lang/fr/_help/release_notes/2022/8_23_22.md +++ b/_lang/fr/_help/release_notes/2022/8_23_22.md @@ -75,5 +75,5 @@ Les mises à jour SDK suivantes ont été publiées. Les dernières mises à jou - [SDK Web 4.2.0–4.2.1](https://github.com/braze-inc/braze-web-sdk/blob/master/CHANGELOG.md#421) - [iOS 4.5.0](https://github.com/Appboy/appboy-ios-sdk/blob/master/CHANGELOG.md#450) (Objective-C) - [iOS Swift 5.1.0–5.2.0](https://github.com/braze-inc/braze-swift-sdk/blob/main/CHANGELOG.md#520) -- [Android 23.0.0–23.0.1](https://github.com/Appboy/appboy-android-sdk/blob/master/CHANGELOG.md#2301) - - `BaseContentCardView.bindViewHolder()` prend désormais `Card` au lieu du type générique. \ No newline at end of file +- [Android 23.0.0–23.0.1](https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md#2301) + - `BaseContentCardView.bindViewHolder()` prend désormais `Card` au lieu du type générique. diff --git a/_lang/fr/_help/release_notes/2022/9_20_22.md b/_lang/fr/_help/release_notes/2022/9_20_22.md index 59f451d17db..22de593798e 100644 --- a/_lang/fr/_help/release_notes/2022/9_20_22.md +++ b/_lang/fr/_help/release_notes/2022/9_20_22.md @@ -29,7 +29,7 @@ Braze et [Shopify]({{site.baseurl}}/partners/message_orchestration/channel_exten Les mises à jour SDK suivantes ont été publiées. Les dernières mises à jour sont répertoriées ci-dessous ; vous pouvez trouver toutes les autres mises à jour en consultant les journaux de modifications SDK correspondants. -- [SDK Android 23.1.0–23.12](https://github.com/Appboy/appboy-android-sdk/blob/master/CHANGELOG.md) +- [SDK Android 23.1.0–23.12](https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md) - [SDK React Native v1.38.0–v1.38.1](https://github.com/braze-inc/braze-expo-plugin/blob/main/CHANGELOG.md) - Mise à jour du pont Android natif vers le SDK Android de Braze 23.0.1. - Mise à jour du pont iOS natif vers le SDK iOS de Braze 4.5.0. diff --git a/_lang/fr/_help/release_notes/2023.md b/_lang/fr/_help/release_notes/2023.md index 5b17b9d5ac6..106f92ed01a 100644 --- a/_lang/fr/_help/release_notes/2023.md +++ b/_lang/fr/_help/release_notes/2023.md @@ -19,7 +19,7 @@ guide_menu_list: - name: 7 février 2023 link: /docs/help/release_notes/2023/2_7_23/ fa_icon: fas fa-heart - - name: 7 mars 2022 + - name: 7 mars 2023 link: /docs/help/release_notes/2023/3_7_23/ fa_icon: fas fa-birthday-cake --- \ No newline at end of file diff --git a/_lang/fr/_help/release_notes/2023/1_10_23.md b/_lang/fr/_help/release_notes/2023/1_10_23.md index 4309e9cd9c0..dc393dd069b 100644 --- a/_lang/fr/_help/release_notes/2023/1_10_23.md +++ b/_lang/fr/_help/release_notes/2023/1_10_23.md @@ -36,11 +36,11 @@ Vous pouvez suivre le moment où vos utilisateurs quittent un Canvas en effectua Les mises à jour SDK suivantes ont été publiées. Les dernières mises à jour sont répertoriées ci-dessous ; vous pouvez trouver toutes les autres mises à jour en consultant les journaux de modifications SDK correspondants. - [SDK Web 4.5.1](https://github.com/braze-inc/braze-web-sdk/blob/master/CHANGELOG.md) -- [SDK iOS AppboyKit 4.5.2](https://github.com/Appboy/appboy-ios-sdk/releases/tag/4.5.2) +- [SDK iOS AppboyKit 4.5.2](https://github.com/Appboy/appboy-ios-sdk/releases/tag/4.5.2) - [SDK Swift 5.8.0–5.8.1](https://github.com/braze-inc/braze-swift-sdk/blob/main/CHANGELOG.md#580) - Renomme la classe `BrazeLocation` en `BrazeLocationProvider` pour éviter de mettre dans l’ombre le module du même nom. - [SDK Flutter 3.0.1](https://pub.dev/packages/braze_plugin/changelog) -- [SDK Android 24.0.0](https://github.com/Appboy/appboy-android-sdk/blob/master/CHANGELOG.md) +- [SDK Android 24.0.0](https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md) - La fonctionnalité de positionnement et de geofence a été déplacée dans un nouveau module appelé `com.braze:android-sdk-location`. - Les classes et les fichiers Appboy ont tous été déplacés vers Braze. - Modification du comportement par défaut de `DefaultContentCardsUpdateHandler` pour utiliser la date de création au lieu de la date de dernière mise à jour lors du tri des cartes de contenu. diff --git a/_lang/fr/_help/release_notes/2023/2_7_23.md b/_lang/fr/_help/release_notes/2023/2_7_23.md index aa78801da90..dfb643799e4 100644 --- a/_lang/fr/_help/release_notes/2023/2_7_23.md +++ b/_lang/fr/_help/release_notes/2023/2_7_23.md @@ -27,16 +27,16 @@ Cette fonctionnalité est actuellement en version bêta. Si vous souhaitez parti ## Nouveaux événements Currents -Les événements Currents suivants ont récemment été publiés et ajoutés au [glossaire des événements d’engagement par message]({{site.baseurl}}/user_guide/data_and_analytics/braze_currents/event_glossary/message_engagement_events) : +Les événements Currents suivants ont récemment été publiés et ajoutés aux glossaires [ des événements d’engagement par message]({{site.baseurl}}/user_guide/data_and_analytics/braze_currents/event_glossary/message_engagement_events) et des [événements utilisateur et de comportement des clients]({{site.baseurl}}/user_guide/data_and_analytics/braze_currents/event_glossary/customer_behavior_events) : Événements d’interruption de message : -- `users_messages_contentcard_abort` -- `users_messages_email_abort` -- `users_messages_inappmessage_abort` -- `users_messages_newsfeedcard_abort` -- `users_messages_pushnotification_abort` -- `users_messages_sms_abort` -- `users_messages_webhook_abort` +- `users.messages.contentcard.abort` +- `users.messages.email.abort` +- `users.messages.inappmessage.abort` +- `users.messages.newsfeedcard.abort` +- `users.messages.pushnotification.abort` +- `users.messages.sms.abort` +- `users.messages.webhook.abort` Événements de clic sur lien court SMS : - `users.messages.sms.ShortLinkClick` @@ -48,10 +48,8 @@ Les événements Currents suivants ont récemment été publiés et ajoutés au - `users.behaviors.subscriptiongroup.StateChange` Événements de sortie Canvas : -- `users_canvas_exit_PerformedEvent` -- `users_canvas_exit_PerformedEvent_Details` -- `users_canvas_exit_MatchedAudience` -- `users_canvas_exit_MatchedAudience_Details` +- `users.canvas.exit.PerformedEvent` +- `users.canvas.exit.MatchedAudience` ## Variante personnalisée @@ -79,7 +77,7 @@ Utilisez l’[endpoint Mettre à jour l’alias d'utilisateur]({{site.baseurl}}/ Les mises à jour SDK suivantes ont été publiées. Les dernières mises à jour sont répertoriées ci-dessous ; vous pouvez trouver toutes les autres mises à jour en consultant les journaux de modifications SDK correspondants. - [SDK Web 4.6.0-4.6.1](https://github.com/braze-inc/braze-web-sdk/blob/master/CHANGELOG.md#461) -- [SDK Android 24.1.0-24.2.0](https://github.com/Appboy/appboy-android-sdk/blob/master/CHANGELOG.md#2420) +- [SDK Android 24.1.0-24.2.0](https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md#2420) - [SDK iOS AppboyKit 4.5.3](https://github.com/Appboy/appboy-ios-sdk/releases/tag/4.5.3) - [SDK Swift 5.9.0-5.9.1](https://github.com/braze-inc/braze-swift-sdk/blob/main/CHANGELOG.md#591) - Élève la cible minimale de déploiement vers iOS 11.0 et tvOS 11.0. diff --git a/_lang/fr/_help/release_notes/deprecations.md b/_lang/fr/_help/release_notes/deprecations.md index d56796a2296..1cad76e6d92 100644 --- a/_lang/fr/_help/release_notes/deprecations.md +++ b/_lang/fr/_help/release_notes/deprecations.md @@ -2,7 +2,7 @@ nav_title: Obsolescences article_title: Obsolescences page_order: 9 -layout: dev_guide +layout: featured guide_top_header: "Obsolescences" guide_top_text: "La technologie évolue constamment, chez Braze et en dehors ! Et nous faisons de notre mieux pour tenir la cadence. Ici, vous en apprendrez plus sur les origines de Braze et sa technologie - ce que nous faisions « avant », avant maintenant...

Vous êtes peut-être arrivé ici en faisant une recherche sur une intégration ou fonctionnalité qui n’existe plus. C’est notre manière de vous tenir informé de nos progrès et des mouvements au sein de l’industrie technologique.

Vous pouvez trouver une liste de fonctions désactivées et non prises en charge et lire les articles associés en visitant les liens suivants." @@ -41,7 +41,7 @@ guide_featured_list: La prise en charge de Grouparo a été arrêtée en avril 2022. -L’utilisation d’un `BroadcastReceiver` personnalisé pour les notifications push est obsolète. À la place, utilisez [` subscribeToPushNotificationEvents()`](/docs/developer_guide/platform_integration_guides/android/push_notifications/android/customization/custom_event_callback/). +L’utilisation d’un `BroadcastReceiver` personnalisé pour les notifications push est obsolète. Utilisez [` subscribeToPushNotificationEvents()`](/docs/developer_guide/platform_integration_guides/android/push_notifications/android/customization/custom_event_callback/) à la place. ## Partenariat avec Grouparoo @@ -110,7 +110,7 @@ Le SDK Braze fournissait un widget de commentaires qui pouvait être ajouté à **Fin du support** : Fin de prise en charge par Braze : Juillet 2018, fin de prise en charge par Google : 29 mai 2019
**Remplacé par** : [Firebase Cloud Messaging (FCM)]({{site.baseurl}}/developer_guide/platform_integration_guides/android/push_notifications/integration/standard_integration/#step-1-enable-firebase) -Google a [cessé de prendre GCM en charge](https://developers.googleblog.com/2018/04/time-to-upgrade-from-gcm-to-fcm.html) depuis le 29 mai 2019. Braze a cessé le support GCM pour les SDK Android en juillet 2018, ce qui a été noté dans notre [Journal de modifications du SDK Android](https://github.com/Appboy/appboy-android-sdk/blob/master/CHANGELOG.md). Cela signifie que les jetons GCM existants continueront de fonctionner, et vous pourrez envoyer des messages à vos utilisateurs existants. Mais vous ne pourrez pas envoyer de messages à des nouveaux utilisateurs. +Google a [cessé de prendre GCM en charge](https://developers.googleblog.com/2018/04/time-to-upgrade-from-gcm-to-fcm.html) depuis le 29 mai 2019. Braze a cessé le support GCM pour les SDK Android en juillet 2018, ce qui a été noté dans notre [Journal de modifications du SDK Android](https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md). Cela signifie que les jetons GCM existants continueront de fonctionner, et vous pourrez envoyer des messages à vos utilisateurs existants. Mais vous ne pourrez pas envoyer de messages à des nouveaux utilisateurs. Les clients qui n’ont pas encore migré vers [Messagerie cloud Firebase (FCM)]({{site.baseurl}}/developer_guide/platform_integration_guides/android/push_notifications/integration/standard_integration/#step-1-enable-firebase) peuvent être affecté par ce changement. diff --git a/_lang/fr/_help/release_notes/deprecations/custom_broadcast_receiver.md b/_lang/fr/_help/release_notes/deprecations/custom_broadcast_receiver.md index 5d198874b96..e9a0cc55efd 100644 --- a/_lang/fr/_help/release_notes/deprecations/custom_broadcast_receiver.md +++ b/_lang/fr/_help/release_notes/deprecations/custom_broadcast_receiver.md @@ -146,8 +146,8 @@ val myExtra = extras.getString("my_key") {% endtabs %} {% alert note %} -Pour consulter la documentation sur les clés de données de la notification push Braze, reportez-vous au [SDK Android](https://appboy.github.io/appboy-android-sdk/kdoc/braze-android-sdk/com.braze/-constants/index.html?query=object%20Constants). +Pour consulter la documentation sur les clés de données de la notification push Braze, reportez-vous au [SDK Android](https://braze-inc.github.io/braze-android-sdk/kdoc/braze-android-sdk/com.braze/-constants/index.html?query=object%20Constants). {% endalert %} [53]: https://developer.android.com/reference/android/content/BroadcastReceiver.html -[71]: https://github.com/Appboy/appboy-android-sdk/blob/master/samples/custom-broadcast/src/main/AndroidManifest.xml "AndroidManifest.xml" +[71]: https://github.com/braze-inc/braze-android-sdk/blob/master/samples/custom-broadcast/src/main/AndroidManifest.xml "AndroidManifest.xml" diff --git a/_lang/fr/_help/release_notes/deprecations/eclipse_setup_deprecated.md b/_lang/fr/_help/release_notes/deprecations/eclipse_setup_deprecated.md index 8aefa1ec041..72ab2b96719 100644 --- a/_lang/fr/_help/release_notes/deprecations/eclipse_setup_deprecated.md +++ b/_lang/fr/_help/release_notes/deprecations/eclipse_setup_deprecated.md @@ -16,7 +16,7 @@ Braze a arrêté sa prise en charge de l’IDE Eclipse, car [Google arrête sa p Via la ligne de commande, clonez le [référentiel GitHub de Braze Android][03]. ```bash -$ git clone git@github.com:Appboy/appboy-android-sdk.git +$ git clone git@github.com:braze-inc/braze-android-sdk.git ``` ## Étape 2 @@ -68,9 +68,9 @@ Ajouter les éléments restants. `` à votre AndroidManifest.xml, car Eclipse ne prend pas en charge le manifest merging (fusion de manifeste). - - Pour le SDK version 1.7.0 ou supérieure, vous devrez copier « assets/fontawesome-webfont.ttf » de notre projet Bibliothèque vers votre application. Eclipse n’inclut pas automatiquement le dossier des assets à partir des bibliothèques. + - Pour le SDK version 1.7.0 ou supérieure, vous devrez copier « assets/fontawesome-webfont.ttf » de notre bibliothèque de projet vers votre application. Eclipse n’inclut pas automatiquement le dossier des assets à partir des bibliothèques. -[03]: https://github.com/appboy/appboy-android-sdk "Appboy Android GitHub Repository" +[03]: https://github.com/braze-inc/braze-android-sdk "Appboy Android GitHub Repository" [04]: {{site.baseurl}}/assets/img_archive/file_import.png [05]: {{site.baseurl}}/assets/img_archive/android_import.png [06]: {{site.baseurl}}/assets/img_archive/click_browse.png diff --git a/_lang/fr/_hidden/archive_lang/fr/android_11.md b/_lang/fr/_hidden/archive_lang/fr/android_11.md new file mode 100644 index 00000000000..c90732b0886 --- /dev/null +++ b/_lang/fr/_hidden/archive_lang/fr/android_11.md @@ -0,0 +1,52 @@ +--- +nav_title: Guide de mise à niveau vers Android 11 +article_title: Guide de mise à niveau vers Android 11 +page_order: 9 +platform: + - Android + - FireOS +description: "Cet article de référence couvre la mise à niveau du SDK pour Android 11, mettant en évidence des changements tels que la création de liens profonds, la compatibilité SDK, etc." +hidden: true +--- + +# Guide de mise à niveau du SDK pour Android 11 + +Ce guide décrit les modifications pertinentes introduites dans Android 11 (publié le 8 septembre 2020) et les étapes de mise à niveau requises pour l’intégration SDK Braze pour Android. + +Pour un guide de migration complet vers Android 11, consultez la [documentation du développeur Android](https://developer.android.com/preview/migration). + +## Compatibilité du SDK Braze + +Toutes les applications qui _ciblent_ Android 11 (API 30) doivent être mises à niveau vers le [SDK Braze pour Android v8.1.0 et ultérieures][1] pour continuer à utiliser les fonctions de messagerie Braze. + +{% alert important %} +En raison des modifications apportées aux API d’Android 11, les applications ayant un ciblage Android 11 qui ne sont pas mises à niveau vers le SDK Braze pour Android v8.1.0 et ultérieures rencontreront des problèmes avec la création de liens profonds des composants IU de Braze et n’afficheront pas correctement les messages in-app HTML personnalisés. +{% endalert %} + +### Liens profonds + +Les applications ayant un ciblage Android 11 ou une version ultérieure (API version 30 et ultérieures) doivent être mises à niveau vers le [SDK Braze pour Android v8.1.0][1] pour pouvoir continuer à utiliser des liens profonds dans les messages de Braze. En raison d’un changement dans les API Android 11, les applications qui ne sont pas mises à niveau vers le SDK pour Android v8.1.0 au moins rencontreront des problèmes avec les liens profonds dans les messages de Braze (messages in-app ou cartes de contenu). + +### Messages in-app HTML + +Les applications ayant un ciblage Android 11 ou une version ultérieure (API version 30 et ultérieures) doivent être mises à niveau vers le SDK Braze pour Android v8.1.0 pour continuer à utiliser des messages in-app HTML personnalisés. En raison d’un changement dans les paramètres WebView d’Android 11, les messages in-app HTML ne s’afficheront pas correctement sur les applications Android 11 ciblées et ce jusqu’à la mise à niveau vers le [SDK Braze pour Android v8.1.0][1]. + +### Autorisations de position + +Les applications utilisant les autorisations de position doivent suivre les [meilleures pratiques](https://developer.android.com/preview/privacy/location#change-details) Android lors de la demande d’accès à l’emplacement. Aucune modification de votre intégration Braze n’est nécessaire pour ces mises à jour de position. + +## Changements de comportement d’Android 11 + +### Permissions à autorisation unique + +Les utilisateurs peuvent désormais accorder des autorisations, telles que la collecte de la position, sur une base ponctuelle (référez-vous aux [documents Android](https://developer.android.com/preview/privacy/location#one-time-access) pour plus d’informations). Une fois qu’une application est fermée ou en arrière-plan assez longtemps, cette autorisation sera révoquée automatiquement. L’application devra demander à nouveau cette autorisation lorsqu’elle en aura ultérieurement besoin. Les applications qui suivent déjà le flux recommandé pour la demande d’autorisations de position prennent en charge les autorisations ponctuelles. + +![][3]{: height="230px" } + +### Autorisation de position en arrière-plan + +Android 11 exigera des applications qu’elles demandent d’abord l’autorisation de position en premier plan puis, une fois que l’application est en arrière-plan, elle peut demander à nouveau une autorisation de position en arrière-plan à l’utilisateur. +Les clients utilisant des geofences doivent s’assurer que leur application respecte les recommandations d’Android concernant la collecte de l’autorisation de position en l’arrière-plan. Pour plus d’informations, référez-vous aux [documents Android](https://developer.android.com/preview/privacy/location#background-location). + +[1]: https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md#810 +[3]: {% image_buster /assets/img/android/android-11-one-time-permission.svg %} diff --git a/_lang/fr/_hidden/archive_lang/fr/android_12.md b/_lang/fr/_hidden/archive_lang/fr/android_12.md new file mode 100644 index 00000000000..de6120e21c8 --- /dev/null +++ b/_lang/fr/_hidden/archive_lang/fr/android_12.md @@ -0,0 +1,28 @@ +--- +nav_title: Guide de mise à niveau vers Android 12 +article_title: Guide de mise à niveau vers Android 12 +page_order: 9 +hidden: true +platform: + - Android + - FireOS +description: "Cet article de référence couvre la mise à jour du SDK pour Android 12, mettant en évidence des changements tels que la création de liens profonds, la compatibilité SDK, etc." +--- + +# Guide de mise à niveau du SDK pour Android 12 + +Ce guide décrit les modifications pertinentes introduites dans Android 12 (2021) et les étapes de mise à niveau requises pour l’intégration SDK Braze pour Android. + +Pour un guide de migration complet vers Android 12, consultez la [documentation du développeur pour Android](https://developer.android.com/about/versions/12). + +## Compatibilité du SDK Braze + +Si vous utilisez Android 12, vous devez utiliser le [SDK Braze pour Android v13.1.2 et ultérieures][1]. Si vous ne ciblez pas encore Android 12, la mise à niveau est recommandée quand même. + +**Que se passe-t-il si je ne mets pas à niveau mon SDK Braze pour Android ?** + +* En raison d’un changement dans les [boîtes de dialogue du système de fermeture](https://developer.android.com/about/versions/12/behavior-changes-all#close-system-dialogs) d’Android, les versions antérieures du SDK Braze pour Android enregistreront des avertissements lors de la réception de notifications push sur les périphériques fonctionnant sous Android 12. Ce comportement se produit même si votre application ne cible pas Android 12. +* Les modifications dans les [exportations de composants](https://developer.android.com/about/versions/12/behavior-changes-12#exported), les [intentions en attente](https://developer.android.com/about/versions/12/behavior-changes-12#pending-intent-mutability) et les [notifications indirectes](https://developer.android.com/about/versions/12/behavior-changes-12#notification-trampolines) peuvent avoir un impact sur votre capacité à compiler votre application ou empêcher le SDK Braze de s’initialiser. Ce comportement se produit uniquement pour les applications ayant un ciblage Android 12. +* Les modifications dans les [notifications push personnalisées](https://developer.android.com/about/versions/12/behavior-changes-12#custom-notifications) ont transformé la mise en page pour notre nouvelle fonction de [notification push d’image intégrée à Android]({{site.baseurl}}/developer_guide/platform_integration_guides/android/push_notifications/inline_image_push/). Ce comportement se produit uniquement pour les applications ayant un ciblage Android 12. + +[1]: https://github.com/braze-inc/braze-android-sdk/blob/master/CHANGELOG.md#1312 diff --git a/_lang/fr/_hidden/archive_lang/fr/baidu_integration.md b/_lang/fr/_hidden/archive_lang/fr/baidu_integration.md new file mode 100644 index 00000000000..73fc857582d --- /dev/null +++ b/_lang/fr/_hidden/archive_lang/fr/baidu_integration.md @@ -0,0 +1,258 @@ +--- +nav_title: Intégration Baidu +article_title: Intégration de notifications push Baidu pour Android +platform: Android +page_order: 9 +description: "Cet article montre comment configurer une intégration Baidu pour Android." +channel: + - Notification push +hidden: true +--- +# Intégration Baidu +{% multi_lang_include archive/baidu_deprecation.md %} + +Braze peut envoyer des notifications push aux appareils Android en utilisant les [notifications push du cloud Baidu][14]. Notez que l’utilisation de notifications push du cloud Baidu **ne nécessite pas** de distribuer vos applications via l’App Store Baidu. + +## Étape 1 : Créer un compte Baidu + +Pour créer un compte Baidu, consultez le [portail Baidu][7] et cliquez sur **登录** (se connecter) pour afficher une boîte de dialogue qui vous permettra de vous connecter ou de créer un nouveau compte. + +![][33] + +Pour créer un nouveau compte, en bas de la boîte de dialogue de connexion, cliquez sur **立即注册** (nouveau compte). + +![][38]{: style="max-width:70%;"} + +Saisissez votre nom d’utilisateur, votre numéro de téléphone et votre mot de passe dans la page de création de compte. Ensuite, cliquez sur le bouton « Recevoir le code de vérification ». Vous recevrez alors un SMS de Baidu contenant un code de vérification. Enfin, acceptez l’accord de licence et cliquez sur **注册** (créer le compte) pour vous inscrire. Si ces étapes de configuration échouent, essayez de vous enregistrer à l’aide de la connexion au cloud Baidu telle que décrite dans cet [article de connexion](https://www.adchina.io/how-to-open-a-baidu-account-outside-china/). + +![Page d’inscription à Baidu][17]{: style="max-width:80%;"} + +## Étape 2 : S’enregistrer en tant que développeur Baidu + +Ensuite, vous devez vous inscrire en tant que développeur Baidu. Tout d’abord, visitez le [portail du développeur Baidu][36] et choisissez **注册** (créer un nouveau compte développeur) pour commencer l’enregistrement. + +![][37] + +Sur la page d’inscription, choisissez votre type de compte (个人 pour les particuliers, 公司 pour les entreprises) et le type développeur (développeur est présélectionné et correct dans la plupart des cas). Saisissez votre nom, une biographie et un numéro de téléphone avec le code de pays entre parenthèses (par exemple, (1)xxxxxxxxxx). Cliquez sur **发送验证码** (envoyer le code de vérification) et saisissez le code de vérification dans la ligne suivante. Les deux champs suivants, le site Internet du développeur et le logo du développeur, sont facultatifs. Acceptez l’accord de licence et cliquez sur **提交** (envoyer) pour valider. Vous avez maintenant un compte de développeur Baidu. + +![][13] + +## Étape 3 : Enregistrer votre application avec Baidu + +Pour enregistrer votre application avec Baidu, consultez le [portail de projet Baidu][11] et cliquez sur **创建工程** (créer un projet). + +![][10] + +Sur la page suivante, saisissez le nom de votre application. Les deux cases à cocher suivantes sont destinées à activer des services Baidu supplémentaires. Dans la plupart des cas, elles doivent rester vides. + +![][26] + +Lors de la configuration de votre application, vous serez redirigé vers une console qui affiche des informations sur votre application, y compris la clé API. Ensuite, rendez-vous sur **云推送** (notification push cloud) dans la barre latérale. Sur la page suivante, cliquez sur **推送设置** (configurer la notification push). + +![][14] + +![][29] + +Sur la page suivante, saisissez le nom de votre package d’application (par ex., `com.braze.sample`) et indiquez si vous souhaitez mettre en cache les messages et, si oui, pour combien de temps (en heures). Cela indique à Baidu pendant combien de temps continuer à essayer d’envoyer des messages aux utilisateurs hors ligne. Cliquez sur **保存设置** (enregistrer les paramètres) pour enregistrer. + +![][39] + +## Étape 4 : Ajouter Baidu à votre application + +Visitez le [portail SDK de notification push Baidu][40] et téléchargez le dernier SDK Android de notification push cloud de Baidu. + +![][41] + +Dans le SDK, vous trouverez le .jar de service de notification push et les bibliothèques natives spécifiques à la plateforme. Intégrez-les à votre projet. Assurez-vous que votre application cible la version SDK la plus élevée actuellement prise en charge par Baidu. Cette documentation est à jour concernant la version du SDK Android pour la notification push cloud de Baidu `4.6.2.38`. + +Ajoutez les autorisations Baidu suivantes au `AndroidManifest.xml` de votre application. + +```xml + + + + + + + + +``` + +La bibliothèque de Baidu contient des récepteurs de diffusion qui traitent les messages de notification push entrants. Déclarer les récepteurs Baidu internes dans le `AndroidManifest.xml` de votre application à l’intérieur de l’élément ``. + +```xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + +``` + +Vous devrez également créer un récepteur de diffusion qui écoute les messages et les notifications de notifications push entrants. Déclarer votre récepteur dans le `AndroidManifest.xml` de votre application à l’intérieur de l’élément ``. Ce récepteur devra étendre `com.baidu.android.pushservice.PushMessageReceiver` et implémenter des méthodes qui reçoivent des mises à jour d’événements depuis le service de notification push Baidu. + +```xml + + + + + + + +``` + +Dans la méthode `onCreate()` de votre activité principale, ajoutez la ligne suivante qui enregistrera votre application auprès de Baidu et commencera à écouter les messages de notifications push entrants. Assurez-vous de remplacer « Your-API-Key » (Votre clé API) par la clé API Baidu de votre projet. + +``` +PushManager.startWork(getApplicationContext(), PushConstants.LOGIN_TYPE_API_KEY, "Your-API-Key"); +``` + +Enfin, vous devrez enregistrer vos utilisateurs auprès de Braze. Dans la méthode `onBind()` de votre récepteur de diffusion Baidu que vous avez créée dans cette étape, envoyez `channelId` à Braze en utilisant `Braze.registerAppboyPushMessages(channelId)`. + +{% tabs %} +{% tab JAVA %} + +```java +Braze.getInstance(context).setRegisteredPushToken(channelId); +``` + +{% endtab %} +{% tab KOTLIN %} + +```kotlin +Braze.getInstance(context).setRegisteredPushToken(channelId) +``` + +{% endtab %} +{% endtabs %} + +## Étape 5 : Enregistrer l’ouverture de notifications push + +Baidu prend en charge l’envoi de paires clé-valeur supplémentaires avec des messages de notification push au format JSON. La méthode `public void onNotificationClicked(Context context, String title, String description, String customContentString)` de votre récepteur de diffusion sera appelée chaque fois qu’un utilisateur clique sur un message de notification push entrant. Le paramètre `customContentString` contient les compléments au format JSON. Tous les messages de Braze contiendront les deux paires clé-valeur suivantes : + + ```json + { + "source": "Appboy", + "cid": "your-campaign-Id" + } + ``` + +Chaque fois que `onNotificationClicked` est appelé, votre récepteur Baidu doit envoyer une [intention][44] à votre application contenant `customContentString`. Votre application enregistrera le clic sur Braze en utilisant le `customContentString`. + +L’exemple de code suivant transmet `customContentString` à Braze et enregistre un clic : + +{% tabs %} +{% tab JAVA %} + + ```java + String customContentString = intent.getStringExtra(ChinaPushMessageReceiver.NOTIFICATION_CLICKED_KEY); + BrazeNotificationUtils.logBaiduNotificationClick(mApplicationContext, customContentString); + ``` + +{% endtab %} +{% tab KOTLIN %} + +```kotlin +val customContentString = intent.getStringExtra(ChinaPushMessageReceiver.NOTIFICATION_CLICKED_KEY) +BrazeNotificationUtils.logBaiduNotificationClick(context, customContentString) +``` + +{% endtab %} +{% endtabs %} + +## Étape 6 : Compléments + +En plus des clés réservées utilisées par Braze, le paramètre `customContentString` contiendra également toutes les paires clé-valeur personnalisées définies par l’utilisateur. Pour extraire vos paires clé-valeur, enveloppez `customContentString` dans un objet JSONObject et récupérez vos compléments : + +{% tabs %} +{% tab JAVA %} + +```java +try { + JSONObject myExtras = new JSONObject(customContentString); + String myValue = myExtras.optString("my_key", null); +} catch (Exception e) { + Log.e(TAG, "Caught an exception processing customContentString"); +} +``` + +{% endtab %} +{% tab KOTLIN %} + +```kotlin +try { + val myExtras = JSONObject(customContentString) + val myValue = myExtras.optString("my_key", null) +} catch (e: Exception) { + Log.e(TAG, "Caught an exception processing customContentString", e) +} +``` + +{% endtab %} +{% endtabs %} + +## Étape 7 : Configurer les clés Baidu + +Vous devez saisir votre clé API Baidu et votre clé secrète Baidu dans le tableau de bord de Braze. Les deux clés sont disponibles à partir de la console d’application Baidu. + +Sur la page **Manage Settings**, sélectionnez votre application Android Chine et saisissez votre clé API Baidu et votre clé secrète Baidu dans la section Notifications push. + +![][19]{: style="max-width:80%;"} + +## Ressources complémentaires + +- [Portail Baidu][7] +- [Portail développeur Baidu][36] +- [Portail de projet Baidu][11] +- [Portail du SDK des notifications push Baidu][40] +- [Documents d’intégration Baidu][43] + +[7]: https://www.baidu.com/ +[10]: {% image_buster /assets/img_archive/baidu_project.png %} +[11]: http://developer.baidu.com/console#app/project +[13]: {% image_buster /assets/img_archive/baidu_dev_reg.png %} +[14]: {% image_buster /assets/img_archive/baidu_app_console.png %} +[17]: {% image_buster /assets/img_archive/baidu_signup.png %} +[19]: {% image_buster /assets/img_archive/baidu_api_key.png %} "APIKey" +[26]: {% image_buster /assets/img_archive/baidu_app_name.png %} +[29]: {% image_buster /assets/img_archive/baidu_continue.png %} +[33]: {% image_buster /assets/img_archive/baidu_portal.png %} +[34]: {% image_buster /assets/img_archive/baidu_email.png %} +[35]: {% image_buster /assets/img_archive/baidu_text.png %} +[36]: http://developer.baidu.com/ +[37]: {% image_buster /assets/img_archive/baidu_dev_portal.png %} +[38]: {% image_buster /assets/img_archive/baidu_login_dialog.png %} +[39]: {% image_buster /assets/img_archive/baidu_configure_cloud.png %} +[40]: http://developer.baidu.com/wiki/index.php?title=docs/cplat/push/sdk/clientsdk +[41]: {% image_buster /assets/img_archive/baidu_sdk.png %} +[43]: http://developer.baidu.com/wiki/index.php?title=docs/frontia/guide-android/overview +[44]: http://developer.android.com/reference/android/content/Intent.html diff --git a/_lang/fr/_hidden/archive_lang/fr/generations.md b/_lang/fr/_hidden/archive_lang/fr/generations.md new file mode 100644 index 00000000000..4c175902ff6 --- /dev/null +++ b/_lang/fr/_hidden/archive_lang/fr/generations.md @@ -0,0 +1,25 @@ +--- +nav_title: Générations +article_title: Générations de messages dans l’application +hidden: true +description: "Le présent article de référence aborde la prise en charge de générations de messages In-App." +channel: + - messages In-App + +--- + +# Générations de messages dans l’application + +Braze dispose actuellement de trois générations de messages dans l’application. Chacun bénéficie de son niveau de prise en charge. Pour profiter des dernières fonctionnalités de nos messages dans l’application, nous vous recommandons de passer aux derniers [SDK Web]({{site.baseurl}}/developer_guide/platform_integration_guides/web/initial_sdk_setup/#upgrading-the-sdk), Ios et Android. + +Ce graphique met en évidence les caractéristiques et les types de messages qui sont actuellement disponibles et la date à laquelle ils ont été introduits dans chaque génération. Ce graphique indique explicitement ce qui n’est pas pris en charge dans une génération donnée. + +| Génération | Nouvelles fonctionnalités | Fonctions non prises en charge | +|---|---|---| +| **Génération 1** | • Types de messages en mode plein écran, Modal et Slideup déclenchés dans application | Messages HTML personnalisés
• Formulaire de capture d’e-mail
• Modal Web avec un CSS personnalisé | +| **Génération 2** | • Contrôles d’alignement de texte
• Surcouche derrière le modal
• Zone sécurisée d’image dans la fenêtre de prévisualisation | Bordure du bouton | +| **Génération 3** | • Bordure du bouton
• Aspect et fonctionnalité améliorés pour tous les types de messages
• Concept de générations 1, 2 et 3
• Nouvelle fermeture de l’actif X
• Accessibilité améliorée sur le Web
• Prise en charge améliorée sur les appareils Notched | (La dernière génération bénéficie toujours d’une assistance complète !) | +{: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3} + +![Différence dans les générations]({% image_buster /assets/img/iam-generations-of-modals.png %}) + diff --git a/_lang/fr/_hidden/archive_lang/fr/interactive.md b/_lang/fr/_hidden/archive_lang/fr/interactive.md new file mode 100644 index 00000000000..330207fbf7e --- /dev/null +++ b/_lang/fr/_hidden/archive_lang/fr/interactive.md @@ -0,0 +1,119 @@ +--- +platform: API REST +nav_title: Endpoints interactifs +page_order: 2.5 +noindex: true +hidden: true +--- + + + +
+ + + + diff --git a/_lang/fr/_hidden/archive_lang/fr/ios_14.md b/_lang/fr/_hidden/archive_lang/fr/ios_14.md new file mode 100644 index 00000000000..0a94f01dc77 --- /dev/null +++ b/_lang/fr/_hidden/archive_lang/fr/ios_14.md @@ -0,0 +1,149 @@ +--- +nav_title: Guide de mise à jour iOS 14 +article_title: Guide de mise à jour SDK iOS 14 +page_order: 7 +platform: iOS +description: "Cet article de référence couvre la mise à jour du SDK iOS 14, mettant en évidence les changements tels que les clôtures géographiques, le ciblage géographique, l’IDFA, etc." +hidden: true + +--- + +# Guide de mise à jour SDK iOS 14 + +Ce guide décrit les modifications liées à Braze introduites dans iOS 14 et les étapes de mise à niveau requises pour votre intégration SDK Braze pour iOS. + +Pour obtenir une liste complète des nouvelles mises à jour iOS 14, voir [Page iOS 14](https://www.apple.com/ios/ios-14/) d’Apple. + +{% alert tip %} +À partir d’iOS 14.5, la collecte **IDFA** et le [partage de certaines données](https://developer.apple.com/app-store/user-privacy-and-data-use/#permission-to-track) nécessiteront l’invite d’autorisation de la nouvelle infrastructure [AppTrackingTransparency](https://developer.apple.com/documentation/apptrackingtransparency) ([En savoir plus](#idfa)). +{% endalert %} + +#### Résumé des changements majeurs de l’iOS 14 + +- Les applications ciblant iOS 14 / Xcode 12 doivent utiliser notre [version officielle iOS 14][1]. +- Les geofences [ne sont plus prises en charge par iOS][4] pour les utilisateurs qui choisissent la nouvelle autorisation de _localisation approximative_. +- L’utilisation des fonctions de ciblage « Dernière position connue » nécessite une mise à niveau vers SDK Braze pour iOS v3.26.1+ pour la compatibilité avec l’autorisation de _localisation approximative_. Notez que si vous utilisez XCode 12, vous devrez passer au moins à la mise à jour v3.27.0. +- À partir d’iOS 14.5, la collecte IDFA et le [partage de certaines données][5] nécessiteront l’invite d’autorisation de la nouvelle infrastructure [AppTrackingTransparency](https://developer.apple.com/documentation/apptrackingtransparency). +- Si vous utilisez le champ « Ad Tracking Enabled (Suivi des campagnes publicitaires activé) » pour le ciblage ou l’analyse de campagne, vous devrez passer à Xcode 12 et utiliser la nouvelle infrastructure AppTrackingTransparency pour signaler le statut d’abonnement des utilisateurs finaux. + +## Résumé de la mise à jour + + + +|Si votre application utilise :|Recommandation de la mise à jour|Description| +|------|--------|---| +|Xcode 12|**Mise à jour vers iOS SDK v3.27 ou version ultérieure**|Les clients utilisant Xcode 12 doivent utiliser la version v3.27.0+ pour la compatibilité. Si vous rencontrez des problèmes ou si vous avez des questions concernant notre compatibilité avec iOS 14, ouvrez un nouveau [Problème Github][2]..| +|Emplacement le plus récent| **Mise à jour vers iOS SDK v3.26.1 ou version ultérieure**|Si vous utilisez la fonction de ciblage la plus récente de l’emplacement et que vous utilisez toujours XCode 11, vous devez passer au minimum à la version iOS SDK v3.26.1 qui prend en charge la nouvelle fonction _Localisation approximative_. Les anciens SDK ne pourront pas collecter de manière fiable la localisation lorsqu’un utilisateur est mis à niveau vers iOS 14 _et_ choisit la localisation approximative.

Même si votre application n’est pas susceptible de cibler iOS 14, vos utilisateurs finaux peuvent mettre à niveau vers iOS 14 et commencer à utiliser l’option de précision de la localisation. Les applications qui ne sont pas mises à niveau vers iOS SDK v3.26.1+ ne pourront pas collecter de manière fiable les attributs de localisation lorsque les utilisateurs leur fournissent leur _localisation approximative_ sur les appareils iOS 14..| +|ID de suivi des annonces IDFA| **Il peut être nécessaire de mettre à niveau Xcode 12 et iOS SDK v3.27**|En 2021, Apple commencera à exiger une invite d’autorisation pour la collecte de l’IDFA. À ce moment, les applications doivent être mises à niveau vers Xcode 12 et utiliser la nouvelle infrastructure `AppTrackingTransparency` afin de continuer à recueillir l’IDFA. Si vous transmettez IDFA au SDK Braze, vous devez également mettre à niveau vers v3.27.0+ à ce moment-là.

Les applications qui n’utilisent pas les nouvelles API iOS 14 ne pourront pas collecter l’IDFA et collecteront plutôt un ID vierge (`00000000-0000-0000-0000-000000000000`) quand Apple commencera à faire appliquer ce changement en 2021. Pour savoir si cela s’applique ou non à votre application, consultez les [Détails IDFA](#idfa)..| + + +## Changements de comportement iOS 14 + +### Autorisation de localisation approximative + +![Localisation précise]({% image_buster /assets/img/ios/ios14-approximate-location.png %}){: style="float:right;max-width:45%;margin-left:15px;"} + +#### Aperçu + +En demandant l’autorisation de localisation, les utilisateurs auront désormais le choix de fournir leur _localisation précise_(comportement précédent), ou la nouvelle _localisation approximative_. La localisation approximative renvoie un rayon plus large dans lequel l’utilisateur se trouve, au lieu de ses coordonnées exactes. + +#### Geofences {#geofences} + +Les geofences [ne sont plus prises en charge par iOS][4] pour les utilisateurs qui choisissent la nouvelle autorisation de _localisation approximative_. Bien qu’aucune mise à jour ne soit requise pour votre intégration SDK Braze, vous devrez peut-être ajuster votre [stratégie marketing basée sur la localisation](https://www.braze.com/blog/geofencing-geo-targeting-beaconing-when-to-use/) pour les campagnes qui reposent sur des geofences. + +#### Ciblage de localisation {#location-tracking} + +Pour continuer à collecter la _dernière localisation connue_ des utilisateurs lorsque l’autorisation _localisation approximative_ est accordée, votre application devra au moins passer à la mise à jour v3.26.1 du SDK Braze pour iOS. Gardez à l’esprit que la localisation sera moins précise et que, d’après nos tests, elle est supérieure à 12 000 mètres (+ de 7 miles). Lorsque vous utilisez les options de ciblage de la _dernière localisation connue_ dans le tableau de bord de Braze, assurez-vous d’augmenter le rayon de la localisation pour tenir compte de nouvelles _localisations approximatives_ (nous recommandons d’utiliser au moins 1,6 km de rayon). + +Les applications qui ne mettent pas à niveau le SDK Braze pour iOS à la version v3.26.1 ou supérieure ne pourront plus utiliser le suivi de la localisation lorsque l’autorisation de _localisation approximative_ est accordée sur les appareils iOS 14. + +Les utilisateurs qui ont déjà accordé un accès à leur localisation continueront à fournir leur _localisation précise_ après la mise à niveau. + +Notez que si vous utilisez XCode 12, vous devrez passer au moins à la mise à jour v3.27.0. + +Pour plus d’informations sur la localisation approximative, voir la vidéo WWDC [Nouveautés concernant la localisation](https://developer.apple.com/videos/play/wwdc2020/10660/) d’Apple. + +### Transparence du suivi des applications et IDFA {#idfa} + +#### Aperçu + +L’IDFA (Identifiant pour les annonceurs) est un identifiant fourni par Apple pour une utilisation avec des partenaires publicitaires et d’attribution pour le suivi inter-appareil et est lié à l’ID Apple d’une personne. + +À partir d’iOS 14.5, une nouvelle invite d’autorisation (lancée par la nouvelle infrastructure `AppTrackingTransparency`) doit être affichée pour recueillir le consentement explicite de l’utilisateur pour l’IDFA. Cette invite d’autorisation pour « vous suivre via les applications et les sites Web appartenant à d’autres sociétés » devra être demandée de la même manière que lorsque vous invitez les utilisateurs à partager leur localisation. + +Si un utilisateur n’accepte pas l’invite, ou si vous ne procédez pas à la mise à niveau vers l’infrastructure `AppTrackingTransparency` de Xcode 12, alors une valeur IDFA vide (`00000000-0000-0000-0000-000000000000`) sera renvoyée, et votre application ne sera pas autorisée à inviter à nouveau l’utilisateur. + +{% alert important %} +Ces mises à jour IDFA prendront effet lorsque les utilisateurs finaux mettent leur appareil à niveau vers iOS 14.5. Assurez-vous que votre application utilise le nouveau `AppTransparencyFramework` avec Xcode 12 si vous prévoyez de recueillir l’IDFA. +{% endalert %} + +#### Modifications apportées au recueil de l’ +![IDFA]({% image_buster /assets/img/ios/ios14-idfa.png %}) Braze{: style="float:right;max-width:25%;margin-left:15px;border:0"} + +1. Braze continuera à autoriser les applications à fournir une valeur IDFA d’utilisateur _au_ SDK Braze. + +2. La macro de compilation `ABK_ENABLE_IDFA_COLLECTION`, qui devrait compiler en fonction du recueil automatique facultatif de l’IDFA, ne fonctionnera plus dans iOS 14 et a été supprimée dans la section 3.27.0. + +3. Si vous utilisez le champ « Ad Tracking Enabled (Suivi des campagnes publicitaires activé) » pour le ciblage ou l’analyse de campagne, vous devrez passer à Xcode 12 et utiliser la nouvelle infrastructure AppTrackingTransparency pour signaler le statut d’abonnement des utilisateurs finaux. La raison de cette modification est que dans iOS 14, l’ancien champ [`advertisingTrackingEnabled`](https://developer.apple.com/documentation/adsupport/asidentifiermanager/1614148-advertisingtrackingenabled) n’est toujours pas renvoyé. + +4. Si votre application a utilisé l’IDFA ou l’IDFV comme ID externe Braze, nous vous recommandons fortement de faire migrer ces identifiants en faveur d’un UUID. Pour plus d’informations sur la migration des ID externes, consultez notre nouveau [endpoint d’API de migration de l’ID externe]({{site.baseurl}}/api/endpoints/user_data/external_id_migration/). + +En savoir plus sur Apple à propos de leurs [Mises à jour de confidentialité](https://developer.apple.com/app-store/user-privacy-and-data-use/) et de la nouvelle [Infrastructure de transparence de suivi des applications](https://developer.apple.com/documentation/apptrackingtransparency). + +### Autorisation Push {#push-provisional-auth} + +{% alert important %} +Aucune modification de l’autorisation Push provisoire n’est incluse dans iOS 14. Dans une version bêta antérieure d’iOS 14, Apple a introduit une modification qui a depuis été rétablie au comportement antérieur. +{% endalert %} + + +## Nouvelles fonctionnalités iOS 14 + +### Présentation de la confidentialité et de la collecte de données de l’application {#app-privacy} + +Depuis le 8 décembre 2020, toutes les soumissions à l’App Store nécessitent des étapes supplémentaires pour respecter les [nouvelles normes de confidentialité d’Apple](https://developer.apple.com/app-store/app-privacy-details/). + +#### Questionnaire sur le portail développeur d’Apple + +Sur le _Portail Développeur d’Apple_ : +* Il vous sera demandé de remplir un questionnaire pour décrire comment votre application ou des partenaires tiers collectent des données. + * Le questionnaire doit toujours être à jour avec votre version la plus récente dans l’App Store. + * Le questionnaire peut être mis à jour même sans nouvelle soumission d’application. +* Vous devrez coller un lien vers l’URL de la politique de confidentialité de votre application. + +Lorsque vous remplissez votre questionnaire, consultez votre équipe juridique et réfléchissez à la manière dont votre utilisation de Braze dans les domaines suivants peut affecter vos exigences de divulgation. + +#### Collecte de données par défaut Braze +**Identifiants** de collecte de données par défaut de Braze - Un identifiant d’appareil anonyme est toujours recueilli par le SDK Braze. Ce paramètre est actuellement défini sur l’IDFV (identifiant du fournisseur). + +**Données d’utilisation** - Cela peut inclure les données de session de Braze, ainsi que toute collection d’événements ou d’attributs que vous utilisez pour mesurer l’interaction du produit. + +#### Collecte de données facultatives +Données que vous pouvez éventuellement collecter via votre utilisation de Braze : + +**Localisation** - La localisation approximative et la localisation précise peuvent facultativement être collectées par le SDK Braze. Ces fonctionnalités sont désactivées par défaut. + +**Coordonnées de contact** - Cela peut inclure des événements et des attributs liés à l’identité de l’utilisateur. + +**Achats** - Cela peut inclure des événements et des achats enregistrés au nom de l’utilisateur. + +{% alert important %} +Notez qu’il ne s’agit pas d’une liste exhaustive. Si vous collectez manuellement d’autres informations sur vos utilisateurs dans Braze qui s’appliquent à d’autres catégories du questionnaire sur la confidentialité de l’application, vous devrez également les divulguer. +{% endalert %} + +Pour en savoir plus sur cette fonctionnalité, consultez la rubrique [Confidentialité et utilisation des données d’Apple](https://developer.apple.com/app-store/user-privacy-and-data-use/). + +[1]: https://github.com/Appboy/appboy-ios-sdk/releases/tag/3.27.0 +[2]: https://github.com/Appboy/appboy-ios-sdk/issues +[4]: https://developer.apple.com/documentation/corelocation/cllocationmanager/3600215-accuracyauthorization +[5]: https://developer.apple.com/app-store/user-privacy-and-data-use/#permission-to-track diff --git a/_lang/fr/_hidden/archive_lang/fr/ios_15.md b/_lang/fr/_hidden/archive_lang/fr/ios_15.md new file mode 100644 index 00000000000..99879b347ed --- /dev/null +++ b/_lang/fr/_hidden/archive_lang/fr/ios_15.md @@ -0,0 +1,83 @@ +--- +nav_title: Guide de mise à jour iOS 15 +article_title: Guide de mise à jour SDK iOS 15 +page_order: 7 +hidden: true +platform: iOS +description: "Cet article de référence couvre les nouvelles mises à jour du système d’exploitation iOS 15, les mises à jour SDK requises et les nouvelles fonctionnalités." + +--- + +# Guide de mise à jour SDK iOS 15 + +Ce guide décrit les modifications introduites dans iOS 15 (WWDC21) et les étapes de mise à niveau requises pour votre intégration SDK Braze pour iOS. + +> Pour obtenir une liste complète des nouvelles mises à jour iOS 15, consultez les [notes de publication iOS 15](https://developer.apple.com/documentation/ios-ipados-release-notes/ios-ipados-15-release-notes) d’Apple. + + +## Changements de transparence dans les navigations de l’interface utilisateur + +Dans le cadre de nos tests annuels des versions bêta d’iOS, nous avons identifié une modification apportée par Apple qui fait que certaines barres de navigation de l’interface utilisateur apparaissent transparentes et non opaques. Cela sera visible dans iOS 15 lors de l’utilisation de l’interface utilisateur par défaut de Braze pour les cartes de contenu ou lorsque des liens profonds Web sont ouverts dans votre application plutôt que dans une application de navigateur distincte. + +Pour éviter ce changement visuel dans iOS 15, nous vous recommandons fortement de mettre à niveau vers la version [SDK Braze pour iOS v4.3.2][1] dès que possible, avant que les utilisateurs commencent à mettre leur téléphone à niveau vers le nouveau système d’exploitation iOS 15. + +## Nouveaux paramètres de notification {#notification-settings} + +iOS 15 a introduit de nouvelles fonctionnalités de notification pour aider les utilisateurs à rester focalisés et à éviter de fréquentes interruptions tout au long de la journée. Nous sommes ravis d’offrir une assistance pour ces nouvelles fonctionnalités. Ces fonctionnalités ne nécessitent aucune mise à niveau supplémentaire du SDK et ne seront appliquées qu’aux utilisateurs de périphériques iOS 15. + +### Modes de concentration {#focus-mode} + +Les utilisateurs d’iOS 15 peuvent désormais créer des « Modes de Concentration », des profils personnalisés utilisés pour déterminer les notifications qu’ils souhaitent voir franchir le mode de concentration et afficher en évidence. + +![]({% image_buster /assets/img/ios/ios15-notification-settings.png %}){: style="float:right;max-width:25%;margin-left:15px;border:0"} + +### Niveaux d’interruption {#interruption-levels} + +Dans iOS 15, les notifications push peuvent être envoyées avec l’un des quatre niveaux d’interruption : + +* **Passive** (nouveau) : Pas de son, aucune vibration, pas de sortie de veille, pas de franchissement des paramètres du mode de concentration. +* **Active** (par défaut) : Permet les sons, les vibrations, la sortie de veille, pas de franchissement des paramètres du mode de concentration. +* **Contrainte de temps** (nouveau) : Permet les sons, les vibrations, la sortie de veille, peut franchir les commandes système si autorisé. +* **Critique** : Permet les sons, les vibrations, la sortie de veille, peut franchir les commandes système et contourner le commutateur de sonnerie. + +Voir [Options de notification iOS]({{site.baseurl}}/user_guide/message_building_by_channel/push/ios/notification_options/#interruption-level) pour en savoir plus sur la manière de configurer cette option dans les notifications push iOS. + +### Résumé de la notification {#notification-summary} + +![]({% image_buster /assets/img/ios/ios15-notification-summary.png %}){: style="float:right;max-width:25%;margin-left:15px;border:0"} + +Dans iOS 15, les utilisateurs peuvent (facultativement) choisir certaines heures de la journée pour recevoir un résumé des notifications. Les notifications qui ne nécessitent pas une attention immédiate (c’est-à-dire envoyées comme « passives » ou lorsque l’utilisateur est en mode de concentration) seront regroupées pour éviter les interruptions constantes tout au long de la journée. + +Pour chaque notification que vous envoyez, vous serez bientôt en mesure de spécifier un « score de pertinence » pour contrôler la notification devant apparaître en haut du résumé. + +Voir [Options de notification iOS]({{site.baseurl}}/user_guide/message_building_by_channel/push/ios/notification_options/#relevance-score) pour en savoir plus sur la manière de définir le « score de pertinence » d’une notification. + +## Boutons de localisation {#location-buttons} + +iOS 15 introduit un nouveau moyen pratique pour les utilisateurs d’accorder temporairement l’accès à la position au sein d’une application. + +Le nouveau bouton de localisation s’appuie sur l’autorisation existante « Autoriser une fois » sans le proposer à plusieurs reprises aux utilisateurs qui cliquent plusieurs fois dans la même session. + +Pour plus d’informations, regardez la vidéo d’Apple sur le [Bouton de localisation](https://developer.apple.com/videos/play/wwdc2021/10102/) diffusée lors de la Conférence mondiale des développeurs (WWDC) de cette année. + +{% alert tip %} +Cette fonctionnalité vous donne une chance supplémentaire d’inviter les utilisateurs à obtenir leur autorisation ! Les utilisateurs ayant précédemment refusé des autorisations de localisation avant iOS 15 verront une invite lorsque vous cliquez sur le bouton de localisation comme une dernière opportunité de réinitialiser l’autorisation de l’état refusé. +{% endalert %} + +### Utilisation des boutons de localisation avec Braze + +Aucune intégration supplémentaire n’est requise lors de l’utilisation des boutons de localisation avec Braze. Votre application doit continuer à transmettre la localisation d’un utilisateur (une fois qu’il a accordé l’autorisation) comme d’habitude. + +Selon Apple, pour les utilisateurs qui ont déjà partagé l’accès au site d’arrière-plan, l’option « While Using App » continuera à accorder ce niveau d’autorisation après qu’elles auront été mises à niveau vers iOS 15. + +## Apple Mail {#mail} + +Cette année, Apple a annoncé de nombreuses mises à jour du suivi des e-mails et de la confidentialité. Pour plus d’informations, consultez notre [blog post](https://www.braze.com/resources/articles/9-ways-email-marketers-can-respond-to-apples-mail-privacy-protection-feature). + +## Localisation de l’adresse IP dans Safari + +Dans iOS 15, les utilisateurs pourront configurer Safari pour rendre anonymes ou généraliser la localisation déterminée à partir de leurs adresses IP. Gardez cela à l’esprit lorsque vous utilisez un ciblage ou une segmentation basé sur la localisation. + +[1]: https://github.com/Appboy/appboy-ios-sdk/releases/tag/4.3.2 +[2]: https://github.com/Appboy/appboy-ios-sdk/issues +[3]: {{site.baseurl}}/user_guide/message_building_by_channel/push/ios/notification_options/#interruption-level diff --git a/_lang/fr/_hidden/archive_lang/fr/previous_in-app_message_generations.md b/_lang/fr/_hidden/archive_lang/fr/previous_in-app_message_generations.md new file mode 100644 index 00000000000..6ed1801fdb7 --- /dev/null +++ b/_lang/fr/_hidden/archive_lang/fr/previous_in-app_message_generations.md @@ -0,0 +1,171 @@ +--- +nav_title: Générations précédentes +article_title: Générations précédentes de messages In-App +page_order: 20 +page_type: reference +description: "Le présent article analyse des informations précédentes sur les messages In-App dans Braze." +channel: messages In-App +noindex: true +hidden : true +--- + +# Générations précédentes de messages In-App + +{% alert important %} +Cette page analyse des informations précédentes sur nos messages In-App. Pour voir les informations les plus récentes sur notre génération de messages In-App, consultez notre documentation sur les [messages In-App]({{site.baseurl}}/user_guide/message_building_by_channel/in-app_messages/). +{% endalert %} + +## Universel + +Ceci analyse des informations précédentes sur nos messages In-App. Pour voir les informations les plus récentes sur notre génération de messages In-App, consultez notre [documentation de présentation des messages In-App]({{site.baseurl}}/user_guide/message_building_by_channel/in-app_messages/). + +{% details Fullscreen %} +Ils sont les plus attrayants, mais aussi les plus intrusifs, car ils occupent tout l’écran de votre utilisateur. Ils sont parfaits pour afficher de grandes images riches, et ils s’avèrent utiles pour transmettre des informations cruciales, telles que de nouvelles fonctionnalités clés et des promotions arrivant à terme. Sachant qu’ils perturbent davantage l’expérience utilisateur, utilisez-les avec modération pour le contenu prioritaire. + +![Message plein écran]({% image_buster /assets/img_archive/braze_fullscreen.png %}){: style="max-width:80%;"} + +**Fonctions personnalisables** + +- En-tête et texte du corps +- Une grande image +- Jusqu’à deux boutons d’appel à l’action avec un comportement différent en cas de clic et des liens profonds +- Des couleurs différentes pour l’en-tête et le texte du corps, les boutons et l’arrière-plan +- Paires clé-valeur + +{% enddetails %} +{% details Modal %} +Ces messages ne sont pas aussi intrusifs que ceux en plein écran, car ils permettent toujours aux utilisateurs de voir une partie de l’interface de votre application. Comme ils contiennent toujours des boutons et des images, les messages modaux peuvent constituer une option preferable aux slideups pour une campagne visuelle plus interactive. Ils sont parfaits pour le contenu de priorité moyenne, comme les mises à jour d’applications et les offres et événements non urgents. + +![Message modal]({% image_buster /assets/img_archive/braze_modal.png %}){: style="max-width:80%;"} + +**Fonctions personnalisables** + +- En-tête et texte du corps +- Une icône d’image ou de badge personnalisable +- Jusqu’à deux boutons d’appel à l’action avec un comportement différent en cas de clic et des liens profonds +- Des couleurs différentes pour l’en-tête et le texte du corps, les boutons et l’arrière-plan +- Paires clé-valeur + +{% enddetails %} + +{% details Traditional Slideup %} +Il s’agit du type de message le moins intrusif, bien qu’il puisse attirer l’attention selon les couleurs et les icônes de badge employées. Ce format de message peut être adapté lors de l’onboarding de nouveaux utilisateurs, pour les orienter vers des fonctionnalités spécifiques dans l’application, sachant qu’ils n’interrompent pas l’expérience sur l'application et permettent une navigation continue. + +![Message slideup]({% image_buster /assets/img_archive/stopwatch_slideup_IAM.gif %}){: style="max-width:50%;"} + +**Fonctions personnalisables** + +- Texte du corps +- Une icône d’image ou de badge personnalisable +- Couleurs différentes pour l’arrière-plan, le texte et l’icône du slideup +- Comportement de fermeture du message +- Position du slideup (haut ou bas de l’écran de l’application) +- Paires clé-valeur + +{% enddetails %} + +
+ +## Web + +Ceci analyse des informations précédentes sur des messages In-App plus personnalisés. Pour voir les informations les plus récentes sur notre génération de messages In-App, consultez notre [documentation sur la personnalisation]({{site.baseurl}}/user_guide/message_building_by_channel/in-app_messages/customize/). + +{% details Email capture message %} +Les messages de capture d’e-mail vous permettent d’inviter facilement les utilisateurs de votre site à soumettre leur adresse e-mail, après quoi vous en disposerez dans le système Braze pour l’ensemble de vos campagnes de messagerie. + +![Message de capture d’e-mail]({% image_buster /assets/img_archive/web-email-capture.png %}){: style="max-width:60%;"} + +> Pour activer les messages in-app de capture d’e-mail via le SDK Web, vous devez fournir l'option d'initialisation `allowUserSuppliedJavascript` à Braze, par exemple, `braze.initialize('YOUR-API_KEY', {allowUserSuppliedJavascript: true})`. Pour des raisons de sécurité, les messages In-App HTML peuvent en effet exécuter du JavaScript, d’où le besoin d’un responsable de site pour les activer. + +**Fonctions personnalisables** + +- Texte de l’en-tête, du corps et du bouton Soumettre +- Une image facultative +- Un lien facultatif aux conditions de service +- Des couleurs différentes pour l’en-tête et le texte du corps, les boutons et l’arrière-plan +- Paires clé-valeur + +{% enddetails %} + +{% details Custom HTML Message %} + +Bien que les messages In-App Braze soient personnalisés de diverses façons, vous pouvez contrôler encore davantage l’apparence et l’impression de vos campagnes à l’aide de messages conçus et élaborés avec HTML, CSS et JavaScript. Via à une composition simple, vous pouvez débloquer des fonctionnalités et des marques personnalisées pour répondre à vos besoins. Les messages In-App HTML offrent un contrôle accru de l’apparence et de l’impression d’un message, et tout ce qui est pris en charge par HTML5 l’est également par Braze. + +**Pont Javascript (appboyBridge)** + +Les messages In-App HTML prennent en charge une interface de pont Javascript vers le SDK Web Braze, ce qui vous permet de déclencher des actions Braze personnalisées lorsque les utilisateurs cliquent sur des éléments avec des liens ou montrent un engagement avec votre contenu. Les méthodes Javascript suivantes sont prises en charge dans les messages In-App HTML Braze : + +{% multi_lang_include archive/appboyBridge.md platform="web" %} + +En outre, pour le suivi analytique, tous les éléments `` ou `