API genel bakış
Her CID222 API yüzeyinde temel yollar, kimlik bilgileri, istek ve yanıt biçimleri, sayfalama ve hata kodları.
- Sürüm: 0.4
- Rol: admin_user, normal_user, viewer
- Tür: başvuru
Her CID222 API yüzeyi, yanıt verdiği temel yol, kabul ettiği kimlik bilgisi ve döndürdüğü biçim.
Temel URL
Genel bir rota öneki yoktur. Her denetleyici kendi temel yolunu tanımlar ve yollar tekbiçimli
değildir — /api/v1 altındaki tek yüzey tespittir.
Ağ geçidi TCP 3000 üzerinde 0.0.0.0 adresine bağlı olarak dinler; bir cihaz bunu kendi TLS
katmanının arkasında 443 üzerinden yayımlar. Üretimde https://<appliance-fqdn> kullanın;
http://localhost:3000 yalnızca konteynere doğrudan çağrı yaparken geçerlidir.
| Yüzey | Temel yol |
|---|---|
| Sohbet | /chat |
| Tespit | /api/v1/guardrails |
| Oturumlar | /sessions |
| Modeller | /models |
| Kimlik doğrulama | /auth |
| Görüntü analizi | /image-analysis |
| Belge analizi | /document-analysis |
| Yönetim | /admin/… |
Kimlik doğrulama
Kimlik doğrulamalı her istek bir bearer token taşır. CID222 iki kimlik bilgisi türünü cid_key_
önekinden ayırt eder.
Warning
Ağ geçidi API anahtarı /chat/…, /models ve POST /api/v1/guardrails/detect yüzeylerine
erişir. /sessions, /image-analysis, /document-analysis veya /admin/… yüzeylerine
erişmez; bunlar yalnızca JWT doğrular.
Kimlik doğrulama sayfasına bakın.
Sohbet uç noktaları
| Metot | Yol | Kimlik bilgisi | Açıklama |
|---|---|---|---|
| POST | /chat/completions | API anahtarı veya JWT | Filtrelenmiş tamamlama, Server-Sent Events (SSE) olarak döner |
| POST | /chat/harden-prompt | API anahtarı veya JWT | Bir istemi güvenlik ve netlik için yeniden yazar; JSON döner |
| GET | /chat/providers | API anahtarı veya JWT | Katalogda kayıtlı sağlayıcılar ve her birinin desteklenip desteklenmediği |
| GET | /models | API anahtarı veya JWT | Kiracınızın etkin kimlik bilgisine sahip olduğu modeller |
Tespit ve dosya uç noktaları
| Metot | Yol | Kimlik bilgisi | Açıklama |
|---|---|---|---|
| POST | /api/v1/guardrails/detect | API anahtarı veya JWT | Metni KKV, sır, toksisite ve jailbreak için tarar. 200 döner |
| POST | /image-analysis/analyze | JWT | Optik karakter tanıma (OCR) ile görüntü KKV'si, isteğe bağlı redaksiyonla |
| GET | /image-analysis/ocr-engines | JWT | Kullanılabilir OCR motorları |
| POST | /image-analysis/compare-ocr | JWT | Bir görüntüyü birden çok OCR motorundan geçirir |
| POST | /document-analysis/analyze | JWT | Base64 JSON'dan belge KKV'si |
| POST | /document-analysis/analyze-file | JWT | Multipart yüklemeden belge KKV'si |
| POST | /document-analysis/redact-jobs | JWT | Asenkron bir redaksiyon işi başlatır |
| GET | /document-analysis/redact-jobs/:jobId | JWT | Bir redaksiyon işini sorgular |
| GET | /document-analysis/supported-types | JWT | Kabul edilen belge türleri |
| GET | /document-analysis/:id/download | JWT | Redakte edilmiş belgeyi indirir |
Oturum uç noktaları
| Metot | Yol | Kimlik bilgisi | Açıklama |
|---|---|---|---|
| POST | /sessions | JWT | Boş bir konuşma oturumu oluşturur |
| GET | /sessions | JWT | Kiracının sohbet oturumlarını, en son kullanılan önce olacak şekilde listeler |
| GET | /sessions/:id | JWT | Tam mesaj geçmişiyle birlikte tek bir oturum |
| PATCH | /sessions/:id | JWT | Bir oturumu yeniden adlandırır |
| POST | /sessions/:id/messages | JWT | Oturumda mesaj gönderir; SSE döner |
| DELETE | /sessions/:id | JWT | Bir oturumu ve tespitlerini siler |
Kimlik doğrulama uç noktaları
| Metot | Yol | Kimlik bilgisi | Açıklama |
|---|---|---|---|
| POST | /auth/login | Yok | Kullanıcı adı ve parolayı JWT ile değiştirir. 200 döner |
| POST | /auth/forgot-password | Yok | Parola sıfırlama bağlantısı ister |
| POST | /auth/reset-password | Yok | Parola sıfırlamayı tamamlar |
| POST | /auth/change-password | JWT | Oturum açmış kullanıcının parolasını değiştirir |
İstek biçimi
İstekler Content-Type: application/json başlığıyla JSON'dur. "Hiçbir şey yapmayan" bir isteği
ayıklamadan önce bilinmesi gereken iki davranış vardır:
- Bilinmeyen alanlar reddedilmez, temizlenir. Doğrulama beyaz liste ile çalışır; uç noktanın tanımlamadığı bir gövde alanı sessizce kaldırılır ve istek devam eder. Yanlış yazılmış bir parametre, varsayılan davranışla başarılı bir çağrı üretir.
- Gövde sınırı 50 MB'dir (JSON ve URL kodlu gövdeler için). Görüntü analizi, çözülmüş görüntüyü bu sınırdan bağımsız olarak 10 MB ile; belge analizi ise yüklemeyi 20 MB ile sınırlar.
Yanıt biçimi
| Yüzey | İçerik türü |
|---|---|
POST /chat/completions | text/event-stream |
POST /sessions/:id/messages | text/event-stream |
| Diğer her şey | application/json |
İki akış uç noktası ayrıca Cache-Control: no-cache, Connection: keep-alive ve
X-Accel-Buffering: no başlıklarını gönderir.
Bir SSE yanıtı, her biri tek bir JSON nesnesi taşıyan data: satırlarından oluşur ve
data: [DONE] ile sonlanır:
Warning
Akışsız bir sohbet modu yoktur. POST /chat/completions, stream alanına ne yazarsanız yazın
text/event-stream döndürür ve modelin yanıtı token başına farklar hâlinde değil tek bir olayda
gelir. Olay listesinin tamamı Sohbet API'si sayfasındadır.
Hız sınırları
Hız sınırlama yalnızca kimlik doğrulaması gerektirmeyen oturum açma yüzeylerinde vardır ve istemci IP adresine göre anahtarlanır.
| Uç nokta | Sınır |
|---|---|
POST /auth/login | Dakikada 10 istek |
POST /auth/forgot-password | Dakikada 5 istek |
POST /auth/reset-password | Dakikada 5 istek |
POST /chat/completions ve POST /api/v1/guardrails/detect dahil diğer her uç nokta sınırsızdır.
CID222 hiçbir yanıtta X-RateLimit-Limit, X-RateLimit-Remaining veya X-RateLimit-Reset
başlığı göndermez ve katman başına istek veya token kotası yoktur. Sağlayıcı harcamasını bir ağ
geçidi kotasıyla değil, Token Maliyeti ve Tasarruf ile bütçeleyin.
Sayfalama
Sayfalama yalnızca yönetim liste uç noktaları için geçerlidir — GET /admin/api-keys,
GET /admin/models ve benzerleri. GET /sessions ve sohbet yüzeyi eksiksiz sonuç döndürür.
Sorgu parametreleri page (varsayılan 1) ve limit'tir (varsayılan 10):
Hatalar
Hata gövdesi tekbiçimli değildir. CID222 politika reddi makine tarafından okunabilir bir code
taşır; çerçeve düzeyindeki bir reddetme taşımaz. Önce HTTP durum koduna bakın.
| Kod | Durum | Anlamı |
|---|---|---|
SETUP_REQUIRED | 423 | İlk açılış kurulumu tamamlanmamıştır; küçük bir izin listesi dışındaki her şey kilitlidir |
LICENSE_EXPIRED | 402 | Lisans geçersiz veya süresi dolmuş. Sohbeti, tespiti, denetlemeyi, görüntü ve belge analizini engeller |
FEATURE_NOT_LICENSED | 403 | Rota, kurulu katmanın içermediği bir lisans özelliğiyle kısıtlanmıştır |
ROLE_NOT_FOR_CHAT | 403 | auditor rolü bir sohbet veya oturum yazma uç noktasını çağırdı |
READ_ONLY_ROLE | 403 | viewer rolü değişiklik yapan bir istek denedi |
İçerik engellemeleri HTTP hatası değildir. /chat/completions üzerinde engellenmiş bir istem veya
yanıt, 200 yanıtı içinde bir SSE olayı olarak gelir; yalnızca durum koduna bakan bir istemci
başarı görür. Akışı okuyun.
Notlar
- Yalnızca tespit
/api/v1altındadır. Önek yalnızca o denetleyiciye gömülüdür. Bunu genel bir sürüm öneki sanmak diğer her yerde 404 üretir. POST /api/v1/guardrails/detect, POST olmasına rağmen 201 değil 200 döndürür.- Tespit hiçbir zaman ham KKV döndürmez.
detectedEntities[].valuebir yer tutucu veya[REDACTED]'tır venormalization.originalTextkasıtlı olarak boştur. - Geri döngü veya özel adresten gelen kimlik doğrulamasız bir tespit çağrısı kiracı bağlamı olmadan kabul edilir. Bu, küme içindeki kırmızı takım servisi içindir. Diğer her çağıranın bir kimlik bilgisine ihtiyacı vardır.
İlgili
- Sohbet API'si — istek gövdesi ve SSE olay sözleşmesinin tamamı.
- Oturumlar API'si — sunucu tarafında konuşma durumu, yalnızca JWT.
- Kimlik doğrulama — anahtar oluşturma ve token alma.
Son güncelleme