Configuration d'un compte partenaire via l'API Ads (API Partner Setup)

Idée centrale

Ce guide opérationnel s'adresse aux partenaires API (agences ou plateformes tierces gérant des comptes clients) pour configurer, par programmation, un compte client existant : vérification du compte, complétion du favicon de marque, mise en place des conversions (pixel, clé API serveur, événement de conversion), puis création d'une campagne et d'un groupe d'annonces. C'est un point de vue « partenaire gérant un compte client » plutôt que « annonceur direct » — ce qui le distingue de Démarrage rapide de l'API Ads (Quickstart).

Définition

La séquence d'intégration (« onboarding ») recommandée par la documentation développeur Ads pour un partenaire API configurant un compte publicitaire client, dans l'ordre exact où les appels doivent être effectués.

Contexte

Relie entre elles, dans un ordre d'exécution précis, plusieurs pages autrement autonomes : Authentification, compte publicitaire et fichiers dans l'API Ads (Ad Account, Files), Configuration de la mesure de conversion dans l'API Ads (Conversion Setup), Campagnes optimisées pour la conversion via l'API Ads (oCPC). Ne décrit aucune fonctionnalité de l'interface Ads Manager elle-même : documente un flux d'intégration côté API, distinct de mais complémentaire à la configuration de compte côté interface documentée dans Configuration d'un compte Ads Manager. Capturée le 2026-08-08.

Fonctionnement

Avant de commencer

Étape 1 — Confirmer l'accès au compte

GET /ad_account avec Authorization: Bearer $OPENAI_ADS_API_KEY (voir Authentification, compte publicitaire et fichiers dans l'API Ads). Vérifier le nom du compte, l'URL, le fuseau horaire et la devise avant de créer des ressources de campagne. Contacter le représentant partenaire OpenAI si les informations ou l'accès sont incorrects.

Étape 2 — Ajouter un favicon de marque

Un compte ne peut pas diffuser d'annonces tant que la révision de sa marque n'est pas approuvée. Si review.reason vaut missing_favicon, téléverser puis assigner un favicon avant de créer des ressources de campagne actives.

curl -X POST "https://api.ads.openai.com/v1/upload" \
  -H "Authorization: Bearer $OPENAI_ADS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "image_url": "https://www.acme.example", "purpose": "account_favicon" }'
curl -X POST "https://api.ads.openai.com/v1/ad_account/brand" \
  -H "Authorization: Bearer $OPENAI_ADS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "favicon_file_id": "file_123" }'

Interroger GET /ad_account en boucle jusqu'à ce que review.status devienne approved. Si rejected, utiliser review.reason pour corriger les métadonnées de marque.

Étape 3 — Configurer les conversions

Créer un pixel web (POST /conversions/pixels, champ automatic_advanced_matching_enabled à passer explicitement — voir Configuration de la mesure de conversion dans l'API Ads (Conversion Setup) pour le changement de comportement par défaut annoncé au 17 août 2026). Créer une clé Conversions API côté serveur (POST /conversions/api_keys), à stocker dans un gestionnaire de secrets, jamais exposée dans du code navigateur. Définir l'événement de conversion à mesurer/optimiser (POST /conversions/event_settings) avec name, event_type (ex. order_created), attribution_window_days (ex. 30), source_ids. Conserver l'id du réglage retourné.

Lorsque des événements de conversion sont envoyés pour le compte d'un client, un integration_source identique doit figurer sur chaque requête — voir Conversions API (mesure de conversion côté serveur).

Étape 4 — Créer les campagnes et les annonces

Renvoi vers Démarrage rapide de l'API Ads (Quickstart) pour l'ordre exact de création (campagne, groupe d'annonces, actif créatif, annonce). Spécificité partenaire : créer la campagne avec status: "paused" (et non "active"), puis l'activer seulement une fois toutes les ressources enfants prêtes.

Pour une campagne oCPC : bidding_type: "conversions" et exactement un identifiant de réglage d'événement — voir Campagnes optimisées pour la conversion via l'API Ads (oCPC).

curl -X POST "https://api.ads.openai.com/v1/campaigns" \
  -H "Authorization: Bearer $OPENAI_ADS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Acme purchases",
    "status": "paused",
    "budget": { "lifetime_spend_limit_micros": 250000000 },
    "bidding_type": "conversions",
    "conversion_event_setting_ids": ["ces_123"]
  }'

Contraintes sur l'événement d'optimisation : actif, appartenant au compte publicitaire courant, connecté à une seule source de conversion active, utilisant un événement standard (exemples : order_created, lead_created, registration_completed) — les événements personnalisés ne peuvent pas être des objectifs d'optimisation. Pour les campagnes à flux produits (bêta ouverte) : mode: "product_feed" et product_feed_id. L'objectif de campagne et l'événement de conversion choisi ne peuvent pas être modifiés après création.

Créer chaque groupe d'annonces avec billing_event_type: "click". Pour une campagne oCPC, max_bid_micros est l'enchère CPA (ex. 100000000 = 100,00 $ de CPA pour un compte en USD) :

curl -X POST "https://api.ads.openai.com/v1/ad_groups" \
  -H "Authorization: Bearer $OPENAI_ADS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "campaign_id": "cmpn_101",
    "name": "US English",
    "status": "active",
    "bidding_config": { "billing_event_type": "click", "max_bid_micros": 100000000 }
  }'

Recommandation générale : créer les campagnes en "paused" pendant l'ajout et la validation de leurs groupes d'annonces et annonces, ne les activer qu'une fois toutes les ressources enfants prêtes.

Liste finale des pages de référence

Le guide se termine par une liste de huit liens vers les pages de référence de l'API : Authentication, Ad Account, Conversion Setup, Campaigns, Ad Groups, Ads, Files, Insights. Cette liste confirme l'existence de la page « Ad Groups » (api-reference/ad-groups) — voir « Limites et nuances ».

Éléments essentiels

Distinctions importantes

Ne pas confondre ce guide (point de vue partenaire/agence gérant un compte client, campagnes créées en "paused" par précaution) avec Démarrage rapide de l'API Ads (Quickstart) (point de vue annonceur direct, campagnes créées directement en "active" dans les exemples) : même hiérarchie technique, deux postures opérationnelles différentes.

Ne pas confondre cette page (flux d'intégration API pour partenaires techniques) avec les pages d'aide déjà intégrées sur la création de campagnes via l'interface (voir Création de campagnes dans Ads Manager, Configuration d'un compte Ads Manager) : la distinction API/interface reste visible, ces contenus ne sont pas fusionnés.

Cas pratiques

Aucun cas pratique disponible : identifiants et exemples (Acme purchases, clidsrc_123) manifestement fictifs et illustratifs.

Erreurs fréquentes

Ne pas créer une campagne partenaire directement en "active" : la recommandation explicite est de la créer en "paused", de valider ses ressources enfants, puis de l'activer.

Ne pas confondre le statut d'approbation de la revue de marque (bloquant pour la diffusion) avec un blocage de la création de campagne en pause — la source ne tranche pas explicitement ce point (voir « Limites et nuances »).

Limites et nuances

Relations

Points à vérifier

Sources