Le message center MC1459136 a discrètement annoncé la migration des endpoints du reporting Microsoft 365 vers un nouveau domaine de premier niveau. Derrière ce changement d'infrastructure se cache une opportunité concrète : le datamart expose désormais 229 datasets, dont une majorité dédiée à Copilot, aux Agents et à Teams Queues. Cet article s'adresse aux administrateurs et développeurs qui interrogent ces endpoints de façon programmatique.
Ce qui change : du domaine reports.office.com vers core.microsoft
Les rapports affichés dans le Microsoft 365 Admin Center ne bougent pas visuellement. Ce qui change, c'est l'endpoint backend que les requêtes atteignent in fine. Microsoft passe du domaine reports.office.com au domaine .core.microsoft, conformément à la stratégie de consolidation sous le TLD .microsoft.
Différence notable par rapport aux autres interfaces d'administration : là où le portail et les clients basculent vers cloud.microsoft, les endpoints de reporting atterrissent sur core.microsoft.
Pas de date de coupure annoncée
Microsoft n'a pas communiqué de date de dépréciation. Les anciens endpoints continueront de fonctionner et seront redirigés vers les nouveaux avant toute coupure. Une date ne sera annoncée qu'après cette redirection.
Voici le tableau de correspondance par environnement cloud :
| Environnement | Domaine actuel | Nouveau domaine |
|---|---|---|
| Commercial (Worldwide) | reports.office.com | usage-reports.core.microsoft |
| GCC Moderate | reports.office.com (partagé avec commercial) | gcc.usage-reports.core.microsoft |
| GCC High | reports.office365.us | usage-reports.usgovcloud-core.microsoft |
| DoD | reports.apps.mil | dod.usage-reports.usgovcloud-core.microsoft |
Impact sur les appels Microsoft Graph API : aucun
Les endpoints Microsoft Graph de reporting (/reports sous graph.microsoft.com) ne sont pas affectés. Ces appels transitent par une couche proxy côté service Microsoft : la frontière réseau n'est franchie qu'après récupération des données. Un script ou une application qui consomme les endpoints Graph n'a donc rien à modifier.
L'impact concerne exclusivement les intégrations qui appellent directement reports.office.com — notamment via des requêtes personnalisées vers des datasets non exposés par Graph.

