rankion.ai
API

Projekte-API

Projekte erstellen, listen, updaten, Articles und Keywords pro Projekt verwalten.

In Rankion ist ein Projekt der zentrale Container — pro Projekt eine Domain, ein Team-Owner, und alle Sub-Resourcen (Artikel, Keywords, Internal-Link-Maps, Storylines) hängen daran. Daneben gibt es Tracking-Projekte als eigene Ressource für AI-Visibility-Monitoring (siehe unten).

CRUD

Method Endpoint Beschreibung Credits
GET /v1/projects Liste aller Team-Projekte (paginiert)
POST /v1/projects Neues Projekt anlegen
GET /v1/projects/{id} Projekt-Detail
PUT /v1/projects/{id} Settings updaten
DELETE /v1/projects/{id} Projekt löschen (soft)
# Liste
curl -H "Authorization: Bearer $TOKEN" "$BASE/projects"

# Anlegen
curl -X POST "$BASE/projects" \
     -H "Authorization: Bearer $TOKEN" \
     -H "Content-Type: application/json" \
     -d '{"name":"Mein Blog","domain":"meinblog.de","language":"de","country":"DE"}'

Response (gekürzt):

{
  "data": {
    "id": 12,
    "name": "Mein Blog",
    "domain": "meinblog.de",
    "language": "de",
    "country": "DE",
    "team_id": 7,
    "created_at": "2026-05-01T08:30:00Z"
  }
}

Projekt-bezogene Subressourcen

Articles

Alle artikel-bezogenen CRUD- und Generierungs-Endpoints hängen am Projekt:

Method Endpoint Beschreibung Credits
GET /v1/projects/{project}/articles paginiert (20/Seite)
POST /v1/projects/{project}/articles Body: {title, slug?, content?, status?}

Volle Artikel-API → Artikel-API.

Keywords

Method Endpoint Beschreibung Credits
GET /v1/projects/{project}/keywords Projekt-Keywords
POST /v1/projects/{project}/keywords Keyword anlegen
DELETE /v1/keywords/{id} Keyword löschen
POST /v1/keywords/research Keyword-Research-Job 5
POST /v1/keywords/{id}/expand A-Z Expansion (async) 10
GET /v1/keywords/{id}/expansions Ergebnisse einer Expansion

Internal Linking

Method Endpoint Beschreibung Credits
POST /v1/projects/{project}/internal-links/analyze Internal-Link-Map für das Projekt rechnen (async) 5
GET /v1/articles/{id}/link-suggestions Vorschläge für einen Artikel
PUT /v1/link-suggestions/{id} Vorschlag annehmen/ablehnen

Weitere Projekt-Subressourcen

Endpoint-Familie Top-Endpoint
Storylines GET/POST /v1/projects/{project}/storylines
Style-Profiles GET/POST /v1/projects/{project}/style-profiles
Knowledge-Base GET/POST /v1/projects/{project}/knowledge-base
Link-Lists GET/POST /v1/projects/{project}/link-lists
Orphan-Scans POST /v1/projects/{project}/orphan-scans/discover
Calendar GET/POST /v1/projects/{project}/calendar
Project-Images GET /v1/projects/{project}/images (legacy — primär ist team-weite /v1/images)

Tracking-Projekte (eigene Ressource!)

Tracking-Projekte sind getrennt von normalen Projekten. Sie sind die Datenbasis für AI-Visibility Tracking — pro Tracking-Projekt eine Brand, ein Set Keywords, ein Set Plattformen.

Endpoint-Namespace: /v1/tracking-projects/...

Wizard-Flow

Das Web-UI hat einen 5-Schritt-Wizard, den du 1:1 über die API nachstellen kannst:

Step Endpoint Beschreibung
1+2 POST /v1/tracking-projects/analyze Domain/Keyword analysieren, dispatcht AnalyzeDomainJob. Body: {mode:"domain"|"keyword", domain?, keyword?, name?, language?, country?} → 202 + project_id
3+4 GET /v1/tracking-projects/{id}/analysis-status Polling: liefert {analysis_status, suggested_keywords, suggested_competitors, suggested_prompts, suggested_personas, classification}
5 POST /v1/tracking-projects/{id}/activate Atomic: erstellt Keywords/Prompts/Competitors + setzt status=active
# Step 1+2: Analyse starten
RESP=$(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"}')
PID=$(echo $RESP | jq -r .project_id)

# Step 3+4: Pollen bis completed
while [ "$(curl -s "$BASE/tracking-projects/$PID/analysis-status" \
  -H "Authorization: Bearer $TOKEN" | jq -r .analysis_status)" != "completed" ]; do
  sleep 3
done

# Step 5: 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
  }'

Laufende Operations

Method Endpoint Beschreibung
GET /v1/tracking-projects alle Tracking-Projekte des Teams
GET /v1/tracking-projects/{id} Detail mit aktuellen KPIs
PUT /v1/tracking-projects/{id} Settings updaten (Brand-Aliases, Frequenz, Plattformen, AVI-Toggle)
POST /v1/tracking-projects/{id}/run manuellen Tracking-Run dispatchen
GET /v1/tracking-projects/{id}/runs Run-Historie
GET /v1/tracking-projects/{id}/scores Score-Historie für Charts
GET /v1/tracking-projects/{id}/avi aktueller AI-Visibility-Index (Reality-Check)
POST /v1/tracking-projects/{id}/generate-report Markdown-Report (10 Credits, 1/30min Limit)

Komplette Tabelle aller ~30 Tracking-Endpoints in docs/API_REFERENCE.md.

Beispiel-Workflow: Projekt + erster Artikel

# 1) Projekt anlegen
PID=$(curl -s -X POST "$BASE/projects" \
  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
  -d '{"name":"Demo Site","domain":"demo.example","language":"de","country":"DE"}' \
  | jq -r .data.id)

# 2) Artikel-Stub anlegen
ART=$(curl -s -X POST "$BASE/projects/$PID/articles" \
  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
  -d '{"title":"Beste AI-Tools 2026","status":"draft"}' \
  | jq -r .data.id)

# 3) Artikel-Inhalt generieren (5 Credits, async)
curl -X POST "$BASE/articles/$ART/generate" \
  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
  -d '{"keyword":"AI Tools 2026","article_type":"blog","target_length":1500}'

# 4) Pollen bis fertig
while [ "$(curl -s "$BASE/articles/$ART" \
  -H "Authorization: Bearer $TOKEN" | jq -r .data.processing_status)" != "ready" ]; do
  sleep 5
done

Detail-Workflows für Artikel: Artikel-API.

Verwandt: Authentifizierung & API-Tokens · Credits & Rate-Limits · AI-Visibility Tracking.

Letzte Aktualisierung: 1. Mai 2026

Cookies: Wir nutzen notwendige Cookies für die Funktion und optionale für Verbesserungen. Details

Notwendig
Aktiv
Analytics
Marketing