Ana Sayfaya Dön
API Reference

SOV Tracker API

SOV verilerinizi kendi dashboard'larınıza, automasyon akışlarınıza veya BI araçlarınıza çekin. REST endpoint'ler + giden webhook'lar. Pro ve üstü planlar.

Kimlik Doğrulama

Tüm API istekleri Authorization header'ında Bearer token gerektirir. Anahtarınızı buradan alın: /dashboard/settings → API Erişimi.

Authorization: Bearer avt_live_xxxxxxxxxxxxxxxxxxxxxxxx

GET /api/v1/sov

En son tamamlanmış taramaya göre tüm platformlardaki güncel SOV skorunu döndürür.

Request

curl -H "Authorization: Bearer $SOVTRACKER_KEY" \
  https://sovtracker.com/api/v1/sov

Response (200 OK)

{
  "scan_id": "scan_abc123",
  "completed_at": "2026-05-06T12:34:56Z",
  "avg_sov": 42,
  "platform_breakdown": {
    "chatgpt": 60,
    "claude": 35,
    "gemini": 50,
    "perplexity": 25,
    "ai_overviews": 40
  }
}

GET /api/v1/scans

Son taramaları listele (yeniden eskiye). limit query param (max 50, varsayılan 10).

curl -H "Authorization: Bearer $SOVTRACKER_KEY" \
  "https://sovtracker.com/api/v1/scans?limit=20"

Response

{
  "scans": [
    {
      "id": "scan_abc123",
      "status": "completed",
      "scan_type": "manual",
      "started_at": "2026-05-06T12:30:00Z",
      "completed_at": "2026-05-06T12:34:56Z"
    }
  ]
}

POST /api/v1/scans

Yeni tarama başlat. Aylık kotanızdan düşer. Body opsiyonel.

curl -X POST \
  -H "Authorization: Bearer $SOVTRACKER_KEY" \
  -H "Content-Type: application/json" \
  https://sovtracker.com/api/v1/scans

Response (202 Accepted)

{
  "scan_id": "scan_xyz789",
  "status": "running",
  "estimated_seconds": 60
}

Giden Webhook'lar

Olaylar tetiklendiğinde HTTP POST bildirim alın. URL ve olayları buradan ayarlayın: /dashboard/settings → Outbound Webhooks.

Mevcut olaylar

  • scan.completedtarama tamamlandığında
  • sov.droppedSOV uyarı eşiğinin altına düştü
  • mention.detectedyeni marka bahsi tespit edildi
  • competitor.overtakebir rakip öne geçti

Gövde

{
  "event": "scan.completed",
  "organization_id": "org_abc",
  "timestamp": "2026-05-06T12:34:56Z",
  "data": {
    "scan_id": "scan_xyz",
    "avg_sov": 42,
    "results_count": 50,
    "mentioned_count": 21
  }
}

İmza doğrulama

Her istek X-Sovtracker-Signature header'ı içerir (raw body'nin HMAC-SHA256 hex çıktısı, webhook secret'ınızla imzalanmış).

import crypto from 'crypto';

function verify(rawBody, headerSig, secret) {
  const expected = crypto
    .createHmac('sha256', secret)
    .update(rawBody)
    .digest('hex');
  return crypto.timingSafeEqual(
    Buffer.from(expected),
    Buffer.from(headerSig)
  );
}

Hatalar

  • 401API key eksik veya geçersiz
  • 403Plan API erişimi içermiyor (Pro+ gerekli)
  • 429Aylık tarama kotası bitti
  • 500Sunucu hatası — exponential backoff ile tekrar deneyin

Soru var mı? Burada olmayan bir senaryo? Bize ulaşın.

İletişime Geç