Aller au contenu
rankion.ai
API

API AI Visibility Tracking

API AI Visibility Tracking est un API dans la base de connaissances de Rankion.ai : Créer des projets de tracking, lancer des runs, récupérer scores et sources citées.

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 Tracking est la couche API du module AI Visibility Tracking — elle mesure comment ta marque apparaît dans ChatGPT, Perplexity, Claude, Gemini & Co. Tous les endpoints sont sous /v1/... et team-scoped via auth:sanctum.

Contexte UI : Tracker l'AI Visibility · Doc module : AI Visibility Tracking.

Projets (assistant + runtime)

Les projets de tracking sont créés via un assistant en 5 étapes : dispatcher l'analyse → poller le statut → activer → lancer un run → lire les scores. L'assistant est atomique — l'action activate crée mots-clés, prompts et concurrents ensemble et bascule le projet en mode actif.

Méthode Endpoint Description Crédits
GET /v1/tracking-projects Tous les projets de l'équipe —
POST /v1/tracking-projects/analyze Étapes 1+2 de l'assistant : analyser un domaine/mot-clé — Body : {mode:"domain"|"keyword", domain?, keyword?, name?, language?, country?} → 202 + project_id —
GET /v1/tracking-projects/{id} Détail avec KPIs —
PUT /v1/tracking-projects/{id} Paramètres : {name?, brand_name?, brand_aliases[], tracking_frequency?, llm_platforms[], track_aio?, reality_check_enabled?} —
GET /v1/tracking-projects/{id}/analysis-status Polling de l'assistant : {analysis_status, analysis_phase, suggested_keywords, suggested_competitors, suggested_prompts} —
POST /v1/tracking-projects/{id}/activate Étape 5 atomique — Body : {keywords[], competitors[], prompts[], platforms[], frequency, with_search?, reality_check_enabled?, personas[]} —
POST /v1/tracking-projects/{id}/run Lancer un run de tracking (async) —
GET /v1/tracking-projects/{id}/runs Historique des runs (?limit=&offset=) —

Mots-clés + prompts

Méthode Endpoint Description
GET /v1/tracking-projects/{id}/keywords ?active_only=true
POST /v1/tracking-projects/{id}/keywords Body : {keyword, language?, country?, is_active?}
PUT/DELETE /v1/tracking-keywords/{id} Update / suppression
GET /v1/tracking-projects/{id}/prompts Liste, avec en option ?language[]=de&language[]=pl
POST /v1/tracking-projects/{id}/prompts Body : {prompt_text, prompt_category?, persona_label?, commercial_intent?, language?}
PUT/DELETE /v1/tracking-prompts/{id} Update / suppression
POST /v1/tracking-projects/{id}/prompts/import Bulk CSV/Excel — multipart file, optionnel mapping[col]=index

Un projet de tracking peut faire cohabiter des prompts en plusieurs langues, par exemple en allemand et en polonais pour deux marchés. La langue attribuée à un nouveau prompt se choisit à chaque lancement de génération (champ language), indépendamment de la langue du projet ; le filtre language[] permet d'en lire une seule à la fois.

Sources citées (pipeline outreach)

Méthode Endpoint Description
GET /v1/tracking-projects/{id}/cited-sources ?domain=&outreach_status=&is_own_domain=
GET /v1/tracking-projects/{id}/cited-sources/export Stream CSV — ?from=&to=&status=&platform=&search=&sort=
POST /v1/tracking-projects/{id}/cited-sources/analyze Dispatcher l'analyse de citations — Body optionnel {source_ids:[]} → 202
PATCH /v1/tracking-projects/{id}/cited-sources/{source_id} Body : {outreach_status?, notes?} (neu, anfrage_gestellt, verlinkt, abgelehnt, ignoriert)

Insights & scores

