Analyse approfondie · 13 min de lecture

Un an sur l'API Microsoft Advertising : SOAP se meurt, la fenêtre est ouverte

Microsoft coupe SOAP le 31 janvier 2027 et atteint discrètement la parité avec Google. Quoi reconstruire en premier, avec les appels REST exacts.

Illustration d'une enveloppe SOAP qui se dissout en accolades REST/JSON propres, avec deux jalons de deadline devant.
Les faits sont réels — les couvertures d'articles non.

En bref: Une seule horloge est réelle. Microsoft retire son API SOAP : les nouveautés passent en REST uniquement le 1er octobre 2026, et SOAP est coupé définitivement le 31 janvier 2027. Tout le reste, c'est Microsoft qui atteint discrètement la parité fonctionnelle avec Google, de PMax et AI Max aux composants génératifs, à la connexion Google et à l'import. Cette parité, plus le fait que presque personne n'automatise Bing, fait de 2026 l'année pour construire.

Le 1er avril de cette année, Microsoft a publié un billet de blog annonçant la fin de son API SOAP. J’ai vérifié la date deux fois, parce qu’enterrer les funérailles d’un protocole dans un billet du 1er avril, c’est chercher les ennuis. C’était réel. Les nouvelles fonctionnalités cessent d’arriver sur SOAP le 1er octobre 2026, et le 31 janvier 2027 tout s’éteint.

Puis j’ai fait ce que vingt ans de PPC ont fait de moi. J’ai ouvert notre base de code chez Lynt et vérifié quels connecteurs parlent encore SOAP à Bing. Pas parce que la deadline est proche. Parce qu’un retrait d’API ne casse jamais rien le jour de son annonce. Il casse une tâche de reporting quatorze mois plus tard, en plein trimestre, sur un compte où plus personne ne se souvient de qui a écrit le script.

Cette deadline est la seule horloge dure de l’année API de Microsoft. Tout le reste de ce que la plateforme a livré est plus discret et, honnêtement, plus intéressant. Pièce par pièce, l’API Bing Ads a rattrapé Google. PMax, AI Max, composants génératifs, connexion Google, import enrichi. Ça fait douze ans que j’écris du code contre l’API Google Ads, et pendant la majeure partie de ce temps, celle de Microsoft était la plateforme que tu intégrais en dernier, à contrecœur, si le client insistait. C’est la première année où porter une automatisation Google vers Bing ne coûte presque rien.

Et la concurrence traite toujours Bing comme un canal secondaire, ce qui est exactement la raison pour laquelle la fenêtre est ouverte. Je vais donc parcourir l’année comme j’ai parcouru celle de Google. Pour chaque changement, ce que c’est, pourquoi ça compte pour ton compte, et l’appel ou le payload exact à construire. La deadline d’abord, l’opportunité ensuite.

1er oct. 2026
les nouveautés arrivent en REST uniquement
31 janv. 2027
l'API SOAP coupée définitivement
déc. 2025
la connexion Google arrive dans l'API Bing Ads
mai 2026
AI Max for Search ouvre en pilote

La seule horloge dure : SOAP part à la retraite

C’est la seule obligation datée de l’année Microsoft, alors elle passe en premier.

Ce qui a changé. Le 1er avril 2026, Microsoft a annoncé un calendrier ferme pour faire passer l’Advertising API de SOAP à REST. Deux dates comptent :

  • Le 1er octobre 2026, les nouvelles fonctionnalités n’arrivent plus que dans l’API REST. SOAP ne reçoit plus rien de nouveau.
  • Le 31 janvier 2027, SOAP est coupé définitivement. Les intégrations SOAP existantes tournent jusque-là, et pas un jour de plus.

Les analyses de PPC.land et d’ALM Corp confirment toutes deux les mêmes dates.

Pourquoi ça compte pour ton compte. Si une tâche de reporting, un script d’enchères ou un connecteur touche Bing via le SDK SOAP, il a une date de péremption. Et le passage n’a rien de cosmétique. Le reporting fonctionne différemment en REST, le flux d’authentification diffère et la gestion des erreurs change. Un pipeline que tu oublies cessera tout simplement de renvoyer des données le 31 janvier 2027, sans autre avertissement qu’un billet de blog vieux de dix mois.

