Objet Audience connectée
Une audience connectée est un filtre d’audience dynamique que vous définissez directement dans votre requête API, ce qui vous permet de cibler les bons utilisateurs au moment de l’envoi sans avoir à créer ou gérer des segments dans le tableau de bord de Braze.
Au lieu de créer à l’avance un segment pour chaque combinaison d’audience possible, vous transmettez les critères de filtrage directement dans votre appel API. Selon l’endpoint, cet objet est transmis en tant que audience ou custom_audience. Braze évalue chaque utilisateur par rapport à ces critères en temps réel et délivre le message uniquement aux utilisateurs correspondants. Ainsi, une seule Campaign, un seul Canvas ou une seule définition de message API peut servir un nombre illimité de variations d’audience, entièrement piloté par votre logique métier.
Comment ça fonctionne
- Définissez votre message en créant une Campaign ou un Canvas déclenchés par API dans le tableau de bord de Braze, ou définissez le contenu du message entièrement en ligne à l’aide des objets de messagerie dans votre requête API. Utilisez les propriétés de déclenchement ou le contexte Canvas pour la personnalisation dynamique.
- Appelez un endpoint pris en charge et incluez vos filtres d’audience connectée dans le paramètre
audience, ou danscustom_audiencepour/messages/live_activity/start. Vous pouvez filtrer sur les attributs personnalisés, le statut d’abonnement aux notifications push, le statut d’abonnement aux e-mails et la date de dernière utilisation de l’application. - Braze évalue les filtres au moment de l’envoi, en ne délivrant le message qu’aux utilisateurs qui correspondent à vos critères.

