Soru sor
CRM verisine doğal dilde soru: Yapay Zekâ modülü açıksa model yanıtlar (mode: ai), değilse kural tabanlı yanıt gelir (mode: kural). blocks ekrana çizilecek yapıdır, refs yanıtta geçen kayıtlar. Yalnız JSON gövde.
Yetkilendirme
AuthorizationheaderzorunluBearer belirteci: API anahtarı (sk_…), OAuth erişim belirteci (mcp_…) ya da mobil oturum (xk_…).
Kapsam:
crm.readGövde application/json
qstringzorunluSoru.
historyarrayisteğe bağlıÖnceki sorular / yanıtlar (sohbet bağlamı).
Hatalar
| HTTP | error | Anlamı |
|---|---|---|
400 | invalid | Eksik ya da geçersiz alan (`message` ayrıntıyı verir). |
429 | limit | Kullanıcı başına saatlik soru sınırı (40) doldu. |
İstek
curl -X POST https://ornek.solk.app/api/v1/ask \
-H "Authorization: Bearer $SOLK_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"q": "Bu hafta geciken aksiyonlarım neler?"
}'const res = await fetch("https://ornek.solk.app/api/v1/ask", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.SOLK_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
"q": "Bu hafta geciken aksiyonlarım neler?"
}),
});
const data = await res.json();import os, requests
r = requests.post(
"https://ornek.solk.app/api/v1/ask",
headers={"Authorization": f"Bearer {os.environ['SOLK_API_KEY']}"},
json={
"q": "Bu hafta geciken aksiyonlarım neler?"
},
)
print(r.json())Yanıt
{
"ai": false,
"blocks": [
{
"muted": false,
"spans": [
{
"b": true,
"text": "Gecikmiş 2 görev"
}
],
"t": "p"
},
{
"muted": false,
"spans": [
{
"b": false,
"nav": {
"id": 17,
"kind": "task",
"screen": "action"
},
"text": "Fiyat listesini güncelleyip gönder",
"url": "/action/task/17"
}
],
"t": "li"
}
],
"mode": "kural",
"ok": true,
"q": "Bu hafta geciken aksiyonlarım neler?",
"refs": [
{
"kind": "task",
"label": "Fiyat listesini güncelleyip gönder",
"nav": {
"id": 17,
"kind": "task",
"screen": "action"
},
"url": "/action/task/17"
},
{
"kind": "task",
"label": "Yeni hat devreye alma toplantısı",
"nav": {
"id": 8,
"kind": "task",
"screen": "action"
},
"url": "/action/task/8"
}
],
"text": "**Gecikmiş 2 görev** (sizin)\n- [Fiyat listesini güncelleyip gönder](/action/task/17) · 26.09.2026 · Hanımeli Etiket San. Tic. Ltd. Şti.\n- [Yeni hat devreye alma toplantısı](/action/task/8) · 30.09.2026 · Işıltı Film A.Ş."
}Örnek yanıt örnek veriyle çalışan bir v22 kurulumundan alındı; listeler en çok iki öğeyle kısaltıldı.