Ce qu’il faut faire. Si ton outillage Bing est mince ou inexistant, ne t’embête pas à porter le vieux code SOAP. Construis en REST d’abord et saute une génération. REST, c’est du HTTP et du JSON tout simples. Un rapport passe d’une enveloppe SOAP à un POST JSON sur l’endpoint de Reporting, avec un jeton bearer OAuth et ton developer token dans les en-têtes :

# OLD: SOAP envelope to ReportingService.svc (off on 2027-01-31)
#   <s:Envelope><s:Body><SubmitGenerateReport>...</SubmitGenerateReport></s:Body></s:Envelope>

# NEW: REST. Submit a report request as JSON.
curl -X POST \
  "https://reporting.api.bingads.microsoft.com/Reporting/v13/GenerateReport/Submit" \
  -H "Authorization: Bearer $OAUTH_TOKEN" \
  -H "DeveloperToken: $DEV_TOKEN" \
  -H "CustomerAccountId: $ACCOUNT_ID" -H "CustomerId: $CUSTOMER_ID" \
  -H "Content-Type: application/json" \
  -d '{ "ReportRequest": { "Type": "CampaignPerformanceReportRequest",
        "Aggregation": "Daily", "Columns": ["TimePeriod","CampaignName","Clicks","Spend"] } }'

(L’hôte REST, le modèle d’en-têtes OAuth + DeveloperToken et le chemin v13 viennent de la doc Microsoft. Confirme le corps de requête exact de ton rapport dans les notes de version avant de livrer.)

Le bon côté de la contrainte. REST t’offre un support de langages plus large et une intégration nette dans les stacks modernes (Python httpx, n8n, fonctions serverless), plus un débogage bien plus simple qu’une enveloppe SOAP. La migration est l’occasion de reconstruire ton outillage Bing en cloud-native au lieu de traîner l’ancien design.

Des composants génératifs, écrits par l’API

La deadline étant calée, le reste de l’année est de la parité. Google t’a déjà appris à en utiliser chaque pièce.

Ce qui a changé. Février 2025 (SDK 13.0.24) a livré les endpoints de recommandation. CreateResponsiveSearchAdRecommendation, CreateAssetGroupRecommendation et CreateResponsiveAdRecommendation, chacun avec son homologue Refine…. Juillet 2025 (13.0.25) a ajouté une variante basée sur des jobs et des recommandations de brand kit, et février 2026 a ajouté AutoGeneratedAssetsEnabled aux paramètres des RSA. Le tout vient des notes de version.

Pourquoi ça compte pour ton compte. La génération et l’itération de textes d’annonce sont désormais scriptables au lieu d’une corvée réservée à l’interface. C’est la différence entre rédiger à la main les textes de dix groupes de composants et les générer pour des centaines.

Ce qu’il faut faire. Branche les endpoints de recommandation sur le workflow créatif que tu fais déjà tourner pour Google. Générer, affiner contre le brand kit, pousser :

feed/product → CreateResponsiveSearchAdRecommendation
            → RefineResponsiveSearchAdRecommendation (brand-kit term exclusions)
            → push to ad group  (no manual copy-paste from the UI)

Bing devient un canal de sortie de plus de ton pipeline de textes d’annonce existant, au lieu d’un pipeline séparé bâti à la main.

AI Max for Search, avec un interrupteur API

Ce qui a changé. AI Max for Search a ouvert en pilote en mai 2026, avec le point d’ancrage API AISearchSetting dans Campaign Management. Il apporte une correspondance de requêtes élargie, la personnalisation des composants et un routage d’URL intelligent, la même tendance post-mots clés que l’AI Max de Google, et il expose les garde-fous via l’API. Inclusions et exclusions de marque, exclusions de termes, restrictions de messages. Search Engine Land a couvert le lancement aux côtés du virage plus large de Microsoft vers l’agentic web.

