# Construire un tableau de bord de citations IA avec l’API Search Console

> Plutôt que de scruter la Search Console à la main chaque semaine, voici comment automatiser la remontée des requêtes liées aux moteurs de réponse dans un tableau de bord maison.

- Auteur : Clément Hadrot
- Publié le : 2026-01-12
- Mis à jour le : 2026-01-12
- Catégorie : SEO &amp; GEO
- URL : https://wpmoderne.dev.wordpress-developpement.fr/seo/tableau-bord-citations-ia-search-console-api/

## L’essentiel

- L'API Search Console distingue certains segments de trafic exploitables
- Un script planifié suffit à automatiser la remontée
- Croiser les données avec les logs serveur affine le signal

Depuis qu'une bonne partie de nos clients suivent leur visibilité dans les réponses génératives, la même question revient en réunion mensuelle : « on a un chiffre pour ça, ou on regarde encore à la main ? ». La Search Console ne propose pas de rapport natif intitulé « citations IA », mais elle expose suffisamment de données brutes via son API pour construire un tableau de bord qui approche la question sérieusement. Voici la méthode suivie pour une agence qui gère une douzaine de sites clients.

## Ce que l'API Search Console peut effectivement remonter

L'API Search Console (méthode `searchAnalytics.query`) permet de récupérer les clics, impressions, position moyenne et CTR, filtrés par requête, page, pays et appareil. Elle ne distingue pas nativement un clic venu d'un aperçu d'IA d'un clic venu d'un résultat classique, mais Google a progressivement ajouté des dimensions de type de recherche qui permettent d'isoler certains contextes d'affichage, dont ceux liés aux fonctionnalités génératives lorsqu'elles sont disponibles dans le compte.

## Étape 1 : l'authentification

La première étape consiste à créer un compte de service dans Google Cloud Console, à lui donner accès en lecture à la propriété Search Console concernée, puis à récupérer le fichier de clés JSON qui servira à l'authentification du script.

```
from google.oauth2 import service_account
from googleapiclient.discovery import build

SCOPES = ['https://www.googleapis.com/auth/webmasters.readonly']
credentials = service_account.Credentials.from_service_account_file(
    'cle-service-account.json', scopes=SCOPES
)
service = build('searchconsole', 'v1', credentials=credentials)
```

## Étape 2 : la requête planifiée

Le script tourne chaque nuit via une tâche planifiée, et interroge la propriété pour la veille, en demandant le détail par requête et par page :

```
requete = {
    'startDate': date_hier,
    'endDate': date_hier,
    'dimensions': ['query', 'page', 'searchAppearance'],
    'rowLimit': 5000
}
resultat = service.searchanalytics().query(
    siteUrl='https://exemple-client.fr/', body=requete
).execute()
```

> L'essentiel à retenir : L'API Search Console distingue certains segments de trafic exploitables ; Un script planifié suffit à automatiser la remontée ; Croiser les données avec les logs serveur affine le signal

La dimension `searchAppearance` permet de filtrer les lignes associées à des apparitions enrichies. Ce n'est pas parfait : Google ne détaille pas toujours cette dimension avec la granularité qu'on aimerait pour isoler précisément les AI Overviews, mais couplée à d'autres signaux, elle donne une bonne base de départ.

## Étape 3 : croiser avec les logs serveur

Pour affiner le signal, le script croise ensuite ces données avec les logs serveur bruts, filtrés sur les user-agents connus des robots associés aux moteurs de réponse génératifs. Une requête ayant vu ses impressions Search Console progresser sur une période, en parallèle d'une hausse du nombre de passages de ces robots sur la page correspondante, constitue un signal plus solide qu'une donnée isolée.

```
SELECT page, COUNT(*) AS passages_robots_ia
FROM logs_acces
WHERE user_agent LIKE '%GPTBot%' OR user_agent LIKE '%PerplexityBot%'
GROUP BY page
ORDER BY passages_robots_ia DESC
LIMIT 20;
```

## Étape 4 : la restitution

Les données consolidées sont stockées dans une table MySQL dédiée sur le serveur de l'agence, puis affichées via un tableau de bord Grafana léger, avec trois graphiques principaux : évolution hebdomadaire des impressions par type d'apparition, top des pages les plus visitées par les robots IA identifiés, et évolution du nombre de requêtes contenant des formulations typiques d'une question posée à un assistant conversationnel plutôt qu'une recherche par mots-clés classiques.

| Indicateur suivi | Source | Fréquence de mise à jour |
| --- | --- | --- |
| Impressions par apparition enrichie | API Search Console | Quotidienne |
| Passages de robots IA identifiés | Logs serveur | Quotidienne |
| Requêtes formulées en langage naturel | API Search Console (dimension query) | Hebdomadaire |

> On le répète à chaque client qui découvre ce tableau de bord : c'est un indicateur de tendance, pas une preuve de citation individuelle. Aucune API publique ne dit aujourd'hui « votre page a été citée dans telle réponse ».

## En résumé

Automatiser la remontée de ces données via l'API Search Console ne remplace pas un audit qualitatif ponctuel, mais elle évite de perdre du temps chaque semaine à comparer des captures d'écran à la main. Le script tourne en cinq minutes chaque nuit sur les douze comptes suivis par l'agence, et alimente un tableau de bord que les clients consultent désormais eux-mêmes, sans attendre le rapport mensuel.
