Geliştiriciler için
API referansı
DEXUN AdWhiz'in üç platformlu AI optimizasyonunu REST üzerinden kendi araçlarınıza, betiklerinize veya backend'inize bağlayın.
Temel URL
Tüm API istekleri bu köke gönderilir:
https://www.7275.com/api/v1HTTPS zorunludur. HTTP istekleri reddedilir (yönlendirilmez).
Kimlik doğrulama
Her istek, Authorization başlığında bir Bearer token gerektirir. Kontrol paneli → Ayarlar → API Keys bölümünden oluşturun. Anahtarlar live ve test olmak üzere iki türdedir ve yalnızca kendi ortamlarına erişebilir.
curl https://www.7275.com/api/v1/accounts \
-H "Authorization: Bearer dxk_live_...your-key..."- live anahtar biçimi: dxk_live_ ile başlar, 64 karakter
- test anahtar biçimi: dxk_test_ ile başlar, sandbox hesabıyla sınırlıdır
- Anahtarları asla front-end kodunda kullanmayın — kendi backend'iniz üzerinden proxy yapın
- Sızarsa hemen kontrol panelinden iptal edip yeniden oluşturun
Doğrudan Claude Desktop / Cursor içinden kullanın (MCP sunucusu)
Claude Desktop ve Cursor gibi MCP istemcilerinin AdWhiz durumunuzu doğrudan okuyabilmesi için bağımlılıksız bir Model Context Protocol sunucusu sunuyoruz. Kod yazmanız gerekmez — bir yapılandırma bloğunu kopyalayın, API anahtarınızı yapıştırın ve istemciyi yeniden başlatın.
- Beş salt okunur araç: reklam hesaplarını listeleme, AI önerilerini görme, bu ayki tasarrufu alma, son etkinlikleri görüntüleme, API kotasını kontrol etme
- Yazma araçları (apply / pause) bilinçli olarak henüz açılmadı — optimize edici shadow mode'dan çıkana ve bunları denetleyecek kalibrasyon kanıtı oluşana kadar bekliyorlar
- Tek bir Node 18+ betiği. npm install gerekmez. Çevrimdışı / ağdan yalıtılmış (airgapped) makinelerde sorunsuz çalışır
- API anahtarınız makinenizden hiç çıkmaz. Tüm istekler HTTPS ile doğrudan www.7275.com adresine gider
Bunu Claude Desktop'un claude_desktop_config.json dosyasına ekleyin (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\):
{
"mcpServers": {
"adwhiz": {
"command": "node",
"args": ["/path/to/mcp-server/src/index.mjs"],
"env": {
"ADWHIZ_API_KEY": "dxk_live_..."
}
}
}
}Tam kurulum kılavuzu, Cursor yapılandırması ve sorun giderme GitHub'da: github.com/dexun-inc/adwhiz/mcp-server.
Endpoint'ler
v1 API; kimlik, hesap okuma, öneri oluşturma (uygulama henüz kullanılamıyor), denetim günlükleri, API anahtarı yönetimi, kota sorgulama ve changelog akışını kapsayan 13 temel endpoint sunar.
| Yöntem | Yol | Açıklama |
|---|---|---|
| GET | /me | Çağıran token'ın sahibini + kalan hız sınırı kotasını döndürür (whoami) |
| GET | /accounts | Geçerli kullanıcının bağladığı tüm reklam hesaplarını listeler (üç platformun tamamında) |
| GET | /accounts/{id}/campaigns | Bir hesabın kampanyalarını, reklam gruplarını, anahtar kelimelerini ve 7/30 günlük metriklerini listeler |
| POST | /recommendations/generate | AI'ın yeni bir optimizasyon önerisi grubu oluşturmasını sağlar |
| GET | /recommendations | Bekleyen / uygulanan / reddedilen tüm önerileri listeler |
| POST | /recommendations/{id}/apply | Bir öneriyi uygulama — henüz kullanılamıyor: 501 not_supported döndürür ve hiçbir şeyi değiştirmez |
| POST | /recommendations/{id}/dismiss | Bir öneriyi reddetme — henüz kullanılamıyor: 501 not_supported döndürür ve hiçbir şeyi değiştirmez |
| POST | /changes/{id}/rollback | Uygulanmış bir değişikliği geri alma — henüz kullanılamıyor: 501 not_supported döndürür ve hiçbir şeyi değiştirmez |
| GET | /audit-log | (Kullanımdan kaldırıldı, 2027-05-23'te kapanıyor) Tam denetim günlüğü. Bunun yerine /audit-events kullanın — gerçek audit_events tablosuna dayanır ve ?kind filtresini destekler |
| GET | /audit-events | Güvenlik denetim olayları akışı (giriş / parola / OAuth / abonelik), ?since + ?kind filtreleriyle |
| GET | /api-keys | Çağıranın API anahtarlarını listeler (lastUsedAt + active dahil); hashedKey asla döndürülmez |
| GET | /usage | Deneme isteği göndermeden geçerli tier, RPM sınırı, kalan miktar ve reset_at değerlerini okur |
| GET | /changelog | Ürün changelog JSON akışı (herkese açık, kimlik doğrulama yok); ETag + ?lang + ?limit (1..50) + ?since=YYYY-MM-DD destekli, artımlı sorgulamanın standart biçimi |
Örnek istek
Üç platform için yeni optimizasyon önerileri oluşturun:
curl -X POST https://www.7275.com/api/v1/recommendations/generate \
-H "Authorization: Bearer dxk_live_..." \
-H "Content-Type: application/json" \
-d '{
"account_id": "ga-548-203-7184",
"platforms": ["google_ads", "meta_ads", "tiktok_ads"],
"window": "7d"
}'Örnek yanıt:
{
"summary": "Pausing 3 high-CPA keywords and reallocating budget...",
"recommendations": [
{
"id": "rec_001",
"type": "pause_keyword",
"target": { "accountId": "ga-548-203-7184", "keywordText": "wool socks" },
"title": "Pause broad-match 'wool socks'",
"reason": "7-day CPA $45.82 vs target $8",
"expectedImpact": "Save ~$412/week",
"confidence": "high"
}
]
}/changelog'u artımlı sorgulama
/api/v1/changelog herkese açık bir endpoint'tir (API anahtarı gerekmez) ve bant genişliği tasarrufu için dört seçenek sunar: ETag + If-None-Match, Last-Modified + If-Modified-Since (curl -z), tarihe göre filtreleme için ?since=YYYY-MM-DD ve boyut sınırlama için ?limit=N. SDK'lar ve cron betikleri bunları birleştirerek aynı JSON'u yeniden indirmeden sık sorgulama yapabilir.
# 1. First call — store the ETag (or Last-Modified) you get back.
curl -i 'https://www.7275.com/api/v1/changelog?limit=10'
# 2. Subsequent calls — pass the stored ETag.
# Server returns 304 with empty body if nothing has shipped.
curl -i 'https://www.7275.com/api/v1/changelog?limit=10' \
-H 'If-None-Match: "abc123..."'
# 3. Or anchor on a date instead of an ETag.
# Only entries whose `date >= since` come back; pair with ?limit
# to cap the response size.
curl 'https://www.7275.com/api/v1/changelog?since=2026-01-01&limit=20'
# 4. curl -z for Last-Modified-style conditional GET (no ETag needed):
curl -z 'Mon, 20 May 2026 00:00:00 GMT' \
'https://www.7275.com/api/v1/changelog'Hız sınırları
Upstream Google / Meta / TikTok kotalarını zorlamamak için abonelik planına göre kademelidir:
- Professional: dakikada 120 istek
- Business: dakikada 600 istek
- Enterprise: özel (genellikle dakikada 3.000 istek)
- Sınır aşılırsa 429 + retry-after başlığı döner — üstel geri çekilme (exponential backoff) önerilir
Hata kodları
Tüm hatalar error.code, error.message ve error.request_id içeren JSON döndürür:
| HTTP durumu | Anlamı |
|---|---|
401 | API anahtarı eksik veya geçersiz |
403 | Hesabın bu kaynağa yetkisi yok (yetersiz OAuth scope) |
404 | Kaynak bulunamadı veya silindi |
422 | Geçersiz istek parametreleri |
429 | Hız sınırı aşıldı — retry-after başlığında belirtilen süreyi bekleyin |
500 | Sunucu hatası — otomatik olarak bildirildi |
503 | Upstream platform API'si geçici olarak kullanılamıyor (Google / Meta / TikTok) |