Pourquoi ça compte pour ton compte. Si tu fais déjà tourner une migration DSA vers AI Max sur Google, le playbook se transfère sur Microsoft presque à l’identique. Le compromis aussi. Tu gagnes de la portée et tu cèdes la correspondance et le choix d’URL, ce qui fait des garde-fous la partie que tu ne sautes pas.

Ce qu’il faut faire. Active AISearchSetting sur la campagne et déploie tes garde-fous de brand kit par programmation sur tous les comptes, comme tu le fais sur Google :

{
  "AISearchSetting": { "Enabled": true },
  "BrandKit": {
    "TermExclusions": ["competitor-name", "off-brand-claim"],
    "MessagingRestrictions": ["no superlatives without proof"]
  }
}

(AISearchSetting et les exclusions de brand kit sont de vrais ajouts à Campaign Management de mars et mai 2026. L’imbrication exacte de l’objet est illustrative. AI Max est encore un pilote, alors confirme le schéma et le statut GA dans les notes de version juste avant de développer dessus.)

Vérifie les dates d’AI Max avant de t’engager. C’est un pilote ouvert, et les calendriers de pilote bougent vite. Vérifie le statut actuel dans les notes de version le jour où tu développes, pas le jour où tu lis ceci.

Porter ta config Google vient de devenir bon marché

Le thème le plus net de l’année, c’est la convergence. Microsoft a rendu bon marché le fait d’amener ta config Google.

Connexion Google (déc. 2025, 13.0.26)

GoogleOAuthDesktopMobileAuthCodeGrant / GoogleOAuthWebAuthCodeGrant te permettent d’authentifier l’API Bing Ads avec la même identité Google que celle que tu utilises pour Google Ads. Un correctif de mars 2026 a préservé le refresh token Google.

Import Google enrichi (mars 2026, 13.0.27)

Nouvelles options d’import : NewPortfolioBidStrategy, NewAIMaxSettings, ciblages par thèmes. L’Import Center de mai 2026 ajoute un diagnostic d’erreurs pas à pas et le filtrage des imports.

Parité Performance Max

PMax via l’API est en bêta ouverte mondiale, avec AutoGeneratedImageOptOut / AutoGeneratedTextOptOut, PageFeedIds et les exclusions d’âge et de sexe au niveau campagne.

New Customer Acquisition (févr. 2025)

Les objectifs NCA sont entièrement scriptables, et 2026 a ajouté l’import des objectifs NCA directement depuis Google PMax.

Pourquoi ça compte pour ton compte. Ce que tu construis sur Google se porte désormais sur Bing à presque un pour un. Avec la connexion Google, tu n’entretiens même pas un second modèle mental OAuth, parce que la même identité Google authentifie les deux :

# Authenticate the MICROSOFT API with your existing Google identity (Dec 2025+).
# GoogleOAuthWebAuthCodeGrant is a Bing Ads SDK auth class, not a raw grant_type.
from bingads.authorization import GoogleOAuthWebAuthCodeGrant

authentication = GoogleOAuthWebAuthCodeGrant(
    client_id=CLIENT_ID, client_secret=CLIENT_SECRET, redirect_url=REDIRECT_URI,
)
# one OAuth flow across Google Ads + Microsoft Advertising;
# a March 2026 fix preserves the Google refresh token between runs.

Ce qu’il faut faire. Choisis la seule tâche Google au meilleur rendement (les objectifs NCA et les composants génératifs sont les premiers choix habituels) et porte-la sur Bing en pilote. Le travail d’authentification et d’import est déjà fait pour toi, donc le portage consiste surtout à relire ton propre code Google. (Les classes de grant Google-OAuth sont de vrais ajouts au SDK de décembre 2025. Confirme le constructeur exact et le flux d’authentification dans les notes de version, parce que c’est un helper du SDK et non une valeur de grant d’endpoint de token.)

La mesure a mûri

Trois mises à niveau rendent enfin les données Bing faciles à brancher dans ton propre BI et ton CRM :

