Hızlı Başlangıç
Bu rehber sizi dört adımda sıfırdan akışlı bir AI yanıtına ulaştırır. Sonunda kimlik doğrulaması yapmış, bir AI oturumu oluşturmuş, bir mesaj göndermiş ve akış halinde bir yanıt almış olacaksınız.
Tüm örnekler cURL, JavaScript, Python ve Postman biçiminde mevcuttur. YOUR_API_KEY gibi yer tutucu değerleri önceki adımlardan aldığınız gerçek değerlerle değiştirin.
Ortam Değişkenleri
Bu sayfadaki herhangi bir örneği çalıştırmadan önce bunları ayarlayın:
export BASE_URL="https://api.chainabit.com/api/v1"
export API_KEY="chb_sk_your_key_here"Henüz bir API anahtarınız yok mu? API anahtarları bir Chainer aboneliği gerektirir. Hub ayarlarından nasıl anahtar üreteceğinizi öğrenmek için Geliştirici Erişimi sayfasına bakın.
Oturum tabanlı JWT kimlik doğrulamasını tercih ediyorsanız Kimlik Doğrulama sayfasına bakın.
Adım 1: Bir AI Oturumu Oluşturun
Oturum, kalıcı bir konuşma dizisidir. Tanımlamak için bir başlıkla bir tane oluşturun.
curl -X POST "$BASE_URL/ai/sessions" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{"title": "My First Session"}'const response = await fetch(`${BASE_URL}/ai/sessions`, {
method: 'POST',
headers: {
Authorization: `Bearer ${API_KEY}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({ title: 'My First Session' }),
});
const { data } = await response.json();
const SESSION_ID = data.id;import requests
response = requests.post(
f"{BASE_URL}/ai/sessions",
json={"title": "My First Session"},
headers={"Authorization": f"Bearer {API_KEY}"},
)
data = response.json()["data"]
SESSION_ID = data["id"]Yanıt 201 Created
{
"data": {
"id": "sess_01HQ3K5N2P4R7T9V1X3Z5A7C9E",
"title": "My First Session",
"status": "active",
"createdAt": "2026-05-04T10:00:00.000Z"
},
"meta": null,
"error": null
}id değerini kopyalayın — bir sonraki adımda kullanacaksınız.
export SESSION_ID="sess_01HQ3K5N2P4R7T9V1X3Z5A7C9E"Adım 2: Bir Mesaj Gönderin
Oturuma bir mesaj gönderin. API düz metin içeriği kabul eder.
curl -X POST "$BASE_URL/ai/sessions/$SESSION_ID/messages" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{"content": "What can I build with the Chainabit API?"}'const response = await fetch(
`${BASE_URL}/ai/sessions/${SESSION_ID}/messages`,
{
method: 'POST',
headers: {
Authorization: `Bearer ${API_KEY}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({ content: 'What can I build with the Chainabit API?' }),
}
);
const { data } = await response.json();
const MESSAGE_ID = data.id;import requests
response = requests.post(
f"{BASE_URL}/ai/sessions/{SESSION_ID}/messages",
json={"content": "What can I build with the Chainabit API?"},
headers={"Authorization": f"Bearer {API_KEY}"},
)
data = response.json()["data"]
MESSAGE_ID = data["id"]Yanıt 201 Created
{
"data": {
"id": "msg_01HQ3K7R2S5T8V2Y4A6C8E1G3I",
"sessionId": "sess_01HQ3K5N2P4R7T9V1X3Z5A7C9E",
"role": "user",
"content": "What can I build with the Chainabit API?",
"status": "pending",
"createdAt": "2026-05-04T10:00:05.000Z"
},
"meta": null,
"error": null
}export MESSAGE_ID="msg_01HQ3K7R2S5T8V2Y4A6C8E1G3I"Adım 3: Yanıtı Akış Halinde Alın
AI yanıtını gerçek zamanlı almak için bir sunucu-gönderimli olay (SSE) akışı açın.
curl "$BASE_URL/ai/sessions/$SESSION_ID/messages/$MESSAGE_ID/stream" \
-H "Authorization: Bearer $API_KEY" \
-H "Accept: text/event-stream"const eventSource = new EventSource(
`${BASE_URL}/ai/sessions/${SESSION_ID}/messages/${MESSAGE_ID}/stream`,
{ headers: { Authorization: `Bearer ${API_KEY}` } }
);
eventSource.addEventListener('message.delta', (e) => {
const { delta } = JSON.parse(e.data);
process.stdout.write(delta);
});
eventSource.addEventListener('message.completed', () => {
eventSource.close();
});import requests
with requests.get(
f"{BASE_URL}/ai/sessions/{SESSION_ID}/messages/{MESSAGE_ID}/stream",
headers={"Authorization": f"Bearer {API_KEY}", "Accept": "text/event-stream"},
stream=True,
) as r:
for line in r.iter_lines():
if line:
print(line.decode())SSE Çıktısı
event: message.delta
data: {"delta": "You can build"}
event: message.delta
data: {"delta": " AI-agent workflows,"}
event: message.delta
data: {"delta": " integrate connectors, and automate pipelines."}
event: message.completed
data: {"messageId": "msg_01HQ3K7R2S5T8V2Y4A6C8E1G3I", "finishReason": "stop"}Tam yanıtı oluşturmak için message.delta olaylarını toplayın. message.completed geldiğinde akışı kapatın.
Sırada Ne Var
- Geliştirici Erişimi sayfasından doğru kapsamlara sahip bir API anahtarı edinin.
- Kimlik Doğrulama sayfasında JWT oturum kimlik doğrulamasını anlayın.
- İlk AI Oturumunuzu Çalıştırın rehberinde tam bir AI oturumu eğitimini adım adım izleyin.
- Tüm oturum, mesaj ve akış uç noktaları için eksiksiz AI API Referansı belgesine göz atın.