Exportation · Microsoft Power BI

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.

Power BI importe un instantané lors de l’actualisation du modèle sémantique. Il ne maintient pas de connexion en direct permanente à NowMetrix et n’envoie pas les valeurs NowMetrix à Google Analytics.

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.
Power BI Desktop est une application Windows. Si vous utilisez macOS, créez le rapport dans une machine virtuelle Windows gérée, via un environnement Windows distant ou avec l’aide d’un collègue disposant de Power BI Desktop. Les rapports publiés peuvent ensuite être consultés dans un navigateur web.

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

  1. Connectez-vous à NowMetrix.
  2. Ouvrez Paramètres → API.
  3. Créez une clé et nommez-la Microsoft Power BI.
  4. Copiez immédiatement la clé complète. Elle n’est affichée qu’une seule fois.
  5. 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
Utilisez une clé distincte pour ce rapport. Si le fichier PBIX ou l’espace de travail Power BI est exposé, vous pourrez révoquer cette clé sans interrompre Excel, Google Sheets ou une autre intégration.

2. Créer une requête vide dans Power BI Desktop

  1. Ouvrez Power BI Desktop et créez un rapport vide.
  2. 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.
  3. L’éditeur Power Query s’ouvre avec une nouvelle requête.
  4. 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

  1. Supprimez le contenu existant dans l’éditeur avancé.
  2. Collez la requête complète ci-dessous.
  3. Remplacez nm_YOUR_KEY et TRACKER_ID dans les deux premières lignes.
  4. Conservez les deux valeurs entre guillemets.
  5. 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.

  1. Choisissez Anonyme.
  2. Appliquez ce paramètre à https://api.nowmetrix.com.
  3. Sélectionnez Se connecter.
  4. 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.
La connexion n’est pas anonyme pour NowMetrix. L’option Anonyme indique à Power BI de ne pas ajouter de méthode d’identification Microsoft. La requête s’authentifie déjà avec la clé API NowMetrix dans son en-tête Bearer.

5. Charger et vérifier le modèle sémantique

  1. Attendez que l’aperçu de la requête affiche date, tracker, timezone, pageviews et visits.
  2. Renommez la requête NowMetrix Daily.
  3. Sélectionnez Accueil → Fermer et appliquer.
  4. Ouvrez la vue Données et vérifiez que les lignes et les types de colonnes sont corrects.
Colonne Type Power BI recommandé
dateDate
trackerTexte
timezoneTexte
pageviewsNombre entier
visitsNombre entier

6. Créer un premier rapport

Un rapport simple permet de vérifier que les champs importés fonctionnent correctement :

  1. Revenez à la vue Rapport.
  2. Ajoutez un Graphique en courbes.
  3. Placez date sur l’axe X.
  4. Placez pageviews et visits sur l’axe Y.
  5. Ajoutez deux visuels Carte pour les sommes de pageviews et visits.
  6. Ajoutez éventuellement tracker comme 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

  1. Enregistrez le fichier PBIX dans un emplacement protégé.
  2. Dans Power BI Desktop, sélectionnez Accueil → Publier.
  3. Connectez-vous avec le compte Power BI de votre organisation.
  4. Sélectionnez l’espace de travail souhaité.
  5. Ouvrez le rapport publié depuis la boîte de dialogue de confirmation.
Ne publiez pas le rapport via un lien web public. La publication place la requête et les données importées dans l’environnement Power BI de votre organisation. Les membres de l’espace de travail et les propriétaires du modèle sémantique doivent être dignes de confiance pour gérer ces données et l’accès à l’API.

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

  1. Ouvrez l’espace de travail dans Power BI Service.
  2. Recherchez le modèle sémantique créé par le fichier PBIX publié.
  3. Ouvrez Paramètres ou sélectionnez Actualiser → Planifier l’actualisation.
  4. Dans Identifiants de la source de données, modifiez les identifiants de https://api.nowmetrix.com.
  5. Sélectionnez Anonyme comme méthode d’authentification et choisissez le niveau de confidentialité requis par votre organisation.
  6. Activez la planification des actualisations et sélectionnez une fréquence ainsi qu’un fuseau horaire adaptés.
  7. Activez les notifications d’échec pour le propriétaire du modèle sémantique ou une autre personne responsable.
  8. Enregistrez les paramètres, sélectionnez Actualiser maintenant, puis consultez Historique des actualisations.
NowMetrix est une source cloud HTTPS publique. Une passerelle de données locale n’est généralement pas nécessaire lorsque Power BI Service peut accéder à 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.
Si Power BI teste uniquement l’URL de base de l’API et propose Ignorer le test de connexion, activez cette option. L’URL de base seule ne constitue pas une requête API NowMetrix complète. Si votre organisation désactive les requêtes web rédigées manuellement ou les sources cloud externes, demandez à l’administrateur Power BI de vérifier les paramètres du modèle sémantique.

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.

  1. Dans l’éditeur Power Query, sélectionnez Accueil → Gérer les paramètres → Nouveau paramètre.
  2. Créez un paramètre Texte obligatoire nommé pNowMetrixApiKey et saisissez la clé API comme valeur actuelle.
  3. Créez un autre paramètre Texte obligatoire nommé pNowMetrixTrackerId et saisissez l’ID du tracker.
  4. 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
Chaque endpoint renvoie une structure JSON différente. Copier l’exemple et modifier uniquement 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.
Les paramètres Power Query sont des valeurs de configuration, pas des secrets. Que la clé soit écrite directement dans la requête ou fournie par un paramètre, l’accès au fichier PBIX et au modèle sémantique doit rester limité.

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.