Les mises à niveau de mesure qui valent le branchement

  • MSClickIdPerformanceReport (mai 2026) Joins MSCLKID aux commandes CRM pour le vrai ROAS
  • BidStrategyReport (déc. 2025) La performance des stratégies d'enchères sans scraper l'interface
  • Attribution DataDriven via l'API Définis le modèle dans le code, pas à la main dans l'interface
  • Conversions hors ligne par ID d'objectif (mars 2026) Des pipelines server-side plus propres, plus ConversionDelay

Pourquoi ça compte pour ton compte. MSClickIdPerformanceReport est celui à attraper en premier. On fait tourner pour nos clients un reporting business au niveau client dans BigQuery, et la jointure qui y a le plus de valeur relie l’ID de clic à la commande CRM, parce qu’une jointure CRM remplace le ROAS remonté par la plateforme par le vrai chiffre. Sur Google, cette jointure tourne sur le GCLID. Ce rapport donne à Bing la même couture. Et le rapport lui-même n’est qu’un envoi REST de plus sur l’endpoint de Reporting v13, donc il s’insère directement dans la migration de la première section.

Le Shopping, pendant ce temps, s’est discrètement consolidé. L’ancienne Content API v9.1 est de fait gelée (dernier changement en 2024). Le Microsoft Shopping moderne passe par Microsoft Merchant Center plus Bing Ads v13, c’est-à-dire les groupes de composants PMax, les chemins de listing group et le FeedItemPerformanceReport.

À l’horizon : des annonces à l’intérieur du chatbot

Le fil le plus tourné vers l’avenir est le pari de Microsoft sur le commerce agentique. Lors d’Activate 2026, il a déployé Copilot Checkout, l’achat directement dans le chat, aux côtés des Brand Agents pour Shopify et d’emplacements publicitaires sous les réponses conversationnelles de Copilot, avec Performance Max qui remonte sous ces résultats. Le commentaire marketing présente ça comme Microsoft passant en AI-first, une vraie nouvelle surface d’achat plutôt qu’un énième emplacement publicitaire.

Pour l’instant, c’est davantage à surveiller qu’à automatiser aujourd’hui, mais ça a un prérequis concret, et je le prends au sérieux. On a passé deux ans à construire Boostera, notre outil qui enrichit les flux Google Merchant Center avec l’IA, précisément parce que la qualité du flux est le plafond de toute surface shopping automatisée. La même règle vaut ici. Un produit n’apparaît proprement dans une réponse IA que si ses données de flux et ses messages sont en ordre, donc le travail ingrat sur le flux est ce qui positionne une boutique pour le canal conversationnel.

Côté créatif, l’année a aussi livré les composants HTML5 via l’API (AddHTML5s, mars 2026) et la Video Animation (image fixe vers composant vidéo, novembre 2025). Des moyens bon marché d’alimenter des formats plus riches sans équipe de production.

L’année sur une seule frise

Chaque entrée v13 ci-dessous vient des notes de version de l’API Bing Ads (dernière mise à jour le 5 juin 2026), les annonces de plateforme du blog Microsoft Advertising. Les seules deadlines dures sont les deux dates SOAP, signalées HARD. La ligne sur les publicités politiques de l’UE est une obligation de conformité, et tout le reste est un bonus optionnel. La colonne de droite te dit lequel est lequel.

DateSDK / événementCe qui est arrivéHorloge ?
2025-02 v13.0.24API de recommandation par IA générative ; objectif New Customer Acquisition via l'APIbonus
2025-07 v13.0.25Recommandations basées sur des jobs ; brand kit ; nouveaux rapports de performancebonus
2025-09 v13.0.25.3Publicités politiques UE ; IsPolitical obligatoire avant création/importconformité
2025-11 PlateformeVideo Animation (image fixe vers composant vidéo)bonus
2025-12 v13.0.26Connexion Google ; TopicCriterion ; attribution data-driven ; BidStrategyReportbonus
2026-03 v13.0.27Composants HTML5 ; segments LinkedIn ; CustomSegment ; AISearchSetting ; import Google enrichibonus
2026-04 PlateformeTransition SOAP vers REST annoncée ; AI Max + agentic web à Activate 2026annonce
2026-05 v13.0.28MSClickIdPerformanceReport ; API de facturation ; exclusions d'âge/sexe PMax ; Import Centerbonus
2026-10-01 REST onlyLes nouveautés arrivent en REST uniquement ; SOAP ne reçoit plus rienHARD
2027-01-31 SOAP OFFSOAP coupé définitivement ; migre avant cette dateHARD

