Créez des rapports Power BI avec les données NowMetrix
Importez les indicateurs NowMetrix avec Power Query, créez un premier rapport dans Power BI Desktop, puis publiez le jeu de données pour le partager de manière contrôlée et planifier ses actualisations.
Fonctionnement de la connexion
La connexion comporte deux étapes facultatives :
NowMetrix REST API → Power Query → Power BI Desktop → optional Power BI Service
- Power BI Desktop crée la requête, le modèle de données et le rapport.
- Power BI Service publie le rapport pour permettre son accès dans un navigateur, son partage et son actualisation planifiée.
L’exemple prêt à l’emploi importe les 30 dernières lignes quotidiennes disponibles depuis /v1/overview.
Chaque ligne contient la date, le tracker, le fuseau horaire du tracker, les pages vues et les visites.
Avant de commencer
Les éléments suivants sont nécessaires :
- un compte NowMetrix avec accès à l’API REST ;
- un accès au tracker sur lequel porte le rapport ;
- Microsoft Power BI Desktop pour créer le rapport ;
- un compte et un espace de travail Power BI adaptés si vous souhaitez publier le rapport ou planifier des actualisations.
Les licences Power BI, les autorisations des espaces de travail et les fréquences d’actualisation disponibles sont gérées par Microsoft et l’administrateur de votre organisation. Vous pouvez terminer la configuration dans Desktop sans publier le rapport.
1. Créer une clé API dédiée
- Connectez-vous à NowMetrix.
- Ouvrez Paramètres → API.
- Créez une clé et nommez-la Microsoft Power BI.
- Copiez immédiatement la clé complète. Elle n’est affichée qu’une seule fois.
- Notez l’ID du tracker du site à importer.
| Paramètre fictif | À remplacer par | Exemple |
|---|---|---|
nm_YOUR_KEY |
Votre clé API NowMetrix complète | nm_… |
TRACKER_ID |
L’ID du tracker à importer | news-example-com |
2. Créer une requête vide dans Power BI Desktop
- Ouvrez Power BI Desktop et créez un rapport vide.
- Sélectionnez Accueil → Obtenir les données → Requête vide. Si cette option n’est pas proposée, sélectionnez Obtenir les données → Plus, puis recherchez Requête vide.
- L’éditeur Power Query s’ouvre avec une nouvelle requête.
- Sélectionnez Accueil → Éditeur avancé.
Pour cet exemple, ne choisissez pas la boîte de dialogue Web standard. L’éditeur avancé est utilisé parce que NowMetrix requiert un en-tête d’autorisation Bearer et que la réponse doit être convertie de JSON en lignes de tableau.
3. Coller la requête Power Query préparée
- Supprimez le contenu existant dans l’éditeur avancé.
- Collez la requête complète ci-dessous.
- Remplacez
nm_YOUR_KEYetTRACKER_IDdans les deux premières lignes. - Conservez les deux valeurs entre guillemets.
- Sélectionnez Terminer.
let
ApiKey = "nm_YOUR_KEY",
TrackerId = "TRACKER_ID",
Response = Json.Document(
Web.Contents(
"https://api.nowmetrix.com",
[
RelativePath = "v1/overview",
Query = [
site = TrackerId,
days = "30"
],
Headers = [
Authorization = "Bearer " & ApiKey,
Accept = "application/json"
],
Timeout = #duration(0, 0, 0, 30)
]
)
),
DailyRows = if List.IsEmpty(Response[daily]) then
#table(type table [date = text, pageviews = Int64.Type, visits = Int64.Type], {})
else
Table.FromRecords(Response[daily]),
AddTracker = Table.AddColumn(
DailyRows,
"tracker",
each Response[site],
type text
),
AddTimezone = Table.AddColumn(
AddTracker,
"timezone",
each Response[timezone],
type text
),
ReorderedColumns = Table.ReorderColumns(
AddTimezone,
{"date", "tracker", "timezone", "pageviews", "visits"}
),
TypedColumns = Table.TransformColumnTypes(
ReorderedColumns,
{
{"date", type date},
{"tracker", type text},
{"timezone", type text},
{"pageviews", Int64.Type},
{"visits", Int64.Type}
}
)
in
TypedColumns
La requête utilise une URL de base fixe avec RelativePath et Query.
Cela rend la source prévisible lors des actualisations ultérieures et n’envoie la clé API que dans
l’en-tête HTTPS Authorization.
4. Confirmer les identifiants de la source de données
Power BI peut vous demander comment établir la connexion à https://api.nowmetrix.com.
- Choisissez Anonyme.
- Appliquez ce paramètre à
https://api.nowmetrix.com. - Sélectionnez Se connecter.
- Si un niveau de confidentialité vous est demandé, sélectionnez celui requis par votre organisation. Privé offre la séparation la plus stricte avec les autres sources de données.
5. Charger et vérifier le modèle sémantique
- Attendez que l’aperçu de la requête affiche
date,tracker,timezone,pageviewsetvisits. - Renommez la requête NowMetrix Daily.
- Sélectionnez Accueil → Fermer et appliquer.
- Ouvrez la vue Données et vérifiez que les lignes et les types de colonnes sont corrects.
| Colonne | Type Power BI recommandé |
|---|---|
date | Date |
tracker | Texte |
timezone | Texte |
pageviews | Nombre entier |
visits | Nombre entier |
6. Créer un premier rapport
Un rapport simple permet de vérifier que les champs importés fonctionnent correctement :
- Revenez à la vue Rapport.
- Ajoutez un Graphique en courbes.
- Placez
datesur l’axe X. - Placez
pageviewsetvisitssur l’axe Y. - Ajoutez deux visuels Carte pour les sommes de
pageviewsetvisits. - Ajoutez éventuellement
trackercomme segment lorsque le modèle contiendra plusieurs trackers.
Sélectionnez Accueil → Actualiser pour tester l’actualisation complète dans Desktop. Les visuels existants sont mis à jour lorsque la requête est terminée.
7. Publier dans Power BI Service
- Enregistrez le fichier PBIX dans un emplacement protégé.
- Dans Power BI Desktop, sélectionnez Accueil → Publier.
- Connectez-vous avec le compte Power BI de votre organisation.
- Sélectionnez l’espace de travail souhaité.
- Ouvrez le rapport publié depuis la boîte de dialogue de confirmation.
La publication crée un rapport et un modèle sémantique associé. L’actualisation planifiée se configure sur le modèle sémantique, et non sur un graphique ou une page de rapport individuel.
8. Configurer l’actualisation planifiée
- Ouvrez l’espace de travail dans Power BI Service.
- Recherchez le modèle sémantique créé par le fichier PBIX publié.
- Ouvrez Paramètres ou sélectionnez Actualiser → Planifier l’actualisation.
- Dans Identifiants de la source de données, modifiez les identifiants de
https://api.nowmetrix.com. - Sélectionnez Anonyme comme méthode d’authentification et choisissez le niveau de confidentialité requis par votre organisation.
- Activez la planification des actualisations et sélectionnez une fréquence ainsi qu’un fuseau horaire adaptés.
- Activez les notifications d’échec pour le propriétaire du modèle sémantique ou une autre personne responsable.
- Enregistrez les paramètres, sélectionnez Actualiser maintenant, puis consultez Historique des actualisations.
api.nowmetrix.com. La requête utilise
volontairement RelativePath et Query, qui font partie des exceptions prises
en charge pour les requêtes web actualisables avec des paramètres variables.
Les fréquences d’actualisation disponibles dépendent de la licence Power BI et de la capacité de l’espace de travail. Microsoft décrit les commandes, limites, comportements en cas d’échec et historiques d’actualisation actuels dans son guide de l’actualisation planifiée.
Facultatif : rendre la clé et le tracker configurables
Les paramètres Power Query facilitent le changement de tracker ou la rotation de la clé sans modifier toute la requête. Ils améliorent la maintenabilité, mais ne constituent pas un coffre-fort pour les secrets.
- Dans l’éditeur Power Query, sélectionnez Accueil → Gérer les paramètres → Nouveau paramètre.
- Créez un paramètre Texte obligatoire nommé
pNowMetrixApiKeyet saisissez la clé API comme valeur actuelle. - Créez un autre paramètre Texte obligatoire nommé
pNowMetrixTrackerIdet saisissez l’ID du tracker. - Remplacez les deux premières lignes de la requête par les lignes ci-dessous.
ApiKey = pNowMetrixApiKey,
TrackerId = pNowMetrixTrackerId,
Après la publication, les paramètres modifiables peuvent apparaître dans les paramètres du modèle sémantique. L’accès à l’espace de travail doit néanmoins rester limité, car les utilisateurs disposant d’autorisations suffisantes peuvent les consulter ou les modifier.
Ajouter d’autres jeux de données NowMetrix
Créez une requête Power Query distincte pour chaque jeu de données et utilisez des relations dans le modèle lorsque cela est pertinent :
| Cas d’utilisation | Endpoint | Remarque sur la modélisation |
|---|---|---|
| Pages vues et visites quotidiennes | /v1/overview |
Une ligne par tracker et par date |
| Pages principales sur une période terminée | /v1/recap |
Enregistrez la période demandée avec chaque résultat importé |
| Articles actuellement en direct | /v1/realtime |
Une actualisation remplace l’instantané, sauf si vous créez un stockage d’historique distinct |
| Sources actuelles | /v1/sources |
Utilisez l’horodatage de la réponse pour combiner les instantanés |
| Problèmes de correction | /v1/proofreading |
Limitez l’accès au rapport à l’équipe éditoriale concernée |
RelativePath ne transformera pas correctement la nouvelle réponse. Adaptez les étapes
qui suivent Response en vous appuyant sur l’exemple de réponse documenté pour l’endpoint.
Liste de contrôle de la sécurité et du partage
- Utilisez une clé API NowMetrix dédiée pour chaque modèle sémantique Power BI.
- Accordez à l’utilisateur NowMetrix uniquement l’accès au tracker requis par le rapport.
- Conservez le fichier PBIX dans un emplacement protégé et ne le publiez jamais en téléchargement public.
- Considérez les éditeurs PBIX et les propriétaires de modèles sémantiques comme des utilisateurs de confiance susceptibles d’inspecter la requête.
- Ne placez pas la clé dans des visuels, des filtres de rapport, des URL, des captures d’écran ou la documentation.
- Limitez l’audience de l’espace de travail Power BI au strict nécessaire pour répondre au besoin de reporting.
- Vérifiez les autorisations de rapport, d’espace de travail, d’application, de création, de repartage et de téléchargement avant la diffusion.
- Révoquez immédiatement la clé si le fichier PBIX, l’espace de travail ou le compte du propriétaire est susceptible d’avoir été compromis.
- Lors d’un changement de propriétaire, vérifiez que les identifiants d’actualisation et les notifications d’échec fonctionnent toujours.
Résolution des problèmes
| Problème | Points à vérifier |
|---|---|
| Power BI demande sans cesse les identifiants | Dans Fichier → Options et paramètres → Paramètres des sources de données, effacez les autorisations pour https://api.nowmetrix.com, reconnectez-vous et choisissez Anonyme. |
401 ou « l’accès à la ressource est interdit » |
Vérifiez que la clé complète a bien remplacé nm_YOUR_KEY, qu’elle ne contient aucun espace et qu’elle n’a pas été révoquée. |
403 |
La clé ne peut pas accéder au tracker configuré. Vérifiez TRACKER_ID et les autorisations de l’utilisateur NowMetrix sur le tracker. |
429 |
La limite d’API du tracker a été dépassée. Attendez, puis réduisez la fréquence des actualisations planifiées ou manuelles. |
503 |
Le service d’analyse est temporairement indisponible. Conservez le modèle sémantique existant et réessayez plus tard. |
| L’actualisation fonctionne dans Desktop, mais échoue dans Service | Vérifiez les identifiants de la source de données, le propriétaire, le niveau de confidentialité, l’historique des actualisations et le fait que votre administrateur n’empêche pas l’accès aux sources web cloud ou aux requêtes rédigées manuellement. |
| Power BI signale une source de données dynamique | Vérifiez que la requête utilise toujours l’URL de base fixe https://api.nowmetrix.com avec RelativePath et Query. Ne construisez pas l’URL complète par concaténation de texte. |
| L’actualisation planifiée est désactivée | Ouvrez l’historique des actualisations, corrigez le dernier échec, vérifiez les identifiants et réactivez la planification. Power BI peut suspendre les planifications après des échecs répétés ou une période d’inactivité. |
| La configuration d’une passerelle apparaît de manière inattendue | Vérifiez que Power BI classe la source comme une source Web cloud accessible. Demandez à l’administrateur de l’espace de travail de vérifier les paramètres de passerelle et de connexion cloud. |