Audiences personnalisées
Vue d’ensemble
- GET accounts/:account_id/custom_audiences
- GET accounts/:account_id/custom_audiences/:custom_audience_id




- L’ID utilisateur transmis est correct et non mal formé.
- Les noms d’audience transmis sont corrects et correspondent aux mises à jour de membres précédentes.
- Veuillez confirmer la réponse aux commandes POST.
- Veuillez confirmer que le pixel ID Sync est correctement implémenté et, comme décrit par le processus ID Sync, qu’un nombre suffisant d’utilisateurs ont visité le site en question pour pouvoir faire la correspondance des utilisateurs. Les utilisateurs non mappés dans les mises à jour de membres ne seront pas traduits en utilisateurs ciblés.
- La taille minimale d’une audience est de 100 utilisateurs (après correspondance). Si une audience avec moins de 500 utilisateurs est mise en correspondance, elle ne sera pas disponible pour le ciblage dans l’interface utilisateur X Ads.
- Le traitement des fichiers d’audience prend généralement 4 à 6 heures, mais cela dépendra de la taille du fichier. Une fois le fichier traité, les audiences sont disponibles dans l’interface utilisateur X Ads.
- Taux de correspondance = utilisateurs X actifs sur 90 jours / nombre d’utilisateurs fournis
- Vous pouvez fournir un fichier d’audience de test et utiliser « keltonlynn » comme handle d’annonceur. Nous pourrons alors vérifier que le fichier est correctement ingéré et chargé dans l’interface X.
p_user_id) ?
- C’est l’identifiant utilisé par votre entreprise pour identifier de manière unique chacun de vos clients.
- Cela peut être une adresse e-mail, un device ID, un @handle X ou un ID.
- Elle sera fournie par un e-mail chiffré. Veuillez fournir votre clé PGP publique à mpp-inquiry@x.com et nous vous enverrons un e-mail de test pour vérifier que tout fonctionne. Une fois la vérification effectuée, nous vous enverrons la clé HMAC.
- X fournira un fichier de test (contenant des exemples d’adresses e-mail, de device IDs, etc.) et un fichier de hachage résultant, que vous pourrez utiliser pour vérifier vos résultats.
- Non, il n’y a pas de limite de taille pour le fichier de correspondance de données complet.
- Une fois le fichier reçu par X, il faudra environ 1 jour pour traiter le fichier.
CRM

Exigences de correspondance des ID de partenaire
p_user_id) et les ID X (tw_id). Cette opération sera effectuée régulièrement tous les 2 à 3 mois pour garantir une mise à jour correcte. Une fois la correspondance terminée, X communiquera à l’entreprise, par e‑mail, un taux de correspondance de référence issu de ce fichier.
Le format de ce fichier doit être :
Convention de nommage : FullDataMatch.[CompanyName].txt
Algorithme de hachage : HMAC_SHA-256
Format :
Colonne 1 : valeur hachée HMAC des identifiants courants
Colonne 2 : ID utilisateur partenaire (unique par utilisateur, non unique dans le fichier)
Délimiteur de colonnes (CSV) : des virgules seront utilisées pour séparer l’identifiant utilisateur courant haché de l’ID partenaire
Valeurs séparées par des sauts de ligne
- Ex. : si l’enregistrement utilisateur A a l’ID utilisateur partenaire 1 et les identifiants courants 1, 2 et 3 :
| identifiant utilisateur courant 1 | p_user_1 |
| identifiant utilisateur courant 2 | p_user_1 |
| identifiant utilisateur courant 3 | p_user_1 |
p_user_id pour créer des audiences personnalisées pour les clients, en vue d’un ciblage sur X.
- Valeurs séparées par des sauts de ligne
p_user_id-
- (Identique à ce qui est fourni dans la section 1. Correspondance de données complète ci‑dessus. Si la valeur fournie dans la correspondance de données complète est hachée, l’entreprise fournira la même valeur hachée dans le fichier d’audience. Si la valeur fournie n’est pas hachée, l’entreprise fournira la valeur non hachée.)
Exigences de correspondance standard
- Valeurs séparées par des retours à la ligne
- Identifiant utilisateur courant haché (c.-à-d. adresse e-mail)
- Suivre les conventions de nommage de fichiers décrites ci-dessous
- Suivre les instructions de hachage pour les adresses e-mail ci-dessous (voir la section Instructions de hachage)
Nommage et opérations des fichiers de liste de segments personnalisés
- audiencename : le nom de l’audience personnalisée. Ce champ est le nom qui sera affiché lors de la sélection de l’audience dans l’interface de configuration des campagnes ads.x.com, par exemple brand_loyalty_card_holders.
- partnername : nom de la société fournissant les données pour le compte de l’annonceur, par exemple company_name.
- handle : compte X (@handle) qui aura accès aux audiences personnalisées, par exemple @pepsi, @dietpepsi.
- operation : new, add, remove, removeall, replace (détails ci‑dessous)
- timestamp : horodatage Unix (epoch) standard en secondes, utilisé pour garantir que chaque fichier d’audience téléversé est unique
- filetype : le fichier doit être au format *.txt
Création et mise à jour des audiences
- Ceci peut être utilisé pour une liste exhaustive d’utilisateurs qui se sont désinscrits de l’Annonceur.
- X ne prendra en compte que la dernière liste fournie dans ce fichier et l’appliquera à toutes les audiences existantes et futures pour les utilisateurs X correspondants au moment où ce fichier a été fourni et traité.
Instructions de hachage
Normalisation des e-mails
@It92I6Ev2B.Com
Après normalisation : testemail_organisational_baseball+884@it92i6ev2b.com
Valeur hachée : 74d9584eded0ad1e5572a1c1849f3716751d371d6117a6155dad5363f4b4fbec
Remarque : le nombre exact de caractères, aussi bien pour le HMAC encodé que pour la clé, peut varier en fonction de l’entrée et de l’encodage ; le nombre de caractères précis peut donc différer.
Normalisation des identifiants d’appareil
Normalisation des ID utilisateur X
@username, mais les User IDs ne nécessitent pas de normalisation. Les @usernames doivent être convertis en minuscules pour la normalisation. Le symbole @ ne doit pas être inclus dans le username.
Le format brut de l’ID sera :
- User ID : 27674040
- @username : testusername
Intégration de synchronisation d’ID
p_id doivent passer par un processus de synchronisation d’ID afin de générer une correspondance entre les identifiants utilisateur de l’annonceur ou du partenaire et les identifiants utilisateur X. Cela permet aux annonceurs de cibler directement leurs propres segments d’utilisateurs sur X. Les partenaires doivent également attribuer au paramètre user_identifier_type la valeur TALIST_PARTNER_USER_ID ou TAWEB_PARTNER_USER_ID lorsqu’ils envoient leurs mises à jour d’appartenance.
- Web uniquement : cela peut se faire en plaçant un pixel sur le site de l’annonceur, comme indiqué ci‑dessous.
- Liste : cela peut se faire en utilisant l’une des méthodes décrites sur la page CRM.
URL du pixel
| URL de base |
| https://analytics.x.com/i/adsct |
Paramètres du pixel
| Paramètre | Description |
p_id | Votre identifiant de partenaire attribué par X |
p_user_id | L’identifiant de l’utilisateur dans le système partenaire |
Pixel de synchronisation d’ID :
p_user_id égal à abc, le pixel généré serait le suivant :
| Column Number | Column Name | Column Type | Description |
| 1 | Partner ID | string | Le « partner id » est l’ID qu’X fournit au partenaire afin d’identifier de manière unique chaque partenaire. |
| 2 | The user’s id in the partner system | string | Le p_user_id est l’ID unique utilisé par le partenaire pour identifier l’utilisateur. Le fichier contenant ces utilisateurs désinscrits doit être téléversé à l’aide de l’endpoint TON upload et le chemin des données téléversées doit être envoyé à l’endpoint Global Opt Out ici : PUT accounts/:account_id/custom_audiences/global_opt_out. |
p_id doivent définir user_identifier_type sur TALIST_PARTNER_USER_ID ou TAWEB_PARTNER_USER_ID.
Toutes les autres étapes resteront identiques à celles répertoriées dans le Guide d’intégration de l’API Real-Time Audience.
Données utilisateur des Custom Audiences
- IDFA - en minuscules avec des tirets ; ex. :
4b61639e-47cc-4056-a16a-c8217e029462 - AdID - le format d’origine sur l’appareil est requis, non mis en majuscules, avec des tirets ; ex. :
2f5f5391-3e45-4d02-b645-4575a08f86e - Android id - le format d’origine sur l’appareil est requis, non mis en majuscules, sans tirets ni espaces ; ex. :
af3802a465767e36
- en minuscules, supprimer les espaces de début et de fin ; ex. :
support@x.com
- sans @, en minuscules, et suppression des espaces de début et de fin ; ex. :
jack
- Entier standard ; ex. :
143567
SHA256, sans sel. De plus, le hachage final produit doit être en minuscules. Par exemple : 49e0be2aeccfb51a8dee4c945c8a70a9ac500cf6f5cb08112575f74db9b1470d et non 49E0BE2AECCFB51A8DEE4C945C8A70A9AC500CF6F5CB08112575F74DB9B1470D
Audiences personnalisées : Web