Un campaign_id n’est pas requis lorsque vous utilisez le paramètre audience. Les endpoints /messages/send et /messages/schedule/create vous permettent de définir le contenu du message en ligne sans Campaign préalablement créée. Cependant, si vous souhaitez suivre les indicateurs au niveau de la Campaign (tels que les envois, les clics ou les rebonds) sur le tableau de bord, incluez un campaign_id.
Étant donné que l’audience est définie par requête, vos systèmes backend peuvent déclencher des messages contextuellement pertinents en réponse à n’importe quel événement métier (un changement de prix, une alerte météo, une mise à jour de score en direct) sans intervention dans le tableau de bord.
Endpoints compatibles
Vous pouvez utiliser l’objet d’audience connectée sur ces endpoints :
/messages/send/campaigns/trigger/send/canvas/trigger/send/messages/schedule/create/campaigns/trigger/schedule/create/canvas/trigger/schedule/create/messages/live_activity/start(utilisecustom_audience)
Notez que le paramètre audience ne prend pas en charge les tableaux d’objets.
Cas d’usage
Utilisez les audiences connectées pour les scénarios où vos systèmes back-end détectent un événement et doivent notifier un ensemble d’utilisateurs déterminé dynamiquement :
| Catégorie | Exemple |
|---|---|
| Alertes météo | Un fournisseur de données météorologiques détecte un événement météorologique grave et envoie des notifications push aux utilisateurs dont l’attribut preferred_city correspond à la zone touchée. |
| Sports et événements en direct | Une application sportive envoie des mises à jour de scores en temps réel ou des alertes de match aux utilisateurs dont l’attribut favorite_team correspond à l’une des équipes en jeu. |
| Contenu et divertissement | Un service de streaming notifie les utilisateurs dont le tableau favorite_shows inclut le titre d’une série chaque fois qu’un nouvel épisode est disponible. |
| E-commerce | Un détaillant en ligne envoie des alertes de baisse de prix ou de retour en stock aux utilisateurs dont le tableau wishlisted_products inclut l’ID du produit concerné. |
| Voyage | Une application de voyage envoie des notifications de retard de vol aux utilisateurs dont l’attribut booked_flight correspond au numéro de vol concerné. |
| Services financiers | Une plateforme de trading alerte les utilisateurs dont le tableau watchlist inclut un symbole boursier ayant franchi un seuil de prix. |
Dans chaque cas, une seule Campaign ou un seul message API-only gère toutes les variations. Votre back-end détermine les valeurs de filtre et les transmet dans la requête API, de sorte que vous n’avez pas besoin de créer un Segment ou une Campaign distinct(e) pour chaque produit, série, équipe ou emplacement.
Exemple de requête
L’exemple suivant utilise l’endpoint /campaigns/trigger/send pour cibler les utilisateurs qui ont ajouté une émission spécifique à leurs favoris et qui ont accepté de recevoir des notifications push :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
{
"campaign_id": "YOUR_CAMPAIGN_ID",
"audience": {
"AND": [
{
"custom_attribute": {
"custom_attribute_name": "favorite_shows",
"comparison": "includes_value",
"value": "Example Show"
}
},
{
"push_subscription_status": {
"comparison": "is",
"value": "opted_in"
}
}
]
},
"trigger_properties": {
"show_title": "Example Show",
"episode_title": "Season 3, Episode 1",
"deep_link": "https://example.com/shows/example-show/s3e1"
},
"broadcast": false
}
Corps de l’objet
L’objet d’audience connectée est composé soit d’un seul filtre d’audience connectée, soit de plusieurs filtres d’audience connectée combinés avec les opérateurs AND et OR.
Exemple avec plusieurs filtres :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
{
"AND":
[
Connected Audience Filter,
{
"OR" :
[
Connected Audience Filter,
Connected Audience Filter
]
},
Connected Audience Filter
]
}
Filtres d’audience connectés
Combinez plusieurs filtres avec les opérateurs AND et OR pour créer un filtre d’audience connecté.
Considérations
Les audiences connectées ne peuvent pas filtrer les utilisateurs par :
- Attributs par défaut
- Custom events
- Segments
- Événements d’engagement liés aux messages
- Attributs personnalisés imbriqués
Pour utiliser ces filtres, nous recommandons de les intégrer dans un Segment d’audience, puis de spécifier ce Segment dans le paramètre segment_id de l’endpoint /messages/send. Lorsque vous utilisez d’autres endpoints, vous devez d’abord ajouter le Segment à la Campaign ou au Canvas déclenché par API dans le tableau de bord de Braze. Si vous devez filtrer sur des attributs imbriqués, utilisez plutôt un Segment standard.
Filtre d’attribut personnalisé
Ce filtre vous permet de segmenter en fonction d’un attribut personnalisé d’un utilisateur. Ces filtres contiennent jusqu’à trois champs :
1
2
3
4
5
6
7
8
{
"custom_attribute":
{
"custom_attribute_name": (String) the name of the custom attribute to filter on,
"comparison": (String) one of the allowed comparisons to make against the provided value,
"value": (String, Numeric, Boolean) the value to be compared using the provided comparison
}
}
Comparaisons autorisées par type de données
Le type de données de l’attribut personnalisé détermine les comparaisons valides pour un filtre donné.
| Type d’attribut personnalisé | Comparaisons autorisées |
|---|---|
| String | equals, not_equal, matches_regex, does_not_match_regex, exists, does_not_exist, is_any_of, is_none_of |
| Array | includes_value, does_not_include_value, exists, does_not_exist, is_any_of, is_none_of |
| Numeric | equals, not_equal, greater_than, greater_than_or_equal_to, less_than, less_than_or_equal_to, exists, does_not_exist |
| Boolean | equals, not_equal, exists, does_not_exist |
| Time | less_than_x_days_ago, greater_than_x_days_ago, less_than_x_days_in_the_future, greater_than_x_days_in_the_future, after, before, exists, does_not_exist |
Remarques sur les comparaisons d’attributs
| Comparaison | Considérations supplémentaires |
|---|---|
value |
La value n’est pas requise lors de l’utilisation des comparaisons exists ou does_not_exist. value doit être une chaîne de caractères datetime au format ISO 8601 lors de l’utilisation des comparaisons before et after. |
matches_regex |
Lors de l’utilisation de la comparaison matches_regex, la valeur transmise doit être une chaîne de caractères. Pour en savoir plus sur l’utilisation des expressions régulières avec Braze, consultez Expressions régulières et Types de données des attributs personnalisés. |
Comparaisons multi-valeurs
is_any_of et is_none_of prennent en charge la correspondance avec plusieurs valeurs dans une seule comparaison. Ces comparaisons fonctionnent avec les attributs personnalisés de type string et array.
is_any_of: correspond aux utilisateurs dont la valeur d’attribut est égale à l’une des valeurs fournies. Lavaluepeut être une chaîne de caractères unique ou un tableau de chaînes de caractères.is_none_of: correspond aux utilisateurs dont la valeur d’attribut ne correspond à aucune des valeurs fournies. Lavaluepeut être une chaîne de caractères unique ou un tableau de chaînes de caractères. Notez que les utilisateurs qui n’ont pas l’attribut dans leur profil sont toujours éligibles pour cette comparaison.
Pour les attributs de type array :
includes_valuepeut également accepter un tableau de valeurs pour vérifier si le tableau de l’utilisateur contient l’une des valeurs spécifiées.- Lorsque vous utilisez
is_any_ofouis_none_ofavec des attributs de type array, ils fonctionnent respectivement de la même manière queincludes_valueetdoes_not_include_value.