Authentification : la ressource ne change pas encore
Premier piège à éviter : la valeur de ressource OAuth utilisée pour obtenir un token reste https://reports.office.com/.default. Tenter de la remplacer par https://usage-reports.core.microsoft provoque immédiatement une erreur AADSTS500011 :
1AADSTS500011: The resource principal named https://usage-reports.core.microsoft was not found in the tenant named xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.Microsoft n'a pas précisé si et quand cette valeur sera mise à jour. En attendant, le bloc d'authentification reste identique. L'exemple ci-dessous utilise l'application intégrée Microsoft PowerQuery For Excel (a672d62c-fc7b-4e81-a576-e60dc46e951d) et la bibliothèque MSAL pour obtenir un token interactif :
1$appId = "a672d62c-fc7b-4e81-a576-e60dc46e951d" #Application intégrée "Microsoft PowerQuery For Excel"2$tenantId = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"3$redirectURI = "https://preview.powerbi.com/views/oauthredirect.html"4 5# Chargement des binaires MSAL6Add-Type -Path "C:\Program Files\WindowsPowerShell\Modules\MSAL\Microsoft.Identity.Client.dll"7 8# Acquisition d'un token pour la ressource https://reports.office.com (valeur inchangée)9$app2 = [Microsoft.Identity.Client.PublicClientApplicationBuilder]::Create("a672d62c-fc7b-4e81-a576-e60dc46e951d").WithRedirectUri($redirectURI).WithTenantId($tenantId).WithBroker().Build()10$Scopes = New-Object System.Collections.Generic.List[string]11$Scope = "https://reports.office.com/.default"12$Scopes.Add($Scope)13$token = $app2.AcquireTokenInteractive($Scopes).ExecuteAsync().Result14 15# Construction du header d'autorisation16$authHeader1 = @{17 'Authorization'="Bearer $($token.AccessToken)"18}
Appels vers les nouveaux endpoints : exemples concrets
Une fois le token obtenu, les nouveaux endpoints peuvent être interrogés directement. Trois exemples représentatifs ci-dessous.
Usage des applications Teams
1# Rapport d'utilisation des applications Teams (endpoint worldwide)2$res = Invoke-RestMethod -Uri "https://usage-reports.core.microsoft/internal/ux/getTeamsAppUsageDetail?pageSize=200&tenantId=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx&Aggregate=M180" -Headers $authHeader13 4$res.value | ft appName, publisher,5 @{n="Dernière activité"; e={$_.lad}},6 @{n="Nb utilisateurs"; e={$_.details.userUsingApp}},7 @{n="Nb équipes"; e={$_.details.teamUsingApp}}Activité Planner par utilisateur
1# Détail d'activité Planner avec agrégation sur 180 jours2$res = Invoke-RestMethod -Uri 'https://usage-reports.core.microsoft/internal/ux/getPlannerActivityUserDetail?tenantId=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx&Aggregate=M180' -Headers $authHeader13 4$res.value | ft userPrincipalName,5 @{n="Dernière activité"; e={$_.userActivityByPeriod.plannerLastActivityDate}},6 @{n="Jours actifs"; e={$_.userActivityByPeriod.plannerActiveUsageDays}}Adoption Outlook pour Windows (classique vs nouveau)
1# Suivi quotidien des utilisateurs Outlook for Windows sur 30 jours2$res = Invoke-RestMethod -Uri 'https://usage-reports.core.microsoft/internal/ux/getOutlookWindowsUserCounts?tenantId=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx&Aggregate=M30' -Headers $authHeader13 4# La réponse distingue outlookWindowsClassic et outlookWindowsNew5$res.value.outlookWindowsUserCountsByDate | ftCe dernier dataset est particulièrement utile pour les organisations qui pilotent la migration vers Nouvel Outlook pour Windows : il permet de suivre la coexistence entre la version classique et la nouvelle au jour le jour.
Point de vigilance : les valeurs d'hôte régionales non encore migrées
Le endpoint /private/intraTenantConfig/host — qui retourne l'hôte régional affecté au tenant — renvoie encore des valeurs sur l'ancien domaine OFFICE.COM, que la requête passe par reports.office.com ou par usage-reports.core.microsoft. Exemple :
1# Les deux requêtes retournent encore https://REPORTSWEU.OFFICE.COM2$res = Invoke-RestMethod -Uri "https://usage-reports.core.microsoft/private/intraTenantConfig/host?tenantid=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -Headers $authHeader13$res.host4# Résultat : https://REPORTSWEU.OFFICE.COMRecommandation pratique
En attendant la migration complète des valeurs régionales, utilisez les endpoints globaux (usage-reports.core.microsoft pour le cloud commercial) plutôt que les hôtes régionaux retournés par l'API de configuration.
229 datasets disponibles : les nouveautés à connaître
Le datamart expose aujourd'hui 229 endpoints, contre 160 lors du dernier recensement publié sur michev.info. Les 69 ajouts couvrent principalement :
- Copilot et Agents :
getCopilotActivityUserDetailV4,getDeclarativeAgentConsumptionSummary,getAgent365OverviewMetricsData,getMessageConsumptionSummary, et leurs variantes détaillées par agent, par utilisateur et par période. - Teams Queues :
getTeamsQueuesAppActiveUserCounts,getTeamsQueuesAppUserDetail. - Planner :
getPlannerActivityUserDetail,getPlannerAdoptionByDate. - Outlook pour Windows :
getOutlookWindowsUserCounts— précédemment accessible uniquement via l'Exchange Admin Center. - Recherche M365 :
getTenantSearchMetric,getUserSearchMetric. - ProPlus V2 :
getProPlusUsagePlatformsUserCountsV2,getProPlusUsageUserDetailV2. - Visio, Viva Goals, Forms Pro : plusieurs datasets nouveaux couvrant l'activité premium et la distribution par plateforme.
Datasets Copilot non exposés par Graph
La majorité des datasets Copilot et Agents listés ci-dessus ne disposent pas encore d'équivalent dans l'API Microsoft Graph. Le datamart reste donc le seul moyen programmatique d'y accéder pour l'heure.
L'exemple ci-dessous interroge les métriques globales d'Agent 365 — un dataset absent de Graph :
1# Vue d'ensemble des agents actifs sur les 30 derniers jours2$res = Invoke-RestMethod -Uri 'https://reportsweu.office.com/internal/ux/getAgent365OverviewMetricsData?pageSize=200&tenantId=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx' -Headers $authHeader13$res.value | select Total*, Top*Points clés à retenir
Voici ce qui compte pour votre planification :
- Aucune action urgente : les anciens endpoints
reports.office.comcontinuent de fonctionner. La redirection précèdera toute dépréciation. - Les appels Graph ne sont pas touchés : seules les intégrations directes sur
reports.office.comsont concernées. - La ressource OAuth reste inchangée : utilisez toujours
https://reports.office.com/.defaultpour l'acquisition de token. - Nouveaux endpoints disponibles dès maintenant :
usage-reports.core.microsoftrépond déjà et peut être testé sans risque. - Les hôtes régionaux ne sont pas encore migrés : privilégiez les endpoints globaux en attendant.
- 69 nouveaux datasets dont les métriques Copilot, Agents et Teams Queues absentes de Microsoft Graph.
Si votre organisation utilise des tableaux de bord Power BI, des scripts PowerShell ou des flux Logic Apps qui appellent directement reports.office.com, commencez à planifier la mise à jour des URL dès maintenant. Référencez le message center MC1459136 pour suivre l'évolution de ce changement.