Méthode Endpoint Description Crédits
GET /v1/tracking-projects/{id}/scores Historique des scores (?from=&to=) —
GET /v1/tracking-projects/{id}/platform-breakdown Score par plateforme LLM —
GET /v1/tracking-projects/{id}/insights/low-hanging-fruit ?days=30&min_possibility=60&limit=5 —
GET /v1/tracking-projects/{id}/insights/platform-gap ?days=30 —
POST /v1/tracking-projects/{id}/insights/platform-gap/{platform}/diagnose Root-cause async 1
GET /v1/tracking-projects/{id}/insights/potential-hero Prompts à potentiel Hero —
POST /v1/tracking-projects/{id}/prompts/{prompt}/generate-brief Brief de contenu via Claude 3
POST /v1/tracking-projects/{id}/brand-aliases Body : {alias} —

Reality Check (AVI)

L'AI Visibility Index agrège 6 dimensions (Awareness, Recommendation, Trust, Coverage, Sentiment, Competitive-Edge) en un score 0–100.

Méthode Endpoint Description
GET /v1/tracking-projects/{id}/avi AVI le plus récent avec tier (red/yellow/green) + recommendations
GET /v1/tracking-projects/{id}/dimensions Scores des 6 dimensions par plateforme
POST /v1/tracking-projects/{id}/reality-check-report Génération PDF async
GET /v1/tracking-projects/{id}/reality-check-report/status {status, progress?, download_url?}

Exemple complet : assistant → run → scores

TOKEN="$RANKION_API_TOKEN"
BASE="https://rankion.ai/api/v1"

# 1) Démarrer l'analyse
PID=$(curl -s -X POST "$BASE/tracking-projects/analyze" \
  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
  -d '{"mode":"domain","domain":"example.com","language":"de","country":"DE"}' \
  | jq -r .project_id)

# 2) Polling jusqu'à completed
while [ "$(curl -s "$BASE/tracking-projects/$PID/analysis-status" \
  -H "Authorization: Bearer $TOKEN" | jq -r .analysis_status)" != "completed" ]; do
  sleep 3
done

# 3) Activation atomique
curl -X POST "$BASE/tracking-projects/$PID/activate" \
  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
  -d '{
    "keywords":["best crm","crm software"],
    "competitors":[{"domain":"hubspot.com"}],
    "prompts":[{"prompt":"What is the best CRM?","category":"recommendation"}],
    "platforms":["chatgpt","perplexity"],
    "frequency":"weekly",
    "with_search":true,
    "reality_check_enabled":true
  }'

# 4) Dispatcher le premier run
curl -X POST "$BASE/tracking-projects/$PID/run" \
  -H "Authorization: Bearer $TOKEN"

# 5) Lire les scores (quand le run est completed)
curl "$BASE/tracking-projects/$PID/scores?from=2026-01-01" \
  -H "Authorization: Bearer $TOKEN"

# 6) AVI + recommendations
curl "$BASE/tracking-projects/$PID/avi" \
  -H "Authorization: Bearer $TOKEN"

Notes & pièges

  • Activate est atomique. Ce n'est qu'après activate que status=active et que les runs peuvent démarrer — avant cela, 409.
  • AVI nécessite un run. GET /avi sans run terminé renvoie 404.
  • L'analyse de sources citées est par défaut batchée. Sans source_ids, toutes les sources non encore analysées sont traitées.
  • Reality-Check-Report est optionnel. Ne le dispatcher que si reality_check_enabled=true dans le projet — sinon erreur de validation.
  • language sur analyze est contrôlé. Un code de langue non pris en charge renvoie 422 au lieu de basculer silencieusement vers l'anglais.

Voir aussi : API Projets · Crédits · AI Visibility Tracking · Tracker l'AI Visibility.

Dernière mise à jour :

Cookies : Nous utilisons uniquement des cookies strictement nécessaires (session et sécurité), ainsi qu'une analyse anonyme et sans cookies via notre propre logiciel de statistiques (Matomo, infrastructure propre) — aucun traceur marketing. Détails