Yapay Zeka Sağlayıcıları
Yapay zeka sağlayıcıları, platforma güç veren temel model satıcılarıdır. Sağlayıcı, seçilen modelden otomatik olarak çözümlenir; çoğu API çağrısında doğrudan bir sağlayıcı belirtmeniz gerekmez.
Uç noktalar
| Method | Path | Description | Auth | Rate Limit |
|---|---|---|---|---|
| GET | /ai/providers | List available providers | JWT + Entitlement | 120/60s (paylaşılan genel sınır) |
| GET | /ai/providers/:id | Get provider details | JWT + Entitlement | 120/60s (paylaşılan genel sınır) |
Aktif Sağlayıcılar
Planınız kullanabilsin ya da kullanamasın, kayıtlı her sağlayıcı listelenir — gerçekte neyi çağırabileceğinizi anlamak için isActive değil isAccessible alanına bakın. isActive, sağlayıcının platformda genel olarak etkin olup olmadığını açıklar (aşağıdakilerin tümü için true); isAccessible ise sizin planınızın bu sağlayıcıya erişim izni verip vermediğini açıklar.
| Sağlayıcı | Anahtar | Ücretsiz planda erişilebilir mi |
|---|---|---|
google | Evet — her planda her zaman erişilebilir | |
| OpenAI | openai | Hayır — openai model yetkisine sahip ücretli bir plan gerektirir |
| Anthropic | anthropic | Hayır — anthropic model yetkisine sahip ücretli bir plan gerektirir |
| Mistral AI | mistral | Hayır — mistral model yetkisine sahip ücretli bir plan gerektirir |
| DeepSeek | deepseek | Hayır |
| Kimi (Moonshot) | kimi | Hayır |
| Local / Ollama | local | Hayır |
| SpaceXAI (xAI Grok) | spacexai | Hayır |
| NVIDIA NIM | nvidia | Hayır |
Ücretsiz plan: yalnızca
GET /ai/providers
Tüm aktif AI sağlayıcılarını listeleyin.
Kimlik Doğrulama: JWT Taşıyıcı jetonu + aktif AI yetkisi gereklidir. Hız sınırı: 60/dak
Rica etmek
Sorgu Parametreleri
| Parameter | Type | Required | Description |
|---|---|---|---|
key | string | No | Filter by provider key (e.g. google) |
limit | number | No | Items per page |
offset | number | No | Pagination offset |
Cevap
Yanıt Örneği
{
"data": [
{
"key": "google",
"displayName": "Google",
"isActive": true,
"isAccessible": true,
"baseUrl": "https://generativelanguage.googleapis.com",
"docsUrl": "https://ai.google.dev/gemini-api/docs"
},
{
"key": "openai",
"displayName": "OpenAI",
"isActive": true,
"isAccessible": false,
"baseUrl": "https://api.openai.com/v1",
"docsUrl": "https://developers.openai.com/api/docs/"
}
],
"meta": {
"total": 9,
"limit": 20,
"offset": 0,
"hasNextPage": false
}
}Yanıt Alanları
| Field | Type | Description |
|---|---|---|
key | string | Machine-readable provider key |
displayName | string | Display name |
isActive | boolean | Sağlayıcının platformda genel olarak etkin olup olmadığı — plana bağlı değildir |
isAccessible | boolean | Sizin planınızın bu sağlayıcıya sohbet/AI çalıştırmaları için erişim verip vermediği |
baseUrl | string | null | Sağlayıcının kendi API temel URL'si |
docsUrl | string | null | Sağlayıcının kendi API dokümantasyon bağlantısı |
Kod Örnekleri
curl https://api.chainabit.com/api/v1/ai/providers \
-H "Authorization: Bearer $TOKEN"const res = await fetch(`${BASE_URL}/ai/providers`, {
headers: { Authorization: `Bearer ${TOKEN}` },
});
const { data } = await res.json();import requests
res = requests.get(
f"{BASE_URL}/ai/providers",
headers={"Authorization": f"Bearer {TOKEN}"},
)
data = res.json()["data"]GET /ai/providers/:id
UUID'sine göre belirli bir sağlayıcı hakkında ayrıntılı bilgi edinin.
Kimlik Doğrulama: JWT Taşıyıcı jetonu + aktif AI yetkisi gereklidir. Hız sınırı: 60/dak
Rica etmek
Yol parametreleri: id — bir GET /ai/providers yanıtının `data[].id'sinden. Sorgu parametresi yok.
Cevap
Yanıt Örneği
{
"data": {
"id": "cm9provider01",
"key": "google",
"displayName": "Google",
"isActive": true,
"isAccessible": true,
"baseUrl": "https://generativelanguage.googleapis.com",
"docsUrl": "https://ai.google.dev/gemini-api/docs",
"createdAt": "2026-01-01T00:00:00.000Z"
}
}Yanıt Alanları
Yukarıdaki GET /ai/providers ile aynı alanlar, artı:
| Field | Type | Description |
|---|---|---|
id | string | Provider UUID |
createdAt | string | ISO 8601 |
Kod Örnekleri
curl https://api.chainabit.com/api/v1/ai/providers/<provider-id> \
-H "Authorization: Bearer $TOKEN"const res = await fetch(`${BASE_URL}/ai/providers/${providerId}`, {
headers: { Authorization: `Bearer ${TOKEN}` },
});
const { data } = await res.json();import requests
res = requests.get(
f"{BASE_URL}/ai/providers/{provider_id}",
headers={"Authorization": f"Bearer {TOKEN}"},
)
data = res.json()["data"]Notlar
- Planınızdan bağımsız olarak kayıtlı her sağlayıcı döndürülür — yalnızca çağıranın gerçekten kullanabileceği sağlayıcıları göstermek istiyorsanız istemci tarafında
isAccessible'a göre filtreleyin. - Sağlayıcı kullanılabilirliği (
isActive) platform düzeyinde yönetilir ve API aracılığıyla değiştirilemez. Planınızın erişilebilirliği (isAccessible) aboneliğiniz üzerinden yönetilir. - Modelleri sağlayıcıya göre filtrelemek için
GET /ai/modelsadresindeki 'provider' sorgu parametresini kullanın.