Görevler API’si
Görevler, hesabınıza eklenmiş yapılacak işler ve takiplerdir; isteğe bağlı olarak bir kişi, anlaşma veya kampanya ile ilişkilendirilebilirler. Görev panonuzun (kanban sütunlarınız) aşamaları boyunca ilerlerler ve bir tür ile önceliğe sahiptirler. Bu kılavuz, bunları API üzerinden nasıl yöneteceğinizi kapsar.
- Temel URL —
https://api.youraiconnector.com/v1 - Kimlik Doğrulama — API anahtarınız (bkz. Kimlik Doğrulama)
- Hatalar ve sayfalama — bkz. Hatalar ve Sayfalama
Aşağıdaki tüm örnekler cURL’de ?apiKey= sorgu biçimini ve JavaScript ile Python’da X-API-Key başlığını göstermektedir; her ikisi de her uç noktada çalışır.
Görev nesnesi
{
"id": "tsk_abc123",
"title": "Call Jane about her quote",
"description": "She asked for pricing on the annual plan.",
"type": "to_do",
"priority": "high",
"stage": "stage-1",
"due_date": "2026-06-15T09:00:00.000Z",
"remind_before_minutes": 15,
"contact": "contacts/uid_whatsapp_15551234567",
"campaign": "campaigns/abc123",
"tags": ["sales"],
"notes": "",
"source": "api"
}
type—to_do,faq_updateveya yapılandırılmış görev türleriniz (bkz. Görev türlerini listele).priority—none,low,normal,highveyaurgent.stage— görev panonuzdaki bir aşamanın kimliği (bkz. Görev aşamalarını listele). Oluşturma sırasında belirtilmezse, görev ilk aşamanıza eklenir.remind_before_minutes—due_dateöncesinde hatırlatıcının gönderileceği dakika sayısı.0, son teslim zamanında anlamına gelir; atlayın veya hatırlatıcı olmaması içinnullgönderin.0ile1440(1 gün) arasında bir tam sayı olmalıdır; daha büyük değerler reddedilir. Hatırlatıcının tetiklenmesi için birdue_dategerekir ve görevin yeniden zamanlanması hatırlatıcıyı da onunla birlikte taşır.
Görev oluşturma
POST /tasks — yalnızca title zorunludur.
Not: due_date, günün saati dahil olmak üzere bir ISO 8601 zaman damgası kabul eder. Hatırlatıcının Görevler bildirim ayarlarınızda iletilmesi için bunu remind_before_minutes ile eşleştirin. contact_id, deal_id ve campaign_id, görevi ilgili kayıtlara bağlar. assigned_to, bir ekip üyesinin kullanıcı kimliğidir.
assigned_todoğru ayarlamak. Bu, hesap sahibinin veya aynı hesaptaki aktif bir ekip üyesinin kullanıcı kimliği olmalıdır. Bu uç nokta şu anda bunu kontrol etmemektedir, bu nedenle hiç kimseye ait olmayan bir kimlik kabul edilir ve tam olarak gönderdiğiniz şekilde saklanır — yine de bir201alırsınız. Kimliği yeniden yazmak yerine kopyalayın: bu kimliklerlileL’ü veOharfi ile0rakamını karıştırır ve tek bir yanlış karakter yeterlidir. Gerçekte ne gönderdiğinizi kontrol etmek için panodaki görevi açın: görev kaydındaki Atanan alanı, kimseyle eşleşmediğinde ham kimliği göstermeye geri döner ve Görevi düzenle içindeki atanan seçici Atanmamış gösterir.
cURL
curl -X POST "https://api.youraiconnector.com/v1/tasks?apiKey=YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"title": "Call Jane about her quote",
"priority": "high",
"due_date": "2026-06-15T09:00:00.000Z",
"contact_id": "uid_whatsapp_15551234567",
"tags": ["sales"]
}'
JavaScript
const res = await fetch("https://api.youraiconnector.com/v1/tasks", {
method: "POST",
headers: { "X-API-Key": "YOUR_API_KEY", "Content-Type": "application/json" },
body: JSON.stringify({
title: "Call Jane about her quote",
priority: "high",
due_date: "2026-06-15T09:00:00.000Z",
contact_id: "uid_whatsapp_15551234567",
tags: ["sales"],
}),
});
const data = await res.json();
console.log(data.task_id);
Python
import requests
res = requests.post(
"https://api.youraiconnector.com/v1/tasks",
headers={"X-API-Key": "YOUR_API_KEY"},
json={
"title": "Call Jane about her quote",
"priority": "high",
"due_date": "2026-06-15T09:00:00.000Z",
"contact_id": "uid_whatsapp_15551234567",
"tags": ["sales"],
},
)
print(res.json()["task_id"])
Yanıt (201)
{ "success": true, "task_id": "tsk_abc123", "task": { "title": "Call Jane about her quote", "...": "..." } }
Görevleri listeleme
GET /tasks — hesabınızdaki görevleri, isteğe bağlı filtrelerle birlikte döndürür.
Sorgu parametreleri (hepsi isteğe bağlıdır): stage, priority, contact_id, deal_id, assigned_to, due_before, due_after (ISO zaman damgaları).
cURL
curl "https://api.youraiconnector.com/v1/tasks?apiKey=YOUR_API_KEY&stage=stage-1&priority=high"
JavaScript
const res = await fetch("https://api.youraiconnector.com/v1/tasks?stage=stage-1&priority=high", {
headers: { "X-API-Key": "YOUR_API_KEY" },
});
const { tasks } = await res.json();
Python
res = requests.get(
"https://api.youraiconnector.com/v1/tasks",
headers={"X-API-Key": "YOUR_API_KEY"},
params={"stage": "stage-1", "priority": "high"},
)
tasks = res.json()["tasks"]
Yanıt (200)
{ "success": true, "tasks": [{ "id": "tsk_abc123", "title": "Call Jane about her quote", "...": "..." }] }
Görevleri ara
POST /tasks/search — listeleme ile aynı isteğe bağlı filtrelere sahip, başlık ve açıklama üzerinde tam metin eşleşmesi.
curl -X POST "https://api.youraiconnector.com/v1/tasks/search?apiKey=YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "query": "quote", "priority": "high" }'
const res = await fetch("https://api.youraiconnector.com/v1/tasks/search", {
method: "POST",
headers: { "X-API-Key": "YOUR_API_KEY", "Content-Type": "application/json" },
body: JSON.stringify({ query: "quote", priority: "high" }),
});
res = requests.post(
"https://api.youraiconnector.com/v1/tasks/search",
headers={"X-API-Key": "YOUR_API_KEY"},
json={"query": "quote", "priority": "high"},
)
Bir görev al
GET /tasks/{taskId}
curl "https://api.youraiconnector.com/v1/tasks/tsk_abc123?apiKey=YOUR_API_KEY"
const res = await fetch("https://api.youraiconnector.com/v1/tasks/tsk_abc123", { headers: { "X-API-Key": "YOUR_API_KEY" } });
res = requests.get("https://api.youraiconnector.com/v1/tasks/tsk_abc123", headers={"X-API-Key": "YOUR_API_KEY"})
Hesabınızda bulunmayan bir görev 404 döndürür.
Bir görevi güncelle
PUT /tasks/{taskId} — yalnızca değiştirmek istediğiniz alanları gönderin (title, description, type, priority, stage, due_date, remind_before_minutes, contact_id, deal_id, assigned_to, tags, notes).
curl -X PUT "https://api.youraiconnector.com/v1/tasks/tsk_abc123?apiKey=YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "priority": "urgent", "notes": "Left a voicemail." }'
await fetch("https://api.youraiconnector.com/v1/tasks/tsk_abc123", {
method: "PUT",
headers: { "X-API-Key": "YOUR_API_KEY", "Content-Type": "application/json" },
body: JSON.stringify({ priority: "urgent", notes: "Left a voicemail." }),
});
requests.put(
"https://api.youraiconnector.com/v1/tasks/tsk_abc123",
headers={"X-API-Key": "YOUR_API_KEY"},
json={"priority": "urgent", "notes": "Left a voicemail."},
)
Bir görevi tamamla
POST /tasks/{taskId}/complete — görevi panonuzun tamamlanan aşamasına taşır. İsteğe bağlı bir notes alanı, bir kapanış notu kaydeder.
curl -X POST "https://api.youraiconnector.com/v1/tasks/tsk_abc123/complete?apiKey=YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "notes": "Closed — customer signed up." }'
await fetch("https://api.youraiconnector.com/v1/tasks/tsk_abc123/complete", {
method: "POST",
headers: { "X-API-Key": "YOUR_API_KEY", "Content-Type": "application/json" },
body: JSON.stringify({ notes: "Closed — customer signed up." }),
});
requests.post(
"https://api.youraiconnector.com/v1/tasks/tsk_abc123/complete",
headers={"X-API-Key": "YOUR_API_KEY"},
json={"notes": "Closed — customer signed up."},
)
Taşı ve yeniden sırala (kanban)
Bir görevi başka bir aşamaya taşıyın — POST /tasks/{taskId}/move, new_stage_id (hedef aşama) ve new_position (o aşama içindeki sıfır tabanlı yuva; gereklidir, negatif olmayan bir tam sayı olmalıdır) ile:
curl -X POST "https://api.youraiconnector.com/v1/tasks/tsk_abc123/move?apiKey=YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "new_stage_id": "stage-2", "new_position": 0 }'
Bir aşama içindeki görevleri yeniden sıralayın — POST /tasks/reorder, stage_id ve görev kimlikleri yeni sıralarıyla:
curl -X POST "https://api.youraiconnector.com/v1/tasks/reorder?apiKey=YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "stage_id": "stage-1", "ordered_task_ids": ["tsk_3", "tsk_1", "tsk_2"] }'
await fetch("https://api.youraiconnector.com/v1/tasks/reorder", {
method: "POST",
headers: { "X-API-Key": "YOUR_API_KEY", "Content-Type": "application/json" },
body: JSON.stringify({ stage_id: "stage-1", ordered_task_ids: ["tsk_3", "tsk_1", "tsk_2"] }),
});
requests.post(
"https://api.youraiconnector.com/v1/tasks/reorder",
headers={"X-API-Key": "YOUR_API_KEY"},
json={"stage_id": "stage-1", "ordered_task_ids": ["tsk_3", "tsk_1", "tsk_2"]},
)
Bir kişi için görevler
GET /tasks/contact/{contactId} — bir kişiyle bağlantılı her görev.
curl "https://api.youraiconnector.com/v1/tasks/contact/uid_whatsapp_15551234567?apiKey=YOUR_API_KEY"
const res = await fetch("https://api.youraiconnector.com/v1/tasks/contact/uid_whatsapp_15551234567", { headers: { "X-API-Key": "YOUR_API_KEY" } });
res = requests.get("https://api.youraiconnector.com/v1/tasks/contact/uid_whatsapp_15551234567", headers={"X-API-Key": "YOUR_API_KEY"})
Görev panosu yapılandırması
Görev aşamalarını listele
GET /tasks/stages — panonuzun sütunları, sıralı bir şekilde. Görev oluştururken veya taşırken bir aşama id değerini stage alanı olarak kullanın.
curl "https://api.youraiconnector.com/v1/tasks/stages?apiKey=YOUR_API_KEY"
{ "success": true, "stages": [{ "id": "stage-1", "name": "To Do", "is_completed_stage": false }, { "id": "stage-done", "name": "Done", "is_completed_stage": true }] }
Görev aşamalarını güncelle
PUT /tasks/stages — panonuzun aşama yapılandırmasını değiştirin. Tam sıralı stages dizisini gönderin.
curl -X PUT "https://api.youraiconnector.com/v1/tasks/stages?apiKey=YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "stages": [
{ "id": "stage-1", "name": "To Do", "is_completed_stage": false },
{ "id": "stage-2", "name": "In Progress", "is_completed_stage": false },
{ "id": "stage-done", "name": "Done", "is_completed_stage": true }
] }'
Görev türlerini listele
GET /tasks/types — hesabınızda yapılandırılmış görev türleri (type alanı olarak kullanılır).
curl "https://api.youraiconnector.com/v1/tasks/types?apiKey=YOUR_API_KEY"
Bir SSS önerisini onaylayın
AI botu yeni bir SSS önerdiğinde, faq_update türünde bir görev oluşturur. POST /tasks/{taskId}/approve-faq, bu öneriyi onu oluşturan AI temsilcisinin bilgi tabanında gerçek bir SSS’ye dönüştürür ve görevi tamamlar. Gövde kısmındaki soru/cevap bölümünü geçersiz kılabilirsiniz.
AI’nın cevabı görevin bağlantılı kişisine anında, o sohbette doğal bir mesaj olarak göndermesini sağlamak için "send_follow_up": true ekleyin (bu, uygulamadaki Cevabı şimdi kişiye gönder düğmesinin yaptığı işle aynıdır). Yanıt, o kişiyle ilgilenen AI temsilcisi aracılığıyla gönderilir.
curl -X POST "https://api.youraiconnector.com/v1/tasks/tsk_faq99/approve-faq?apiKey=YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "question": "Do you offer refunds?", "answer": "Yes, within 30 days.", "send_follow_up": true }'
{ "success": true, "faq_id": "faq_xyz", "task_id": "tsk_faq99", "follow_up_status": "published" }
follow_up_status size mesaja ne olduğunu bildirir: not_requested (bayrak ayarlanmadı), published (gönderildi), queued (bot o kişiyle yanıt verme aşamasındaydı, cevap biter bitmez gönderilecek), skipped_no_contact (görevin bağlantılı olduğu bir kişi yok), skipped_no_campaign (o kişi için yanıt verebilecek bir temsilci veya kampanya yok) veya skipped_error. SSS her durumda oluşturulur.
Oluşturulan SSS’yi yönetmek için SSS API bölümüne bakın.
Bir görevi silin
DELETE /tasks/{taskId}
curl -X DELETE "https://api.youraiconnector.com/v1/tasks/tsk_abc123?apiKey=YOUR_API_KEY"
await fetch("https://api.youraiconnector.com/v1/tasks/tsk_abc123", { method: "DELETE", headers: { "X-API-Key": "YOUR_API_KEY" } });
requests.delete("https://api.youraiconnector.com/v1/tasks/tsk_abc123", headers={"X-API-Key": "YOUR_API_KEY"})
Sonraki adımlar
- Kişiler API’si — görevleri doğru kişiyle ilişkilendirin
- Webhooks API —
Task Created,Task UpdatedveTask Completedhakkında bildirim alın - API Referansı — tam etkileşimli uç nokta gezgini