Pour la correspondance multi-valeurs, utilisez is_any_of plutôt que includes_value.
Exemples d’attributs personnalisés
1
2
3
4
5
6
7
8
{
"custom_attribute":
{
"custom_attribute_name": "eye_color",
"comparison": "equals",
"value": "blue"
}
}
1
2
3
4
5
6
7
8
{
"custom_attribute":
{
"custom_attribute_name": "favorite_foods",
"comparison": "includes_value",
"value": "pizza"
}
}
1
2
3
4
5
6
7
8
{
"custom_attribute":
{
"custom_attribute_name": "last_purchase_time",
"comparison": "less_than_x_days_ago",
"value": 2
}
}
Exemples de comparaisons multi-valeurs
is_any_of avec un tableau de chaînes de caractères
1
2
3
4
5
6
7
8
{
"custom_attribute":
{
"custom_attribute_name": "favorite_color",
"comparison": "is_any_of",
"value": ["red", "blue", "green"]
}
}
is_none_of avec un tableau de chaînes de caractères
1
2
3
4
5
6
7
8
{
"custom_attribute":
{
"custom_attribute_name": "subscription_tier",
"comparison": "is_none_of",
"value": ["bronze", "silver"]
}
}
includes_value avec un tableau (attribut de type array)
1
2
3
4
5
6
7
8
{
"custom_attribute":
{
"custom_attribute_name": "subscribed_products",
"comparison": "includes_value",
"value": ["1001", "1002", "1003"]
}
}
Cela correspond aux utilisateurs dont le tableau subscribed_products contient l’une des valeurs "1001", "1002" ou "1003".
Filtre d’abonnement aux notifications push
Ce filtre vous permet de segmenter en fonction du statut d’abonnement aux notifications push d’un utilisateur.
Corps du filtre
1
2
3
4
5
6
7
{
"push_subscription_status":
{
"comparison": (String) one of the following allowed comparisons,
"value": (String) one of the following allowed values
}
}
- Comparaisons autorisées :
is,is_not - Valeurs autorisées :
opted_in,subscribed,unsubscribed
Filtre d’abonnement aux e-mails
Ce filtre vous permet de segmenter en fonction du statut d’abonnement aux e-mails d’un utilisateur.
Corps du filtre
1
2
3
4
5
6
7
{
"email_subscription_status":
{
"comparison": (String) one of the following allowed comparisons,
"value": (String) one of the following allowed values
}
}
- Comparaisons autorisées :
is,is_not - Valeurs autorisées :
opted_in,subscribed,unsubscribed
Filtre de dernière utilisation de l’application
Ce filtre vous permet de segmenter en fonction de la dernière utilisation de l’application par l’utilisateur. Ces filtres contiennent deux champs :
Corps du filtre
1
2
3
4
5
6
7
{
"last_used_app":
{
"comparison": (String) one of the allowed comparisons listed,
"value": (String) the value to be compared using the provided comparison
}
}
- Comparaisons autorisées :
after,before - Valeurs autorisées : datetime (chaîne de caractères ISO 8601)