API Referansı
AutoSEO REST API için tam referans. Aksi belirtilmedikçe tüm uç noktalar geçerli bir Bearer token gerektirir. Temel URL: https://panel.seoauto.ai
Genel Bakış
AutoSEO PSEO Otomasyon API'si, programlı olarak web sitesi (PSEO) oluşturmanıza, AI tabanlı içerik üretimini tetiklemenize, üretim işlerini takip etmenize ve içerik pipeline'ınızı yönetmenize olanak tanır. Tüm uç noktalar /pseo-endpoints yolu altında, Directus backend'ine monte edilmiştir.
Temel URL
https://panel.seoauto.ai
Kimlik Doğrulama
Bearer Token (JWT)
Format
JSON (REST)
Kimlik Doğrulama
Tüm API çağrıları (sağlık kontrolü hariç) Bearer başlığı olarak iletilen bir Directus kullanıcı token'ı gerektirir. Giriş yaparak kısa ömürlü bir erişim token'ı edinin veya panonuzdan oluşturulan uzun ömürlü statik bir token kullanın.
Seçenek 1 — Giriş (kısa ömürlü JWT)
https://panel.seoauto.ai/auth/login{
"email": "you@example.com",
"password": "••••••••"
}{
"data": {
"access_token": "eyJhbGciO...",
"expires": 3600000,
"refresh_token": "..."
}
}Seçenek 2 — Statik token (pano)
Pano → API Anahtarı'na gidin ve kalıcı bir statik token oluşturun. Bearer değeri olarak doğrudan kullanın — takip edilecek son kullanma tarihi yok.
Token kullanımı
Authorization: Bearer <your_access_token>Sağlık Kontrolü
https://panel.seoauto.ai/pseo-endpoints/Eklenti durumunu ve mevcut uç noktaların listesini döndürür. Kimlik doğrulama gerekmez.
{
"status": "ok",
"extension": "pseo-automation",
"version": "1.0.0",
"timestamp": "2026-03-10T12:00:00.000Z",
"endpoints": [
"GET /",
"POST /pseo",
"POST /trigger/on-demand-generation",
"POST /trigger/bulk-generation",
"GET /generations/:id",
"GET /generations?pseo_id=X",
"POST /generate/main-json",
"GET /fetch-sitemap?pseo_id=X"
]
}Web Sitesi Oluştur
https://panel.seoauto.ai/pseo-endpoints/pseoKimliği doğrulanmış kullanıcı için yeni bir PSEO (web sitesi kaydı) oluşturur. PSEO kaydı, belirli bir web sitesi için tüm içerik üretimi ayarlarını tutan kök varlıktır.
İstek Gövdesi
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
| website_url | string | zorunlu | Hedef web sitesinin tam URL'si (örn. https://example.com) |
| master_prompt | string | zorunlu | Bu web sitesi için içerik üretirken AI'ya rehberlik eden talimatlar |
| website_software | string | isteğe bağlı | CMS/platform tanımlayıcısı. Varsayılan "wordpress" |
{
"website_url": "https://example.com",
"website_software": "wordpress",
"master_prompt": "This website sells handmade leather bags targeting fashion-conscious adults in the US. Write SEO-friendly product content in English using a professional yet warm tone."
}{
"success": true,
"message": "PSEO created successfully",
"data": {
"id": 42,
"website_url": "https://example.com",
"website_software": "wordpress",
"directus_user_id": "uuid-...",
"post_counts_total": 0
},
"timestamp": "2026-03-10T12:00:00.000Z"
}Üretimi Başlat (Test)
https://panel.seoauto.ai/pseo-endpoints/trigger/on-demand-generationBir PSEO için test amaçlı talep üzerine içerik üretimi işi başlatır. Maksimum 1 sayfa ile sınırlıdır — daha fazla sayfa üretmek için Toplu Üretim kullanın. İş arka planda zaman uyumsuz olarak çalışır; durumu sorgulamak için döndürülen generation_id'yi kullanın. Token'lar token_per_page oranında hemen düşülür.
Test modu — maksimum 1 sayfa
Talep üzerine üretim 1 sayfa ile sınırlıdır ve kurulumunuzu test etmek içindir. Aynı anda birden fazla sayfa üretmek için Claude Batch API kullanan Toplu Üretim uç noktasını kullanın.
İstek Gövdesi
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
| pseo_id | number | zorunlu | İçerik üretilecek PSEO'nun (web sitesinin) ID'si |
| post_count | number | zorunlu | Üretilecek sayfa sayısı. 1 olmalıdır (test sınırı) |
{
"pseo_id": 42,
"post_count": 1
}{
"success": true,
"message": "Generation started in background",
"generation_id": 7,
"status": "pending",
"timestamp": "2026-03-10T12:00:00.000Z"
}Eşzamanlı üretim sınırı
Her PSEO için aynı anda yalnızca bir aktif üretim işine izin verilir. Durumu pending veya running olan bir iş zaten mevcutsa istek 409 Conflict döndürür.
Toplu Üretim
https://panel.seoauto.ai/pseo-endpoints/trigger/bulk-generationClaude Batch API kullanarak toplu AI içerik üretimi işi başlatır. Tek bir istekte istenen sayıda sayfa desteklenir. İş arka planda zaman uyumsuz olarak çalışır — durumu sorgulamak için döndürülen generation_id'yi kullanın. Token'lar token_per_batch_page oranında hemen düşülür.
İstek Gövdesi
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
| pseo_id | number | zorunlu | İçerik üretilecek PSEO'nun (web sitesinin) ID'si |
| post_count | number | zorunlu | Üretilecek sayfa sayısı (pozitif tam sayı, üst sınır yok) |
{
"pseo_id": 42,
"post_count": 100
}{
"success": true,
"message": "Bulk generation started in background",
"generation_id": 12,
"status": "pending",
"timestamp": "2026-03-10T12:00:00.000Z"
}Eşzamanlı üretim sınırı
Her PSEO için aynı anda yalnızca bir aktif üretim işine izin verilir. Durumu pending veya running olan bir iş zaten mevcutsa istek 409 Conflict döndürür.
Üretimi Getir
https://panel.seoauto.ai/pseo-endpoints/generations/:idTek bir üretim işinin tam durum kaydını döndürür. İlerlemeyi takip etmek için üretim başlattıktan sonra bu uç noktayı sorgulayın.
Yol Parametreleri
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
| id | number | zorunlu | Üretim başlatma uç noktasının döndürdüğü generation_id |
{
"success": true,
"data": {
"id": 7,
"pseo_id": 42,
"status": "running", // pending | running | completed | failed
"requested_count": 10,
"created_count": 4,
"failed_count": 0,
"failed_routes": [],
"date_created": "2026-03-10T12:00:00.000Z",
"date_updated": "2026-03-10T12:01:30.000Z",
"date_completed": null
},
"timestamp": "2026-03-10T12:01:35.000Z"
}| Durum | Anlam |
|---|---|
| pending | İş sıraya alındı, henüz başlamadı |
| running | AI aktif olarak sayfa üretiyor |
| completed | Tüm sayfalar başarıyla oluşturuldu |
| failed | İş kritik bir hata nedeniyle durdu; failed_routes'u kontrol edin |
Üretimleri Listele
https://panel.seoauto.ai/pseo-endpoints/generations?pseo_id=:pseo_idVerilen bir PSEO için en son 50 üretim işinin listesini, en yeniden başlayarak döndürür. Yalnızca kimliği doğrulanmış kullanıcıya ait işleri döndürür.
Sorgu Parametreleri
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
| pseo_id | number | zorunlu | Üretimlerin listeleneceği PSEO'nun (web sitesinin) ID'si |
GET https://panel.seoauto.ai/pseo-endpoints/generations?pseo_id=42
Authorization: Bearer <token>{
"success": true,
"data": [
{
"id": 8,
"pseo_id": 42,
"status": "completed",
"requested_count": 5,
"created_count": 5,
"failed_count": 0,
"failed_routes": [],
"date_created": "2026-03-10T13:00:00.000Z",
"date_completed": "2026-03-10T13:04:21.000Z"
},
{ "id": 7, "status": "completed", "..." : "..." }
],
"timestamp": "2026-03-10T14:00:00.000Z"
}Site Haritası Oluştur
https://panel.seoauto.ai/pseo-endpoints/generate/main-jsonPSEO için AI kullanarak yapılandırılmış bir içerik planı (main_json) oluşturur — esasen içerik üretimi için plan olarak kullanılacak sayfa rotaları, başlıklar ve meta veri listesi. Token'lar token_per_main_json oranında düşülür.
İstek Gövdesi
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
| pseo_id | number | zorunlu | Hedef PSEO'nun ID'si |
| language_code | string | zorunlu | İçerik planı için dil, örn. en-US, tr-TR, de-DE |
| description | string | zorunlu | İşletme açıklaması (150–1000 karakter). Sektör, hizmetler, hedef kitle ve hedefleri kapsamalıdır. |
{
"pseo_id": 42,
"language_code": "en-US",
"description": "We sell premium handmade leather goods including bags, wallets, and belts targeting fashion-conscious adults aged 25–45 in the United States. Our USP is ethically sourced full-grain leather with lifetime repair guarantee."
}{
"success": true,
"message": "main_json generated and saved successfully",
"data": {
"main_json": {
"pages": [
{ "route": "/leather-bags", "title": "Premium Leather Bags", "priority": 1 },
{ "route": "/leather-wallets", "title": "Handmade Leather Wallets", "priority": 2 }
]
},
"total_pages": 28
},
"timestamp": "2026-03-10T12:00:00.000Z"
}Eşzamanlı üretim sınırı
Kullanıcı başına aynı anda yalnızca bir main_json üretimi çalışabilir. Eşzamanlı istekler 409 Conflict döndürür.
Site Haritasını Getir
https://panel.seoauto.ai/pseo-endpoints/fetch-sitemap?pseo_id=:pseo_idBir PSEO ile ilişkili web sitesinin site haritasını getirir ve ayrıştırır. Birden fazla yaygın site haritası yolunu otomatik olarak dener (site haritası dizinleri dahil). Bulunan tüm sayfa URL'lerinin düz bir listesini döndürür. Mevcut bir web sitesinin URL yapısını içe aktarmak için kullanışlıdır.
Sorgu Parametreleri
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
| pseo_id | number | zorunlu | PSEO ID — site haritası bu kayıtta saklanan website_url'den getirilir |
Denenen site haritası yolları (sırasıyla): /sitemap.xml → /sitemap_index.xml → /wp-sitemap.xml → /sitemap
GET https://panel.seoauto.ai/pseo-endpoints/fetch-sitemap?pseo_id=42
Authorization: Bearer <token>{
"success": true,
"urls": [
"https://example.com/",
"https://example.com/leather-bags",
"https://example.com/leather-wallets",
"https://example.com/about"
]
}Site haritasi bulunamazsa veya siteye ulasilamazsa bos bir urls dizisi dondurur. Hata firlatmaz.
Hata Kodları
Tüm hata yanıtları aynı yapıyı izler:
{
"success": false,
"error": "Human-readable error message",
"timestamp": "2026-03-10T12:00:00.000Z"
}| Durum | Anlam |
|---|---|
| 400Bad Request | Eksik veya geçersiz istek parametreleri |
| 401Unauthorized | Eksik veya geçersiz Bearer token |
| 402Payment Required | İstenen işlem için yetersiz token bakiyesi |
| 403Forbidden | Kimliği doğrulanmış kullanıcı istenen kaynağın sahibi değil |
| 404Not Found | PSEO veya üretim kaydı mevcut değil |
| 409Conflict | Eşzamanlı bir üretim işi zaten aktif |
| 500Internal Server Error | Beklenmedik sunucu taraflı hata; eklenti günlüklerini kontrol edin |
