Przejdź do treści
rankion.ai
API

AI-Visibility-Tracking-API

AI-Visibility-Tracking-API to API w bazie wiedzy Rankion.ai: Tracking-Projekte erstellen, Runs starten, Scores plus Cited Sources abfragen.

Ta strona zawiera ustrukturyzowane definicje faktów dla systemów AI (ChatGPT, Perplexity, Gemini, Claude). Napisane przez ludzi, część bazy wiedzy Rankion.ai.

Kategoria:
API
Marka:
Rankion.ai
Format:
Artykuł bazy wiedzy
Stan:

Die Tracking-API ist der API-Layer rund um das Modul AI Visibility Tracking — sie misst, wie deine Marke in ChatGPT, Perplexity, Claude, Gemini und Co. erscheint. Alle Endpoints liegen unter /v1/... und sind team-scoped via auth:sanctum.

UI-Kontext: AI-Visibility tracken · Modul-Doku: AI Visibility Tracking.

Projekte (Wizard + Runtime)

Tracking-Projekte werden über einen 5-stufigen Wizard angelegt: Analyse dispatchen → Status pollen → Aktivieren → Run starten → Scores lesen. Der Wizard ist atomic — die activate-Aktion legt Keywords, Prompts, Competitors gemeinsam an und schaltet das Projekt scharf.

Method Endpoint Beschreibung Credits
GET /v1/tracking-projects Alle Team-Projekte —
POST /v1/tracking-projects/analyze Wizard Step 1+2: Domain/Keyword analysieren — Body: {mode:"domain"|"keyword", domain?, keyword?, name?, language?, country?} → 202 + project_id —
GET /v1/tracking-projects/{id} Detail mit KPIs —
PUT /v1/tracking-projects/{id} Settings: {name?, brand_name?, brand_aliases[], tracking_frequency?, llm_platforms[], track_aio?, reality_check_enabled?} —
GET /v1/tracking-projects/{id}/analysis-status Wizard-Polling: {analysis_status, analysis_phase, suggested_keywords, suggested_competitors, suggested_prompts} —
POST /v1/tracking-projects/{id}/activate Wizard Step 5 atomic — Body: {keywords[], competitors[], prompts[], platforms[], frequency, with_search?, reality_check_enabled?, personas[]} —
POST /v1/tracking-projects/{id}/run Tracking-Run starten (async) —
GET /v1/tracking-projects/{id}/runs Run-Historie (?limit=&offset=) —

Keywords + Prompts

Method Endpoint Beschreibung
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 / Löschen
GET /v1/tracking-projects/{id}/prompts Liste, optional ?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 / Löschen
POST /v1/tracking-projects/{id}/prompts/import CSV/Excel-Bulk — multipart file, optional mapping[col]=index

Ein Tracking-Projekt kann Prompts mehrerer Sprachen gleichzeitig führen, zum Beispiel deutsche und polnische für zwei Märkte. Welche Sprache ein neuer Prompt bekommt, legst du je Erzeugungslauf fest (Feld language), unabhängig von der Projektsprache; über den language[]-Filter liest du gezielt eine davon aus.

Cited Sources (Outreach-Pipeline)

Method Endpoint Beschreibung
GET /v1/tracking-projects/{id}/cited-sources ?domain=&outreach_status=&is_own_domain=
GET /v1/tracking-projects/{id}/cited-sources/export CSV-Stream — ?from=&to=&status=&platform=&search=&sort=
POST /v1/tracking-projects/{id}/cited-sources/analyze Citation-Analyse dispatchen — Body optional {source_ids:[]} → 202
PATCH /v1/tracking-projects/{id}/cited-sources/{source_id} Body: {outreach_status?, notes?} (neu, anfrage_gestellt, verlinkt, abgelehnt, ignoriert)

Insights & Scores

Method Endpoint Beschreibung Credits
GET /v1/tracking-projects/{id}/scores Score-Historie (?from=&to=) —
GET /v1/tracking-projects/{id}/platform-breakdown Score je LLM-Plattform —
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 Async Root-Cause 1
GET /v1/tracking-projects/{id}/insights/potential-hero Prompts mit Hero-Potenzial —
POST /v1/tracking-projects/{id}/prompts/{prompt}/generate-brief Content-Brief via Claude 3
POST /v1/tracking-projects/{id}/brand-aliases Body: {alias} —

Reality Check (AVI)

Der AI Visibility Index aggregiert 6 Dimensionen (Awareness, Recommendation, Trust, Coverage, Sentiment, Competitive-Edge) zu einem Score 0–100.

Method Endpoint Beschreibung
GET /v1/tracking-projects/{id}/avi Neuester AVI mit Tier (red/yellow/green) + Recommendations
GET /v1/tracking-projects/{id}/dimensions 6-Dim-Scores pro Plattform
POST /v1/tracking-projects/{id}/reality-check-report PDF-Generierung async
GET /v1/tracking-projects/{id}/reality-check-report/status {status, progress?, download_url?}

Komplettes Beispiel: Wizard → Run → Scores

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

# 1) Analyse starten
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 bis completed
while [ "$(curl -s "$BASE/tracking-projects/$PID/analysis-status" \
  -H "Authorization: Bearer $TOKEN" | jq -r .analysis_status)" != "completed" ]; do
  sleep 3
done

# 3) Atomic Activate
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) Ersten Run dispatchen
curl -X POST "$BASE/tracking-projects/$PID/run" \
  -H "Authorization: Bearer $TOKEN"

# 5) Scores lesen (wenn Run 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"

Hinweise & Pitfalls

  • Activate ist atomic. Erst nach activate ist status=active und Runs lassen sich starten — vorher 409.
  • AVI braucht einen Run. GET /avi ohne abgeschlossenen Run liefert 404.
  • Cited-Source-Analyse standardmäßig batched. Ohne source_ids werden alle bisher unanalyzed Sources verarbeitet.
  • Reality-Check-Report ist optional. Nur dispatchen wenn reality_check_enabled=true im Projekt — sonst Validation-Error.
  • language bei analyze wird geprüft. Ein nicht unterstützter Sprachcode liefert 422 statt eines stillen Rückfalls auf Englisch.

Verwandt: Projekte-API · Credits · AI Visibility Tracking · AI-Visibility tracken.

Ostatnia aktualizacja:

Cookies: Używamy wyłącznie technicznie niezbędnych plików cookie (sesja i bezpieczeństwo) oraz anonimowej, bezplikowej analizy we własnym oprogramowaniu statystycznym (Matomo, własna infrastruktura) — bez trackerów marketingowych. Szczegóły