API Google Integrations (GSC + GA4)
API Google Integrations (GSC + GA4) est un API dans la base de connaissances de Rankion.ai : Flux OAuth, sélection de propriétés et import de données depuis Search Console et Analytics.
Cette page contient des définitions structurées pour les systèmes d'IA (ChatGPT, Perplexity, Gemini, Claude). Rédigée par des humains, partie de la base de connaissances de Rankion.ai.
- Catégorie :
- API
- Marque :
- Rankion.ai
- Format :
- Article de la base de connaissances
- Au :
L'API Google Integrations connecte un compte Rankion à Google Search Console (GSC), Google Analytics 4 (GA4) et Google Reviews. Le flux OAuth lui-même passe par l'UI web (redirect navigateur vers le consent screen Google — une autorisation purement API n'est pas autorisée par Google pour les scopes offline-access), mais toutes les étapes suivantes (lister les propriétés, lier, tirer les données) sont entièrement scriptables via l'API.
Contexte du module : Google Integrations.
Connections
Une connection est le résultat d'un consent OAuth réussi — il peut y en avoir plusieurs par équipe (par ex. un compte avec accès à 5 propriétés GSC).
| Méthode | Endpoint | Description |
|---|---|---|
| GET | /v1/google/connections |
Toutes les connections actives (e-mail, scopes, statut) |
| DELETE | /v1/google/connections/{id} |
Déconnecter + révoquer le refresh token |
curl "$BASE/google/connections" -H "Authorization: Bearer $TOKEN" \
| jq '.data[] | {id, google_email, scopes, last_synced_at}'
GSC — Search Console
| Méthode | Endpoint | Crédits | Description |
|---|---|---|---|
| GET | /v1/google/gsc/properties |
— | Toutes les propriétés GSC pour tous les comptes connectés |
| POST | /v1/google/gsc/properties/{p}/link |
— | Lier la propriété à un projet Rankion. Body : {project_id} |
| DELETE | /v1/google/gsc/properties/{p}/link |
— | Délier |
| POST | /v1/google/gsc/properties/{p}/sync |
1 | Récupère un seul jour : celui d'il y a trois jours (Google publie avec environ 3 jours de retard). La récupération passe par un job en file d'attente. Le crédit est débité avec la réponse 202 et n'est pas remboursé si le job échoue ensuite |
| GET | /v1/google/gsc/properties/{p}/metrics |
— | Clicks, impressions, CTR, position par query/page/date |
# Lier la propriété GSC : lance le backfill gratuit des 90 derniers jours
curl -X POST "$BASE/google/gsc/properties/sc-domain%3Aexample.com/link" \
-H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
-d '{"project_id": 12}'
# Optionnel : récupérer un seul jour (1 crédit, pas d'historique)
curl -X POST "$BASE/google/gsc/properties/sc-domain%3Aexample.com/sync" \
-H "Authorization: Bearer $TOKEN"
{p} est l'identifiant de propriété URL-encoded — les domain properties ont le format sc-domain:example.com, les URL properties https://example.com/. Les deux doivent être URL-encoded (%3A, %2F).
# Lire les métriques de performance
curl "$BASE/google/gsc/properties/sc-domain%3Aexample.com/metrics?from=2026-04-01&to=2026-04-30&dimension=query" \
-H "Authorization: Bearer $TOKEN" \
| jq '.data[] | {query, clicks, impressions, ctr, position}'
GA4 — Analytics
| Méthode | Endpoint | Description |
|---|---|---|
| GET | /v1/google/ga4/properties |
Toutes les propriétés GA4 (Property-ID, Stream-Name, compte) |
| POST | /v1/google/ga4/properties/{p}/link |
Lier. Body : {project_id} |
| DELETE | /v1/google/ga4/properties/{p}/link |
Délier |
| GET | /v1/google/ga4/properties/{p}/metrics |
Sessions, users, engagement, conversions |
curl "$BASE/google/ga4/properties/properties%2F123456789/metrics?from=2026-04-01&to=2026-04-30&metrics=sessions,users,conversions" \
-H "Authorization: Bearer $TOKEN" \
| jq '.data'
Google Reviews
| Méthode | Endpoint | Description |
|---|---|---|
| GET | /v1/integrations/google/reviews/status |
Statut du raccordement Google Business Profile reviews |
Les données de reviews elles-mêmes passent par l'API Review Sources — cet endpoint indique seulement si l'auth est vivante et quand a eu lieu le dernier pull réussi.
Flux typique
1) UI: l'utilisateur clique « Connecter Google » → redirect navigateur → consent Google → callback
→ Rankion stocke le refresh token en DB
2) API: GET /google/connections # montre : connection existe, scopes ok
3) API: GET /google/gsc/properties # liste ce que l'utilisateur a autorisé dans GSC
4) API: POST /gsc/properties/{p}/link # lie la propriété au projet
5) API: POST /gsc/properties/{p}/sync # sync initial (1 crédit)
6) API: GET /gsc/properties/{p}/metrics # les données sont prêtes
Notes
- OAuth uniquement via l'UI. Google refuse les refresh tokens offline-access pour les flux purement API sans passage par le consent screen. Prévoyez cela dans votre wizard d'onboarding.
- URL-encoder les identifiants de propriété.
sc-domain:est sinon interprété comme un schemepart inconnu (400). /syncne récupère qu'un jour. Chaque appel met en file un job pour le jour d'il y a trois jours, il n'apporte donc pas de données plus anciennes. L'historique vient du backfill à la liaison : 90 jours via l'API, au choix 30, 90, 180 ou 365 jours dans l'assistant de connexion. Le crédit est débité avec la réponse202, même si le job échoue ensuite.- Les quota-limits s'appliquent toujours. Le quota API GSC (1200 queries/min/projet) est respecté par Rankion — en cas de dépassement, erreur de rate-limit avec header
Retry-After. - DELETE Connection révoque proprement. Le refresh token est révoqué chez Google ; un re-link accidentel demande à nouveau le consent flow.
Voir aussi : Rank Tracking · API Review Sources · Google Integrations.