Par où je commencerais ce soir

Pas par la migration entière. Par un grep. Cherche ReportingService.svc et les imports du SDK SOAP dans ta base de code, et note chaque tâche qui ressort. Cette liste, c’est ton exposition au 31 janvier 2027, et elle t’a pris dix minutes.

Puis choisis une automatisation Google dont tu es fier et demande-toi ce qu’elle rapporterait sur une plateforme où tes concurrents ne se sont pas encore montrés. Le travail de parité est fait. La fenêtre est ouverte. Quelle tâche vas-tu porter en premier ?

Take it with you

Télécharge le plan complet du trimestre pour ton IA

Tout ce qui précède, réécrit en brief pas à pas à coller directement dans Claude ou n'importe quel agent de code capable. Il audite ta codebase à la recherche de SOAP, reconstruit ton reporting en REST, porte ton premier job Google vers Bing et branche MSCLKID sur ton CRM. Laisse ton e-mail et le fichier est à toi.

One file, one list. I only write when there's something worth reading.

FAQ

Quand mon intégration SOAP cesse-t-elle réellement de fonctionner ?

SOAP continue de tourner jusqu’au 31 janvier 2027, date à laquelle il est coupé définitivement. À partir du 1er octobre 2026, plus aucune nouveauté n’arrive sur SOAP. Toute nouvelle capacité que tu veux est donc en REST uniquement après cette date.

REST est-il un remplacement direct du SDK SOAP ?

Non. Le reporting, le flux d’authentification et la gestion des erreurs diffèrent tous. Un rapport passe d’une enveloppe SOAP à un POST JSON avec un jeton bearer OAuth et ton developer token dans les en-têtes. Traite-le comme une reconstruction sur du HTTP et du JSON bruts, pas comme un changement de config.

Que m'apporte concrètement la connexion Google dans l'API Bing Ads ?

Tu authentifies l’API Microsoft avec la même identité Google que celle que tu utilises pour Google Ads (GoogleOAuth…AuthCodeGrant, décembre 2025). Un outil multi-plateforme partage alors un seul modèle mental OAuth et moins de code de gestion d’identifiants. Un correctif de mars 2026 a préservé le refresh token Google.

L'AI Max de Microsoft est-il disponible pour tous ?

À l’heure où j’écris, c’est un pilote ouvert (depuis mai 2026), avec le point d’ancrage API AISearchSetting. Les calendriers de pilote bougent vite, alors consulte les notes de version et confirme le schéma avant de développer dessus.

Quelle mise à niveau a le retour le plus rapide ?

MSClickIdPerformanceReport (mai 2026). Rattache MSCLKID à tes commandes CRM et tu obtiens le vrai ROAS au lieu des chiffres remontés par la plateforme. C’est la même jointure que tu exécutes déjà sur le GCLID de Google, donc le schéma est familier et la valeur immédiate.

Pourquoi se donner la peine d'automatiser Bing ?

Parce que l’API vient d’atteindre la parité fonctionnelle avec Google, de PMax et AI Max à NCA, aux composants génératifs, à la connexion et à l’import Google, alors que presque personne ne l’automatise. La fenêtre est ouverte précisément parce que tes concurrents n’y sont pas encore.

Tout l'intérêt de la démarche

Vous voulez ce niveau de visibilité dans votre compte ?

Un e-mail. Je vous dis honnêtement si ça vaut le coup pour votre configuration.

Contact →