p_user_ids) à cibler pour le compte d’un annonceur. Cela se fait via un processus de synchronisation d’ID (ID Sync) qui établit une correspondance entre les p_user_ids et l’ID utilisateur X. Cette correspondance est ensuite utilisée pour produire des listes d’ID utilisateur X pouvant être utilisées pour le ciblage. Ces audiences personnalisées seront mises à disposition sur le @handle spécifique de l’annonceur, indiqué par le libellé lors de la configuration de campagne Custom Audiences Web sur ads.x.com.
X fournira le pixel sécurisé qui pourra être intégré dans les balises et sur les sites des partenaires afin de faire correspondre les ID (p_user_ids) aux ID utilisateur X. Une fois le processus de synchronisation d’ID terminé, les fichiers de ciblage seront créés par le partenaire et mis à disposition de X via un endpoint HTTPS. Ces fichiers de ciblage sont régulièrement ingérés par X, puis rendus disponibles dans l’interface X.
Pixel sécurisé X
Le pixel sécurisé X se présentera comme suit :
https://analytics.x.com/i/adsct?p_user_id=xyz&p_id=123
p_user_id - xyz représente l’ID utilisateur du partenaire
p_id - 123 représente l’ID unique du partenaire (fourni par X)
Endpoint HTTPS du partenaire & fichier d’utilisateurs pour le ciblage
Le partenaire devra fournir à X un endpoint HTTPS et des identifiants (nom d’utilisateur/mot de passe) pouvant être utilisés pour ingérer régulièrement le fichier de ciblage. Un exemple d’endpoint HTTPS se présentera comme suit :
- Partner Targeting User File
- Targeting Conversion File
- 199.16.156.0/22
- 199.59.148.0/22
| Column Number | Column Name | Column Type | Description |
|---|---|---|---|
| 1 | partner id | string | Le « partner id » est l’identifiant qu’X fournit au partenaire afin d’identifier chaque partenaire de façon unique. |
| 2 | advertiser id | string | L’« advertiser id » est le @handle de l’annonceur. |
| 3 | p_user_id | string | Le « p_user_id » est l’identifiant unique utilisé par le partenaire pour identifier l’utilisateur. |
| 3 | confidence score | integer | Le « confidence score » est facultatif. Nous recommandons d’utiliser une valeur de confidence score comprise entre 0 et 100. Si le cas d’usage est le reciblage, alors un confidence score de « 100 » correspond à un utilisateur qui a été directement reciblé. Toute valeur de 0 à 99 correspondrait au niveau de confiance pour le profil similaire (look-alike). |
| 4 | segment label | string | Le « segment label » est facultatif. Les partenaires peuvent utiliser le « segment label » pour spécifier, par exemple, des catégories de produits. Nous recommandons d’utiliser ce « segment label », car il s’agit du nom lisible pour les Custom Audiences dans l’interface ads.x.com. |
Intégration de l’API Audience
Vue d’ensemble
- Obsolète : téléversement TON :
- GET accounts/:account_id/custom_audience_changes
- GET accounts/:account_id/custom_audience_changes/:custom_audience_change_id
- POST accounts/:account_id/custom_audience_changes
- PUT accounts/:account_id/custom_audiences/global_opt_out
- Obsolète : Real Time Audiences :
- POST custom_audience_memberships
- Audience personnalisée :
- Le paramètre
list_typesera supprimé de la requête et de la réponse sur tous les endpoints Custom Audience. Ce paramètre était auparavant utilisé pour identifier le type d’identifiant utilisateur de l’Audience (c.-à-d. email, X User ID, etc.). Cependant, les Audiences peuvent désormais accepter plusieurs identifiants utilisateur pour une même Audience, ce qui rend cette valeur non pertinente.
- Le paramètre
- Général :
- La période de rétrospection (lookback window) de l’Audience a été mise à jour pour faire correspondre les utilisateurs actifs au cours des 90 derniers jours (au lieu de 30 jours).
- Le nombre minimum d’utilisateurs correspondants requis pour qu’une Audience soit ciblable a été réduit à 100 utilisateurs (au lieu de 500 utilisateurs).
Prérequis
- Accès à l’Ads API
- Pour accéder au endpoint Audience, vous devrez être ajouté à une allowlist. Veuillez remplir ce formulaire et accepter le nouvel X Ads Products and Services Agreement si vous aviez initialement accepté une version antérieure au 1er août 2018.
| Étape du processus | Audience API | (Obsolète) téléversement TON |
|---|---|---|
| Créer une Audience « coquille » | Peut être créée via le [POST custom_audience endpoint]/x-ads-api/audiences | Peut être créée via le [POST custom_audience endpoint]/x-ads-api/audiences |
| Ajouter un nouvel utilisateur | Utiliser operation_type Update avec le Audience endpoint | Utiliser operation ADD avec le endpoint POST custom_audience_changes |
| Supprimer un utilisateur | Utiliser operation_type Delete avec le Audience endpoint | Utiliser operation REMOVE avec le endpoint POST custom_audience_changes |
| Exclure des utilisateurs (opt-out) | Utiliser operation_type Delete avec le Audience endpoint et les custom_audience_id correspondants dont l’utilisateur fait partie | Utiliser le Global opt-out endpoint |
- Nombre total d’opérations : 2500 opérations
- Taille maximale de la charge utile : 5 000 000 octets
Créer une nouvelle Audience personnalisée
id de l’Audience personnalisée correspondante. Cette étape est requise si vous créez une Audience à partir de zéro. Si vous mettez à jour une Audience existante, passez à la section suivante.
Ajouter des utilisateurs à une audience
id de la Custom Audience et un exemple de payload comme suit :
POST https://ads-api.x.com/11/accounts/18ce54d4x5t/custom_audiences/1nmth/users
Update pour le champ operation_type. La nouvelle interface Audience permet d’envoyer plusieurs clés d’utilisateur pour un même utilisateur. Chaque objet dans le tableau d’objets JSON correspond à un seul utilisateur. En utilisant l’exemple de payload ci‑dessus, la requête ajoutera deux utilisateurs à une Audience, l’un avec un email et un handle, et l’autre avec un email et un twitter_id.
Supprimer des utilisateurs d’une audience
operation_type doit être défini sur la valeur Delete et les utilisateurs seront mis en correspondance sur n’importe laquelle des clés qui étaient présentes lors de leur ajout à l’audience. Par exemple, si un utilisateur a été ajouté à une audience à l’aide d’un email et d’un twitter_id, alors ce même utilisateur peut être supprimé en utilisant l’une quelconque de ces clés, c’est‑à‑dire email ou twitter_id, ou les deux.
Il est également possible d’ajouter et de supprimer des utilisateurs d’une audience dans la même requête. Le point de terminaison prend en charge plusieurs valeurs de operation_type par requête.
Utilisateurs ayant refusé l’utilisation
Delete tous les utilisateurs qui ont choisi l’opt-out d’une Audience. Il existe plusieurs façons d’y parvenir :
- Suivre quels utilisateurs font partie de quelles Audiences et retirer ces utilisateurs individuellement de chaque Audience.
- Retirer l’utilisateur de toutes les Audiences associées à un compte Ads.
- Nous recommandons fortement d’appeler cet endpoint avec des lots traités en quasi temps réel afin d’éviter des pics dans les files d’attente, qui prennent plus de temps à être traités et génèrent en général une charge inutile sur notre système. Cela garantit également que les utilisateurs sont disponibles plus rapidement pour le ciblage des campagnes.
- Un appel d’API réussi renverra un
success_countet untotal_countcorrespondant au nombre d’objetsuserreçus dans la requête. - Cet endpoint est atomique par nature, c’est-à-dire que soit l’intégralité de la requête réussit, soit, en cas de
errors, l’intégralité de la requête échoue. En cas de réponse d’erreur, il est recommandé aux consommateurs de l’API de corriger l’erreur et de réessayer la requête avec l’intégralité du payload. - En cas d’échec, il est recommandé aux partenaires d’utiliser une approche de backoff exponentiel avec des tentatives de nouvelle exécution. Par exemple, réessayez immédiatement après le premier échec, réessayez après 1 minute après le deuxième échec et réessayez après 5 minutes après le troisième échec consécutif, et ainsi de suite.
Référence de l’API
Analyses de mots-clés
end_time - start_time) de 7 jours est autorisée.
Veuillez noter que les résultats sont limités à une seule zone géographique (pays).
Resource URL
https://ads-api.x.com/12/insights/keywords/search
Parameters
| Name | Description |
|---|---|
| granularity required | Spécifie la granularité des données renvoyées pour la plage de temps définie par start_time et end_time. Par exemple, lorsqu’elle est définie sur HOUR, un point de données est fourni pour chaque heure entre start_time et end_time.Type : enum Valeurs possibles : DAY, HOUR |
| keywords required | Chaîne de mots-clés séparés par des virgules pour affiner la recherche. Tous les mots-clés sont reliés entre eux par l’opérateur logique OR. Remarque : un maximum de 10 mots-clés ( keywords et negative_keywords combinés) peut être utilisé.Type : string Exemple : developers |
| start_time required | Restreint les données récupérées à celles collectées dans la fenêtre de temps comprise entre start_time et end_time. Exprimé au format ISO 8601.Type : string Exemple : 2017-07-10T00:00:00Z |
| end_time optional | Restreint les données récupérées à celles collectées dans la fenêtre de temps comprise entre start_time et end_time. Exprimé au format ISO 8601.Remarque : la valeur par défaut est l’heure actuelle. Type : string Exemple : 2017-07-11T00:00:00Z |
| location optional | Valeur de ciblage obtenue à partir du point de terminaison GET targeting_criteria/locations pour restreindre les résultats en fonction de l’emplacement de l’utilisateur du compte. Notez qu’à l’heure actuelle, seuls les emplacements au niveau du pays sont pris en charge. Type : string Exemple : 0ce8b9a7b2742f7e |
| negative_keywords optional | Chaîne de mots-clés séparés par des virgules à exclure. Tous les mots-clés négatifs sont reliés entre eux par l’opérateur logique OR. Remarque : un maximum de 10 mots-clés ( keywords et negative_keywords combinés) peut être utilisé.Type : string Exemple : rain |
Autorisations de l’audience personnalisée
https://ads-api.x.com/5/accounts/:account_id/tailored_audiences/:tailored_audience_id/permissions
Paramètres
| Nom | Description |
|---|---|
| account_id requis | L’identifiant du compte utilisé. Apparaît dans le chemin de la ressource et est généralement un paramètre requis pour toutes les requêtes de l’API Advertiser, à l’exception de GET accounts. Le compte spécifié doit être associé à l’utilisateur authentifié. Type : string Exemple : 18ce54d4x5t |
| tailored_audience_id requis | Une référence à l’audience personnalisée avec laquelle vous interagissez dans la requête. Type : string Exemple : 1nmth |
| count optionnel | Indique le nombre d’enregistrements à récupérer par requête distincte. Type : int Valeur par défaut : 200 Min, Max : 1, 1000 |
| cursor optionnel | Indique un curseur pour obtenir la page de résultats suivante. Voir Pagination pour plus d’informations. Type : string Exemple : 8x7v00oow |
| granted_account_ids optionnel | Limite la réponse aux comptes souhaités en indiquant une liste d’identifiants séparés par des virgules. Jusqu’à 200 identifiants peuvent être fournis. Type : string Exemple : 18ce54aymz3 |
| sort_by optionnel | Trie selon un attribut pris en charge, par ordre croissant ou décroissant. Voir Sorting pour plus d’informations. Type : string Exemple : created_at-asc |
| tailored_audience_permission_ids optionnel | Limite la réponse aux autorisations d’audience personnalisée souhaitées en indiquant une liste d’identifiants séparés par des virgules. Jusqu’à 200 identifiants peuvent être fournis. Type : string Exemple : ri |
| with_total_count optionnel | Inclut l’attribut de réponse total_count.Remarque : Ce paramètre et cursor sont mutuellement exclusifs.Remarque : Les requêtes qui incluent total_count seront soumises à des limites de taux plus faibles, actuellement définies à 200 par 15 minutes.Type : boolean Valeur par défaut : false Valeurs possibles : true, false |
GET https://ads-api.x.com/5/accounts/18ce54d4x5t/tailored_audiences/1nmth/permissions
Exemple de réponse
is_owner dans la réponse renvoyée pour une audience donnée.
Remarque : les audiences ne peuvent être partagées qu’entre des comptes publicitaires appartenant à la même entreprise ou si le compte publicitaire qui possède l’audience dispose de la fonctionnalité de compte SHARE_AUDIENCE_OUTSIDE_BUSINESS.
URL de la ressource
https://ads-api.x.com/5/accounts/:account_id/tailored_audiences/:tailored_audience_id/permissions
Paramètres
| Nom | Description |
|---|---|
| account_id required | L’identifiant du compte utilisé. Apparaît dans le chemin de la ressource et est généralement un paramètre requis pour toutes les requêtes de l’API Advertiser, à l’exception de GET accounts. Le compte spécifié doit être associé à l’utilisateur authentifié. Type : string Exemple : 18ce54d4x5t |
| granted_account_id required | Le compte auquel vous souhaitez accorder des autorisations sur l’audience personnalisée. Type : string Exemple : 18ce54aymz3 |
| permission_level required | Le type d’accès à l’audience personnalisée que granted_account_id doit avoir.Type : enum Valeurs possibles : READ_ONLY, READ_WRITE |
| tailored_audience_id required | Une référence à l’audience personnalisée que vous utilisez dans la requête. Type : string Exemple : 2906h |
POST https://ads-api.x.com/5/accounts/18ce54d4x5t/tailored_audiences/2906h/permissions?granted_account_id=18ce54aymz3&permission_level=READ_ONLY
Exemple de réponse
DELETE accounts/:account_id/tailored_audiences/:tailored_audience_id/permissions/:tailored_audience_permission_id
is_owner dans la réponse pour une audience donnée.
Une fois révoquée, nous garantissons que le compte bénéficiaire (granted_account_id) ne pourra plus cibler l’audience dans de futures campagnes. Les campagnes existantes continueront de s’exécuter avec les audiences partagées ; les campagnes ne s’arrêtent pas et l’audience n’est pas supprimée de la campagne. Il n’est pas possible de dupliquer cette campagne après la révocation de l’autorisation de partage d’audience.
URL de la ressource
https://ads-api.x.com/5/accounts/:account_id/tailored_audiences/:tailored_audience_id/permissions/:tailored_audience_permission_id
Paramètres
| Nom | Description |
|---|---|
| account_id required | L’identifiant du compte utilisé. Apparaît dans le chemin de la ressource et est généralement un paramètre requis pour toutes les requêtes de l’API Advertiser, à l’exception de GET accounts. Le compte spécifié doit être associé à l’utilisateur authentifié. Type: string Example: 18ce54d4x5t |
| tailored_audience_id required | Une référence à la Tailored Audience utilisée dans la requête. Type: string Example: 1nmth |
| tailored_audience_permission_id required | Une référence à l’autorisation de Tailored Audience utilisée dans la requête. Type: string Example: ri |
DELETE https://ads-api.x.com/5/accounts/18ce54d4x5t/tailored_audiences/1nmth/permissions/ri
Exemple de réponse
Audiences ciblées
custom_audience_id donné.
| Nom | Description |
|---|---|
| account_id required | L’identifiant du compte utilisé. Apparaît dans le chemin de la ressource et est généralement un paramètre requis pour toutes les requêtes de l’API Advertiser, à l’exception de GET accounts. Le compte spécifié doit être associé à l’utilisateur authentifié. Type: string Exemple : 18ce54d4x5t |
| custom_audience_id required | Une référence à la custom audience que vous utilisez dans la requête. Type: string Exemple : 2906h |
| with_active optional | Lorsque false, inclut les line items dont le statut est servable=false.Type: boolean Valeur par défaut : true Valeurs possibles : true, false |
| cursor optional | Spécifie un curseur pour obtenir la page suivante de résultats. Consultez la section Pagination pour plus d’informations. Type: string Exemple : 8x7v00oow |
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/custom_audiences/2906h/targeted
Exemple de réponse
Utilisateurs d’audiences personnalisées
custom_audience_id donné. L’endpoint accepte également plusieurs types d’identifiants utilisateur pour un même utilisateur.
Toutes les données fournies dans le champ users de la requête, sauf partner_user_id, doivent être hachées à l’aide de SHA256 et normalisées.
Requêtes en lot
- La taille maximale actuelle d’un lot est de
2500pour cet endpoint. La taille du lot est déterminée par le nombre d’opérations (Update/Delete) par requête. Par exemple, plus de 2500 objets d’opération ({"operation_type": "Update/Delete", [..] }) dans un même tableau entraînent une erreur. - La taille maximale du corps POST de la requête que cet endpoint peut accepter est de
5,000,000octets. - Les limites de taux pour cet endpoint sont de 1500 par fenêtre de 1 minute.
- Tous les paramètres sont envoyés dans le corps de la requête et un
Content-Typedeapplication/jsonest requis. - Les requêtes en lot échouent ou réussissent toutes ensemble en tant que groupe et toutes les réponses de l’API, qu’il s’agisse d’erreurs ou de succès, préservent l’ordre des éléments de la requête initiale.
success_count et un total_count. Ces valeurs doivent toujours être égales, et elles correspondent au nombre d’enregistrements dans la requête qui ont été traités par le backend. Une situation où le nombre d’enregistrements envoyés dans le corps de la requête n’est pas égal à success_count et total_count doit être traitée comme une erreur nécessitant une nouvelle tentative.
Erreurs en lot
- Les erreurs au niveau de la requête (par ex. taille maximale du lot dépassée) sont indiquées dans la réponse sous l’objet
errors. - Les erreurs au niveau des éléments (par ex. paramètres obligatoires manquants) sont indiquées dans la réponse sous l’objet
operation_errors. - L’index de l’erreur dans
operation_errorscorrespond à l’index de l’élément d’entrée, avec le message d’erreur correspondant.
https://ads-api.x.com/12/accounts/:account_id/custom_audiences/:custom_audience_id/users
| Name | Description |
|---|---|
| operation_type required | Le type d’opération effectué pour chaque groupe de users.Type : enum Valeurs possibles : Update, Delete |
| params required | Un objet JSON contenant le tableau users, ainsi que les horodatages effective_at et expires_at.Type : JSON |
| users required | Un tableau d’objets JSON contenant tous les paramètres pour un utilisateur donné. Type : JSON |
| effective_at optional | L’heure UTC à laquelle l’association ou les associations à l’audience personnalisée doivent prendre effet. Exprimée au format ISO 8601. Par défaut, la date et l’heure actuelles. Type : string Exemple : 2017-07-05T07:00:00Z |
| expires_at optional | L’heure UTC à laquelle l’association ou les associations à l’audience personnalisée doivent expirer. L’heure spécifiée doit être postérieure à la valeur de effective_at. Exprimée au format ISO 8601. Par défaut, 13 mois après l’horodatage de la requête.Type : string Exemple : 2017-07-05T07:00:00Z |
users, chaque élément de cet objet est documenté ci‑dessous :
| Name | Description |
|---|---|
| email optional | Adresse(s) e‑mail de l’utilisateur. Type : Array[String] |
| device_id optional | IDFA/AdID/Android ID Type : Array[String] |
| handle optional | Le ou les @handles appartenant à l’utilisateur Type : Array[String] |
| twitter_id optional | L’ID X appartenant à l’utilisateur Type : Array[String] |
| phone_number optional | Numéro(s) de téléphone de l’utilisateur Type : Array[String] |
| partner_user_id optional | L’ID de l’utilisateur dans le système du partenaire. Type : Array[String] |
POST https://ads-api.x.com/12/accounts/18ce54d4x5t/custom_audiences/1nmth/users
Autorisations d’audience personnalisée
https://ads-api.x.com/12/accounts/:account_id/custom_audiences/:custom_audience_id/permissions
Paramètres
| Nom | Description |
|---|---|
| account_id required | L’identifiant du compte utilisé. Apparaît dans le chemin de la ressource et est généralement un paramètre requis pour toutes les requêtes de l’API Advertiser, à l’exception de GET accounts. Le compte spécifié doit être associé à l’utilisateur authentifié. Type : string Exemple : 18ce54d4x5t |
| custom_audience_id required | Référence à l’audience personnalisée que vous utilisez dans la requête. Type : string Exemple : 1nmth |
| count optional | Spécifie le nombre d’enregistrements à tenter de récupérer par requête distincte. Type : int Valeur par défaut : 200 Min, max : 1, 1000 |
| cursor optional | Spécifie un curseur pour obtenir la page de résultats suivante. Voir Pagination pour plus d’informations. Type : string Exemple : 8x7v00oow |
| granted_account_ids optional | Limite la réponse aux seuls comptes souhaités en spécifiant une liste d’identifiants séparés par des virgules. Jusqu’à 200 identifiants peuvent être fournis. Type : string Exemple : 18ce54aymz3 |
| sort_by optional | Trie selon un attribut pris en charge, par ordre croissant ou décroissant. Voir Sorting pour plus d’informations. Type : string Exemple : created_at-asc |
| custom_audience_permission_ids optional | Limite la réponse aux seules autorisations d’audience personnalisée souhaitées en spécifiant une liste d’identifiants séparés par des virgules. Jusqu’à 200 identifiants peuvent être fournis. Type : string Exemple : ri |
| with_total_count optional | Inclure l’attribut de réponse total_count.Remarque : ce paramètre et cursor sont exclusifs.Remarque : les requêtes qui incluent total_count auront des limites de taux plus faibles, actuellement fixées à 200 par tranche de 15 minutes.Type : boolean Valeur par défaut : false Valeurs possibles : true, false |
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/custom_audiences/1nmth/permissions
Exemple de réponse
is_owner dans la réponse pour une audience donnée.
Remarque : les audiences ne peuvent être partagées qu’entre des comptes publicitaires appartenant à la même entreprise ou si le compte publicitaire qui détient l’audience dispose de la fonctionnalité de compte SHARE_AUDIENCE_OUTSIDE_BUSINESS.
Resource URL
https://ads-api.x.com/12/accounts/:account_id/custom_audiences/:custom_audience_id/permissions
Parameters
| Name | Description |
|---|---|
| account_id required | Identifiant du compte exploité. Apparaît dans le chemin de la ressource et est généralement un paramètre requis pour toutes les requêtes Advertiser API, à l’exception de GET accounts. Le compte spécifié doit être associé à l’utilisateur authentifié. Type : string Exemple : 18ce54d4x5t |
| granted_account_id required | Le compte auquel vous souhaitez accorder des autorisations pour l’audience personnalisée. Type : string Exemple : 18ce54aymz3 |
| permission_level required | Type d’accès à l’audience personnalisée que granted_account_id doit avoir.Type : enum Valeurs possibles : READ_ONLY, READ_WRITE |
| custom_audience_id required | Référence à l’audience personnalisée utilisée dans la requête. Type : string Exemple : 2906h |
DELETE accounts/:account_id/custom_audiences/:custom_audience_id/permissions/:custom_audience_permission_id
is_owner dans la réponse pour une audience donnée.
Une fois révoquée, nous garantissons que le compte à qui l’accès a été accordé (granted_account_id) ne pourra plus cibler l’audience dans de futures campagnes. Les campagnes existantes continueront à s’exécuter avec les audiences partagées ; les campagnes ne s’arrêtent pas et l’audience n’est pas supprimée de la campagne. Il n’est pas possible de copier cette campagne après la révocation de l’autorisation de partage d’audience.
URL de la ressource
https://ads-api.x.com/12/accounts/:account_id/custom_audiences/:custom_audience_id/permissions/:custom_audience_permission_id
Paramètres
| Name | Description |
|---|---|
| account_id required | L’identifiant du compte utilisé. Apparaît dans le chemin de la ressource et est généralement un paramètre requis pour toutes les requêtes Advertiser API, à l’exception de GET accounts. Le compte spécifié doit être associé à l’utilisateur authentifié. Type: string Example: 18ce54d4x5t |
| custom_audience_id required | Une référence à la Custom Audience sur laquelle porte la requête. Type: string Example: 1nmth |
| custom_audience_permission_id required | Une référence à l’autorisation de Custom Audience sur laquelle porte la requête. Type: string Example: ri |
DELETE https://ads-api.x.com/12/accounts/18ce54d4x5t/custom_audiences/1nmth/permissions/ri
Exemple de réponse
Audiences personnalisées
https://ads-api.x.com/12/accounts/:account_id/custom_audiences
Parameters
| Name | Description |
|---|---|
| account_id required | Identifiant du compte utilisé. Apparaît dans le chemin de la ressource et est généralement un paramètre requis pour toutes les requêtes de l’API Advertiser, à l’exception de GET accounts. Le compte spécifié doit être associé à l’utilisateur authentifié. Type: string Exemple: 18ce54d4x5t |
| count optional | Indique le nombre d’enregistrements à récupérer par requête distincte. Type: int Valeur par défaut: 200 Min, max: 1, 1000 |
| cursor optional | Indique un curseur pour obtenir la page suivante de résultats. Consultez Pagination pour plus d’informations. Type: string Exemple: 8x7v00oow |
| permission_scope optional | Permet de filtrer la réponse sur les listes que vous possédez ou celles qui ont été partagées avec vous. Par défaut, sans spécifier ce paramètre, vous ne verrez que les audiences que vous possédez. Type: enum Valeur par défaut: OWNER Valeurs possibles: OWNER, SHARED |
| q optional | Requête optionnelle permettant de restreindre la ressource par name.Note : effectue une correspondance de préfixe insensible à la casse. Type: string Longueur min, max: 1, 255 |
| sort_by optional | Trie selon un attribut pris en charge, par ordre croissant ou décroissant. Consultez Sorting pour plus d’informations. Type: string Exemple: created_at-asc |
| custom_audience_ids optional | Restreint la réponse aux audiences personnalisées souhaitées en spécifiant une liste d’identifiants séparés par des virgules. Jusqu’à 200 ID peuvent être fournis. Type: string Exemple: 1nmth |
| with_deleted optional | Inclut les résultats supprimés dans votre requête. Type: boolean Valeur par défaut: false Valeurs possibles: true, false |
| with_total_count optional | Inclut l’attribut de réponse total_count.Note : ce paramètre et cursor sont exclusifs.Note : les requêtes qui incluent total_count auront des limites de taux plus faibles, actuellement fixées à 200 par tranche de 15 minutes.Type: boolean Valeur par défaut: false Valeurs possibles: true, false |
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/custom_audiences?custom_audience_ids=1nmth
Example Response
https://ads-api.x.com/12/accounts/:account_id/custom_audiences/:custom_audience_id
Paramètres
| Nom | Description |
|---|---|
| account_id required | Identifiant du compte concerné. Apparaît dans le chemin de la ressource et est généralement un paramètre requis pour toutes les requêtes de l’API Advertiser, à l’exception de GET accounts. Le compte spécifié doit être associé à l’utilisateur authentifié. Type : string Exemple : 18ce54d4x5t |
| custom_audience_id required | Référence à la Custom Audience avec laquelle vous opérez dans la requête. Type : string Exemple : 2906h |
| with_deleted optional | Inclure les résultats supprimés dans votre requête. Type : boolean Valeur par défaut : false Valeurs possibles : true, false |
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/custom_audiences/2906h
Exemple de réponse
https://ads-api.x.com/12/accounts/:account_id/custom_audiences
Paramètres
| Nom | Description |
|---|---|
| account_id required | L’identifiant du compte utilisé. Apparaît dans le chemin de la ressource et est généralement un paramètre requis pour toutes les requêtes de l’API Advertiser, à l’exception de GET accounts. Le compte spécifié doit être associé à l’utilisateur authentifié. Type: string Exemple : 18ce54d4x5t |
| name required | Le nom d’affichage de cette audience. Une valeur de nom unique doit être utilisée. Le non‑respect de cette contrainte entraînera une erreur. Type: string Exemple : ads api users |
| description optional | Une description de cette audience. Type: string Exemple : Collection of all users of the Ads API |
POST https://ads-api.x.com/12/accounts/18ce54d4x5t/custom_audiences?name=developers
Exemple de réponse
https://ads-api.x.com/12/accounts/:account_id/custom_audiences/:custom_audience_id
Parameters
| Name | Description |
|---|---|
| account_id required | Identifiant du compte utilisé. Il apparaît dans le chemin de la ressource et est généralement un paramètre requis pour toutes les requêtes de l’Advertiser API à l’exception de GET accounts. Le compte spécifié doit être associé à l’utilisateur authentifié. Type : string Exemple : 18ce54d4x5t |
| custom_audience_id required | Référence à la Custom Audience que vous utilisez dans la requête. Type : string Exemple : 2906h |
| name optional | Nom d’affichage de cette audience. Une valeur de nom unique doit être utilisée. Dans le cas contraire, une erreur sera renvoyée. Type : string Exemple : ads api users |
| description optional | Description de cette audience. Type : string Exemple : Collection of all users of the Ads API |
PUT https://ads-api.x.com/12/accounts/18ce54d4x5t/custom_audiences/2906h?name=developers_changed
Example Response
- La taille maximale actuelle d’un lot est de 10.
- Tous les paramètres sont envoyés dans le corps de la requête et un
Content-Typedeapplication/jsonest requis. - Les requêtes par lot échouent ou réussissent ensemble en tant que groupe et toutes les réponses de l’API, en cas d’erreur comme de succès, préservent l’ordre des éléments de la requête initiale.
- Les erreurs au niveau de la requête (par ex. taille maximale de lot dépassée) apparaissent dans la réponse sous l’objet
errors. - Les erreurs au niveau des éléments (par ex. paramètre obligatoire manquant) apparaissent dans la réponse sous l’objet
operation_errors.
- Les Flexible Audiences sont immuables une fois créées.
- Les Custom Audiences sont transmises sous forme d’arborescence avec des combinaisons de logique booléenne pour créer des Flexible Audiences.
- Un maximum de 10 nœuds feuille de Custom Audiences peut être utilisé pour créer une Flexible Audience.
https://ads-api.x.com/12/batch/accounts/:account_id/custom_audiences
Paramètres
| Name | Description |
|---|---|
| account_id required | L’identifiant du compte utilisé. Apparaît dans le chemin de la ressource et est généralement un paramètre requis pour toutes les requêtes de l’API Advertiser, à l’exception de GET accounts. Le compte spécifié doit être associé à l’utilisateur authentifié. Type: string Example: 18ce54d4x5t |
| audience_type required | Le type d’audience à créer. Type: enum Valeurs possibles : FLEXIBLE, MOBILE_AUDIENCE |
| child_segments required | Un tableau contenant des objets qui définissent le sous-ensemble des membres d’une Custom Audience que vous souhaitez cibler. Chaque objet doit contenir un custom_audience_id, frequency, frequency_comparator, lookback_window, negate et, dans certains cas, des child_segments supplémentaires.Type: array |
| name required | Le nom d’affichage de l’audience. Une valeur de nom unique doit être utilisée. Le non-respect de cette règle entraînera une erreur. Type: string Example: my_flexible_audience_name |
| operation_type required | Le type d’opération appliqué à chaque élément. Type: enum Valeurs possibles : Create, Update, Delete |
| boolean_operator sometimes required | La relation logique entre les segments enfants dans leur objet parent (contenant). Obligatoire si child_segments n’est pas vide pour l’objet parent.Type: enum Valeurs possibles : AND, OR |
| lookback_window sometimes required | Une valeur entière indiquant l’intervalle de jours pendant lequel l’utilisateur a effectué l’action spécifique et a été qualifié pour la Custom Audience donnée. Type: int Valeurs possibles : 1, 7, 14, 30 |
| segments sometimes required | Un objet contenant un boolean_operator et des child_segments qui définissent le sous-ensemble des membres d’une Custom Audience que vous souhaitez cibler.Type: object |
| custom_audience_id sometimes required | L’id de la Custom Audience à utiliser comme segment enfant. Type: string Example: tyfo |
| frequency optional | Une valeur entière indiquant, dans la fenêtre de lookback, la fréquence à laquelle l’utilisateur a effectué l’action spécifique et a été qualifié pour la Custom Audience donnée. Type: int Valeur par défaut : 1 |
| frequency_comparator optional | Le comparateur appliqué à la frequency passée dans la requête.Remarque : Dans les valeurs ci-dessous, GTE signifie greater than or equal (supérieur ou égal), LT signifie less than (inférieur), etc.Type: string Valeurs possibles : NUM_GTE, NUM_GT, NUM_EQ, NUM_LTE, NUM_LT Valeur par défaut : NUM_GTE |
| negate optional | Négation du segment, qui est ainsi exclu de la combinaison. Type: boolean Valeur par défaut : true Valeurs possibles : true, false |
POST https://ads-api.x.com/12/batch/accounts/18ce54d4x5t/custom_audiences
https://ads-api.x.com/12/accounts/:account_id/custom_audiences/:custom_audience_id
Paramètres
| Name | Description |
|---|---|
| account_id required | L’identifiant du compte utilisé. Apparaît dans le chemin de la ressource et est généralement un paramètre requis pour toutes les requêtes Advertiser API, à l’exception de GET accounts. Le compte spécifié doit être associé à l’utilisateur authentifié. Type: string Exemple : 18ce54d4x5t |
| custom_audience_id required | Une référence à l’Audience personnalisée que vous utilisez dans la requête. Type: string Exemple : 2906h |
DELETE https://ads-api.x.com/12/accounts/18ce54d4x5t/custom_audiences/2906h
Exemple de réponse
Listes d’exclusion de contact
account_id ne peut avoir qu’au maximum une liste Do Not Reach
URL de la ressource
https://ads-api.x.com/12/accounts/:account_id/do_not_reach_lists
Paramètres
| Name | Description |
|---|---|
| account_id required | Identifiant du compte utilisé. Apparaît dans le chemin de la ressource et est généralement un paramètre requis pour toutes les requêtes de l’API Advertiser, à l’exception de GET accounts. Le compte spécifié doit être associé à l’utilisateur authentifié. Type : string Exemple : 18ce54d4x5t |
| with_deleted optional | Inclure les résultats supprimés dans votre requête. Type : boolean Valeur par défaut : false Valeurs possibles : true, false |
GET https://ads-api.x.com/12/accounts/18ce54bgxky/do_not_reach_lists
Exemple de réponse
account_id ne peut avoir au maximum qu’une seule Liste Ne Pas Contacter
URL de ressource
https://ads-api.x.com/12/accounts/:account_id/do_not_reach_lists
Paramètres
| Nom | Description |
|---|---|
| account_id required | L’identifiant du compte utilisé. Apparaît dans le chemin de la ressource et est généralement un paramètre requis pour toutes les requêtes de l’API Advertiser, à l’exception de GET accounts. Le compte spécifié doit être associé à l’utilisateur authentifié. Type : string Exemple : 18ce54d4x5t |
| description optional | Une description pour cette audience. Type : string Exemple : A list of users to exclude |
POST https://ads-api.x.com/12/accounts/18ce54bgxky/do_not_reach_lists?description=A list of users to exclude
Exemple de réponse
do_not_reach_list_id donné. Cet endpoint n’accepte que les e-mails comme type d’identifiant utilisateur valide.
Toutes les données fournies dans le champ emails de la requête doivent être hachées en utilisant SHA256 et normalisées.
Remarques
- Un
account_idne peut être associé au maximum qu’à une seule Do Not Reach List - Les utilisateurs ajoutés à cette liste doivent avoir un horodatage
expires_atdéfini à moins de 13 mois à compter de l’horodatage actuel - L’API Do Not Reach List n’accepte pas d’horodatage
effective_atet utilise par défaut l’horodatage actuel - La Do Not Reach List ne supprime pas les utilisateurs d’une ou de toutes les audiences personnalisées du compte, mais agit comme un ciblage d’exclusion pour toutes les campagnes diffusées pour le compte
- La taille maximale actuelle d’un lot est de
2500pour cet endpoint. La taille du lot est déterminée par le nombre d’opérations (Update/Delete) par requête. Par exemple, plus de 2500 objets d’opération ({"operation_type": "Update/Delete", [..] }) dans un seul tableau entraînent une erreur. - La taille maximale du corps de requête POST que cet endpoint peut accepter est de
5,000,000octets. - Les limites de taux pour cet endpoint sont de 1500 par fenêtre de 1 minute.
- Tous les paramètres sont envoyés dans le corps de la requête et un
Content-Typedeapplication/jsonest requis. - Les requêtes par lots échouent ou réussissent ensemble en tant que groupe et toutes les réponses de l’API, pour les erreurs comme pour les succès, préservent l’ordre des éléments de la requête initiale.
success_count et un total_count. Ces valeurs doivent toujours être égales, et elles correspondent au nombre d’enregistrements dans la requête qui ont été traités par le backend. Une situation où le nombre d’enregistrements envoyés dans le corps de la requête n’est pas égal à success_count et total_count doit être traitée comme une condition d’erreur nécessitant une nouvelle tentative.
Erreurs par lots
- Les erreurs au niveau de la requête (par ex. taille de lot maximale dépassée) sont indiquées dans la réponse dans l’objet
errors. - Les erreurs au niveau des éléments (par ex. paramètres obligatoires manquants) sont indiquées dans la réponse dans l’objet
operation_errors. - L’index de l’erreur dans
operation_errorsfait référence à l’index de l’élément en entrée, avec le message d’erreur correspondant
https://ads-api.x.com/12/batch/accounts/:account_id/do_not_reach_lists/:do_not_reach_list_id/users
Paramètres
| Name | Description |
|---|---|
| account_id required | L’identifiant du compte utilisé. Apparaît dans le chemin de la ressource et est généralement un paramètre requis pour toutes les requêtes de l’Advertiser API, à l’exception de GET accounts. Le compte spécifié doit être associé à l’utilisateur authentifié. Type: string Example: 18ce54d4x5t |
| do_not_reach_list_id required | Une référence à la Do Not Reach List avec laquelle vous opérez dans la requête Type: string Example: 2906h |
| operation_type required | Le type d’opération par groupe users en cours d’exécution.Type: enum Possible values: Update, Delete |
| params required | Un objet JSON contenant le tableau emails et l’horodatage expires_at.Type: JSON |
| users required | Un tableau d’objets JSON contenant tous les paramètres pour un utilisateur individuel. Type: JSON |
| expires_at optional | L’heure UTC à laquelle l’association ou les associations d’utilisateurs doivent expirer. L’heure spécifiée doit être postérieure à la valeur de l’horodatage actuel. Exprimée au format ISO 8601. Par défaut : 13 mois à partir de l’horodatage actuel. Type: string Example: 2017-07-05T07:00:00Z |
users, chaque élément de cet objet est documenté ci-dessous :
| Name | Description |
|---|---|
| email facultatif | Adresse(s) e-mail de l’utilisateur. Type : Array[String] |
| phone_number facultatif | Numéro(s) de téléphone de l’utilisateur. Type : Array[String] |
https://ads-api.x.com/12/accounts/:account_id/do_not_reach_lists/:do_not_reach_list_id
Paramètres
Aucun
Exemple de requête
DELETE https://ads-api.x.com/12/accounts/18ce54bgxky/do_not_reach_lists/4ofrp
Exemple de réponse