Prérequis
- Une clé API AthenaHQ (Organisation → onglet API). Consultez la page Authentification.
- Le
website_iddu site sur lequel vous souhaitez établir des rapports. Récupérez-le avecGET /api/v1/websites. - Power BI Desktop ou un espace de travail Microsoft Fabric avec Dataflow Gen2 activé.
Configuration
1
Créer une clé API
Accédez à la page Clés API dans votre tableau de bord AthenaHQ. Sélectionnez les sites auxquels la clé doit accéder, créez-la et conservez-la en lieu sûr.
Gérer les clés API
Créez et gérez les clés API dans les paramètres de votre organisation
2
Trouver votre website_id
Exécutez la commande suivante dans votre terminal :Copiez l’
id du site web dont vous souhaitez récupérer les données dans Power BI ou Fabric.3
Ajouter la requête dans Power BI Desktop ou Fabric
- Power BI Desktop : Accueil → Obtenir des données → Requête vide → Éditeur avancé.
- Microsoft Fabric : Espace de travail → Nouveau → Dataflow Gen2 → Obtenir des données → Requête vide → Éditeur avancé.
YOUR_API_KEY, YOUR_WEBSITE_ID et la plage de dates. start_date / end_date acceptent des chaînes de date et d’heure ISO-8601 (UTC).GET tels que /api/v1/prompts ou /api/v1/competitors, omettez Content et transmettez plutôt les paramètres dans Query :4
Transformer la réponse en table
Chaque point de terminaison de métriques renvoie La condition
{ "data": [...] }. La réponse de série chronologique de part de voix est un tableau de lignes organisées par date, avec un enregistrement par entreprise. Développez-le ainsi :List.IsEmpty évite les erreurs d’actualisation planifiée lorsque la plage de dates ne renvoie aucune ligne. Adaptez l’étape de développement à la structure de réponse du point de terminaison appelé.5
Configurer les informations d’identification dans Power BI Service ou Fabric
Après publication du jeu de données ou du flux de données, définissez les informations d’identification de la source
https://api.athenahq.ai sur Anonyme. La clé API passe dans l’en-tête de la requête plutôt que dans le magasin d’identifiants de Power BI : le type d’identification intégré API Web de Power BI prend uniquement en charge un en-tête Authorization et ne peut pas stocker un en-tête personnalisé x-api-key.Si votre organisation exige des passerelles de données locales pour le trafic externe, faites passer la connexion par la passerelle configurée.Considérations de sécurité
Pratiques recommandées :- Utilisez une clé API dédiée à cette intégration et limitée aux sites concernés. Créez une clé distincte de vos autres automatisations et limitez-la aux seuls sites nécessaires aux rapports. Consultez le périmètre des clés API. Ne réutilisez pas une clé d’organisation à périmètre étendu.
- Restreignez l’accès à l’espace de travail. Accordez les autorisations de modification, de création et de contribution sur l’espace Power BI, le jeu de données, le flux de données et le
.pbixsource au nombre minimal d’utilisateurs de confiance. Les lecteurs de Power BI Service ne peuvent pas consulter le code M, mais toute personne ayant accès au fichier.pbixpeut l’ouvrir dans Desktop et le lire. - Remplacez la clé en cas d’exposition présumée. Si les membres de l’espace de travail changent, si un
.pbixest partagé à l’extérieur ou si vous suspectez une fuite, remplacez la clé depuis la page Clés API. - Évitez de versionner les fichiers
.pbixcontenant la clé. Retirez la clé (ou utilisez un paramètre remplacé dans le service) avant de les ajouter au contrôle de version.
- Déployez un proxy léger que vous contrôlez. Hébergez un petit point de terminaison (Azure Function, Cloud Function, service interne) qui injecte la clé API AthenaHQ depuis un stockage sécurisé avant de transférer la requête. Le proxy doit imposer sa propre authentification (par exemple un compte Entra ID / Microsoft, un jeton par appelant, mTLS), ou n’être accessible que depuis un réseau interne ou via la passerelle de données locale Power BI. Si le proxy reste anonyme sur Internet, toute personne connaissant son URL peut appeler AthenaHQ en votre nom, exfiltrer vos données et épuiser votre quota. La clé ne figure jamais dans la requête M, mais sa protection dépend des contrôles d’accès placés devant le proxy.
- Créez un connecteur Power BI personnalisé (
.mez). Les connecteurs personnalisés peuvent utiliser le magasin d’identifiants Power BI pour des en-têtes arbitraires et ainsi garder la clé hors du code source des rapports. Cela nécessite de développer le connecteur et de le distribuer par un administrateur.
Points de terminaison
Power Query peut appeler tous les points de terminaison de la référence API. Voici des points de départ courants :
Chaque point de terminaison de métriques possède aussi une variante
/cumulative qui renvoie une seule valeur agrégée pour la plage de dates. Utilisez l’extrait POST pour les métriques et l’extrait GET pour prompts / competitors.
Authentification
Toutes les requêtes utilisent l’en-têtex-api-key. Consultez Authentification pour tous les détails, notamment le périmètre des clés API.
Limites de débit
Les requêtes API sont soumises aux limites indiquées sur la page Limites de débit. Les actualisations planifiées Power BI consomment le même quota ; échelonnez-les si vous connectez de nombreux rapports.Dépannage
401 Unauthorized: la clé API est absente, révoquée ou ne couvre pas lewebsite_iddemandé.- Demandes d’identifiants en boucle dans Power BI Service : vérifiez que les informations d’identification de la source sont définies sur Anonyme pour
https://api.athenahq.ai. Power BI ne peut pas stocker lui-même l’en-têtex-api-key; la clé doit donc figurer dans la requête M. - Avertissement d’URL dynamique de
Web.Contents: conservez l’URL de base en dur et transmettez les parties dynamiques par les optionsRelativePathetQuery. L’extrait ci-dessus suit déjà ce modèle. 405 Method Not Allowed: appeler un point de terminaisonGET(par exemple/api/v1/prompts) avecContentforce une requête POST, qui est refusée. Utilisez la varianteGETde l’extrait.