Geliştiriciler
API başvurusu
REST API’nin tamamı: her uç nokta, parametre ve yanıt, dokuz dilde hazır örneklerle. Örnekler anahtarını TODIX_TOKEN ortam değişkeninden okur.
Örnek dili
Seçtiğin dil sayfadaki bütün örneklerde kullanılır ve bu cihazda hatırlanır.
Her istek bir kişisel erişim anahtarıyla gelir: Authorization: Bearer tdx_…. Anahtarı Todix’te Entegrasyonlar → API sayfasından oluşturursun.
- Her anahtar bir kişiye ve bir çalışma alanına bağlıdır, o kişinin uygulamadaki yetkileriyle çalışır. Uygulamada göremediğin bir görevi API de göstermez.
- İzinler (scope) anahtarın neye dokunabileceğini sınırlar, yetki vermez. Yalnız ihtiyacın olanları seç.
- Anahtar yoksa, biçimsizse, süresi dolmuşsa ya da iptal edildiyse yanıt hep aynıdır:
401 invalid_token. - Anahtarı koda yazma; örneklerdeki gibi
TODIX_TOKENortam değişkeninde tut. Bir anahtar kendiniDELETE /api/v1/tokenile iptal edebilir. - API tarayıcıdan başka sitelerden çağrılamaz (CORS kapalı). İstekleri kendi sunucundan gönder.
İzinler
| İzin | Neye izin verir |
|---|---|
| tasks:read | Görevleri oku · Görevler, yorumlar, etiketler ve üyeler |
| tasks:write | Görev yaz · Oluştur, güncelle, tamamla, çöpe at, ata, etiketle |
| projects:read | Projeleri oku · Projeler ve bölümleri |
| projects:write | Proje yaz · Proje ve bölüm oluştur, güncelle |
| comments:write | Yorum yaz · Görev sohbetine yorum gönder |
| webhooks:manage | Webhook yönet · Yalnız yöneticiler için çalışır |
| mcp | Asistan bağlantısı (MCP) · Claude, ChatGPT gibi asistanlar için |
| hooks | Anında tetikleyiciler · Bir şey olunca adresine haber gelsin (Zapier, Make) |
Üç adımda ilk görevin: anahtar oluştur, ortam değişkenine koy, isteği gönder.
- Todix’te Entegrasyonlar → API’den tasks:write izinli bir anahtar oluştur.
- Anahtarı TODIX_TOKEN ortam değişkenine koy: export TODIX_TOKEN=tdx_…
- Yandaki isteği gönder. Yanıtta yeni görevin numarası ve adresi gelir.
Başarısız her istek aynı biçimde döner: { "error": { "code", "message" } }. code makineler içindir ve değişmez; message geliştiriciye kısa bir İngilizce ipucudur.
HTTP durum kodları
| Durum | Anlamı |
|---|---|
| 400 | İstek hatalı: gövde ya da sorgu şemaya uymuyor, filtre ya da imleç geçersiz. |
| 401 | Anahtar yok, biçimsiz, süresi dolmuş ya da iptal edilmiş. |
| 403 | Anahtarın izni ya da uygulamadaki yetkin bu işe yetmiyor. |
| 404 | Kayıt yok ya da göremiyorsun; ya da böyle bir yol yok. |
| 405 | Bu yol bu yöntemi desteklemiyor (yanıttaki Allow başlığına bak). |
| 409 | Çakışma: aynı Idempotency-Key ile istek sürüyor ya da kayıt zaten var. |
| 413 | Gövde 64 KB’tan büyük. |
| 415 | Gövde JSON değil: Content-Type: application/json gönder. |
| 422 | Bu Idempotency-Key başka bir gövdeyle kullanılmış. |
| 429 | Hız sınırı aşıldı; Retry-After saniye kadar bekle. |
| 5xx | Bizde geçici bir sorun var; biraz sonra yeniden dene. |
Sık karşılaşılan kodlar
| Kod | Anlamı |
|---|---|
| invalid_token | Anahtar yok, biçimsiz, süresi dolmuş ya da iptal edilmiş. |
| insufficient_scope | Anahtarın bu uç noktanın istediği izni yok. |
| rate_limited | Çok fazla istek. X-RateLimit-Reset zamanına kadar bekle. |
| not_found | Bulunamadı. |
| route_not_found | Böyle bir uç nokta yok. |
| method_not_allowed | Bu uç nokta bu yöntemi desteklemiyor. |
| bad_request | İstek hatalı. |
| invalid_body | JSON gövdesi yok ya da şemaya uymuyor. |
| invalid_query | Bir sorgu parametresi geçersiz. |
| invalid_filter | Akıllı filtre ifadesi çözümlenemedi. |
| invalid_cursor | İmleç geçersiz. İmleçsiz, baştan başla. |
| idempotency_key_invalid | Idempotency-Key 1–100 karakter olmalı: A–Z, a–z, 0–9 ve _ . : - |
| idempotency_key_reused | Bu Idempotency-Key başka bir istekle kullanıldı. |
| idempotency_in_progress | Bu Idempotency-Key ile gelen istek hâlâ sürüyor. |
| payload_too_large | Gövde çok büyük (en çok 64 KB). |
| unsupported_media_type | JSON gönder (Content-Type: application/json). |
| unavailable | Hizmet geçici olarak kullanılamıyor. Biraz sonra yeniden dene. |
| unknown | İstek tamamlanamadı. |
| not_a_member | Bu çalışma alanının üyesi değilsin. |
| admin_required | Bunu yalnız çalışma alanı yöneticileri yapabilir. |
| task_not_found | Görev yok ya da göremiyorsun. |
| assign_not_allowed | Bu kişiye görev atayamazsın. |
| forbidden | Bunu yapamazsın. |
| webhook_url_invalid | Webhook adresi HTTPS olmalı ve herkese açık bir ada çıkmalı. |
| webhook_address_blocked | Webhook adresi özel ya da ayrılmış bir IP’ye çıkıyor. |
| webhook_events_invalid | Bilinmeyen webhook olayı. |
| webhook_limit | Bir çalışma alanında en çok 20 webhook olabilir. |
| webhook_not_found | Webhook bulunamadı. |
| webhook_disabled | Webhook kapalı. Önce aç. |
| project_not_found | Proje bulunamadı ya da onu göremiyorsun. |
| hook_not_found | Tetikleyici bulunamadı; zaten kaldırılmış olabilir. |
| hook_event_invalid | Bu olay için tetikleyici kurulamaz. |
| hook_limit | Bir çalışma alanında en çok 100 etkin tetikleyicin olabilir. |
| hook_needs_api | Tetikleyiciler yalnız API anahtarı ya da Zapier / Make bağlantısıyla kurulur. |
Listeler sayfalıdır: { "data": [...], "next_cursor": "…" }. Sonraki sayfa için next_cursor değerini ?cursor= ile gönder; null gelince liste biter.
limit1–200 arası, varsayılan 50.- Görevler görev numarasına göre yeniden eskiye sıralanır; arada yeni görev açılsa bile sayfalar kaymaz.
- Akıllı filtreyle bir sayfa
limit’ten az görev içerebilir, hatta boş gelebilir. Sayfa boyuna değilnext_cursor’a bak. - İmleç şeffaf değildir; içini çözme, olduğu gibi geri gönder.
Anahtar başına dakikada 120 istek. Her yanıt kalan hakkını söyler.
X-RateLimit-Limit: dakikadaki hak ·X-RateLimit-Remaining: kalan ·X-RateLimit-Reset: pencerenin sıfırlandığı unix zamanı.- Sınırı aşınca
429 rate_limitedveRetry-After(saniye) döner; o kadar bekleyip yeniden dene. - Geçersiz anahtarla gelen istekler IP başına dakikada 30 ile sınırlıdır.
- MCP bağlantısı aynı sayacı kullanır.
Her POST isteği bir Idempotency-Key başlığı alabilir. Ağ koptuğunda aynı isteği aynı anahtarla yeniden gönder: iş iki kez yapılmaz.
- Anahtar 1–100 karakter: A–Z, a–z, 0–9 ve
_ . : -. Her yeni iş için yeni bir değer (ör. UUID) üret. - Aynı anahtar ve aynı gövde: ilk yanıt aynen döner,
Idempotent-Replayed: truebaşlığıyla. - Aynı anahtar, farklı gövde:
422 idempotency_key_reused. İlk istek sürerken:409 idempotency_in_progress. - Anahtarlar 24 saat saklanır.
5xxyanıtında anahtar serbest kalır, yeniden deneyebilirsin.
GET /tasks isteğinin filter parametresi, uygulamadaki akıllı filtre ifadesini alır. Türkçe ya da İngilizce anahtar sözcükler, büyük-küçük harf ve aksan fark etmez.
İfadeler
| İfade | Anlamı |
|---|---|
| p1 · p2 · p3 | Yüksek, orta, düşük öncelik (!yüksek, !high da olur) |
| bugün · yarın · gecikmiş | Hedef tarihe göre (today, tomorrow, overdue) |
| bu hafta · gelecek hafta · bu ay · 7 gün · tarihsiz | Tarih aralıkları |
| başlangıç:bu hafta · son:yarın | Başlangıç tarihi ya da son tarih |
| @ersin · @ben | Sorumlu (@me) |
| atayan:@burak · oluşturan:@ben | Görevi veren ya da oluşturan |
| #"Kasım kampanyası" · #yok | Proje ya da projesiz |
| etiket:acil | Etiket (label:acil) |
| durum:yapılıyor | Aşama: yapılacak, yapılıyor, bekliyor, bitti |
| tahmin>2s · tahmin<=30dk | Süre tahmini |
| "kargo" | Başlıkta ya da açıklamada geçen metin |
| & | ! ( ) | ve, veya, değil, gruplama (boşluk da “ve” demektir) |
Filtre diğer parametrelerle VE ile birleşir. Çözümlenemeyen ifade 400 invalid_filter döner.
Webhook’lar her isteği imzalar: Todix-Signature: t=<zaman>, v1=<imza>. İmza, “zaman.gövde” metninin webhook’un imza anahtarıyla HMAC-SHA256 özetidir (hex).
- İmzayı ham gövdeyle hesapla (JSON’u çözüp yeniden yazma), sabit zamanlı karşılaştır.
- Zamanı 5 dakikadan eski istekleri reddet: tekrar oynatmaya karşı korur.
- Anahtar yenilenirken bir başlıkta birden çok
v1gelebilir; biri eşleşmesi yeter. 2xxyanıt teslim demektir. Başarısızlar 1 dk, 5 dk, 30 dk, 2 sa ve 8 sa sonra yeniden denenir; art arda 15 hatada webhook kapanır.- Diğer başlıklar:
Todix-Event(olay türü),Todix-Delivery(teslim kimliği). Aynı teslim yeniden denenirse aynı gövde gelir.
Olaylar
| Olay | Anlamı |
|---|---|
| task.created | Görev oluşturuldu |
| task.updated | Görev güncellendi |
| task.completed | Görev tamamlandı |
| task.deleted | Görev çöpe atıldı |
| comment.created | Yorum yazıldı |
| project.created | Proje oluşturuldu |
Todix’in uzak MCP sunucusu Claude, ChatGPT, Claude Code, Cursor ve VS Code gibi yapay zekâ asistanlarını görevlerine bağlar.
Sunucu adresihttps://todix.com.tr/api/mcp
- Claude ve ChatGPT OAuth ile bağlanır: adresi “özel bağlayıcı” olarak ekle, Todix’te çalışma alanını seç ve onayla. Anahtar kopyalamazsın.
- Cursor ve VS Code
mcpizinli bir anahtarla bağlanır. Todix’te Entegrasyonlar → MCP hazır yapılandırmayı anahtarınla birlikte verir. - Araçlar: çalışma alanları, günüm, görev ara, getir, oluştur, güncelle, tamamla, yorum yaz, projeler, üyeler. Yalnız okuma bağlantısında yazma araçları görünmez.
- MCP de senin yetkilerinle çalışır ve REST API ile aynı dakikalık sınırı paylaşır.
Anahtarın kişisi, çalışma alanı ve izinleri.
Alanlar
userobjectAnahtarın kişisi.
4 alt alanı göster
iduuidKimlik (uuid).
namestringAd.
emailemailE-posta adresi.
localeenumKişinin arayüz dili.
tren
workspaceobjectAnahtarın bağlı olduğu çalışma alanı.
6 alt alanı göster
iduuidKimlik (uuid).
namestringAd.
slugstringÇalışma alanının adresteki kısa adı.
timezonestringÇalışma alanının saat dilimi.
todaydateÇalışma alanının saatine göre bugünün tarihi.
roleenumnull olabilirRol: admin yönetici, member üye.
adminmember
tokenobjectKullanılan anahtar.
2 alt alanı göster
iduuidKimlik (uuid).
scopesenum[]Anahtarın izinleri.
tasks:readtasks:writeprojects:readprojects:writecomments:writewebhooks:managemcphooks
Saat dilimi ve o günün tarihiyle birlikte.
Alanlar
iduuidKimlik (uuid).
namestringAd.
slugstringÇalışma alanının adresteki kısa adı.
timezonestringÇalışma alanının saat dilimi.
todaydateÇalışma alanının saatine göre bugünün tarihi.
roleenumnull olabilirRol: admin yönetici, member üye.
adminmember
/api/v1/meAnahtarın bağlı olduğu kişiyi, çalışma alanını (saat dilimi ve bugünün tarihi dahil) ve izinlerini döner. Bağlantıyı denemenin en kolay yolu.
Yanıtlar
- 200
Başarılı
Döner: Anahtar bilgisi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
/api/v1/workspacesAnahtarın ulaşabildiği çalışma alanları. Bir anahtar tek bir çalışma alanına bağlı olduğundan liste tek kayıttır.
Yanıtlar
- 200
Başarılı
Sayfalı liste döner: Çalışma alanı nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
9 uç nokta
Görev oluştur, oku, güncelle, tamamla; sorumluları ve etiketleri yönet. Yollardaki {ref} görev numarası (42) ya da kimliğidir.
Listelerde ve tek görevde aynı alanlar; açıklama listelerde kısaltılır.
Alanlar
iduuidKimlik (uuid).
numberintegerÇalışma alanındaki görev numarası (#42).
titlestringGörevin başlığı.
descriptionstringGörevin açıklaması. Listelerde ilk 280 karakter, tek görevde tamamı gelir.
statusenumopen açık, done tamamlandı.
opendonestageenumnull olabilirAşama: todo yapılacak, doing yapılıyor, waiting beklemede.
tododoingwaitingpriorityenumÖncelik: high yüksek, medium orta, low düşük.
highmediumlowdue_datedatenull olabilirHedef tarih (YYYY-AA-GG).
due_timestringnull olabilirHedef saati (SS:DD), çalışma alanının saatine göre.
start_datedatenull olabilirBaşlangıç tarihi.
deadlinedatenull olabilirSon tarih: hedefin kaçırılamayacak sınırı.
estimate_minutesintegernull olabilirSüre tahmini, dakika.
recurrencestringnull olabilirTekrar kuralı (yoksa null).
is_overduebooleanHedef tarihi geçmiş ve hâlâ açık.
projectobjectnull olabilirGörevin projesi.
3 alt alanı göster
iduuidKimlik (uuid).
namestringnull olabilirAd.
colorstringnull olabilirRenk, #RRGGBB.
section_iduuidnull olabilirProje içindeki bölüm.
parent_iduuidnull olabilirÜst görev (alt işse).
assigneesobject[]Sorumlular; ilk kişi ana sorumlu.
2 alt alanı göster
iduuidKimlik (uuid).
namestringnull olabilirAd.
labelsobject[]Etiketler.
3 alt alanı göster
iduuidKimlik (uuid).
namestringAd.
colorstringnull olabilirRenk, #RRGGBB.
created_byobjectOluşturan kişi.
2 alt alanı göster
iduuidKimlik (uuid).
namestringnull olabilirAd.
assigned_byobjectnull olabilirGörevi veren kişi.
2 alt alanı göster
iduuidKimlik (uuid).
namestringnull olabilirAd.
completed_atdate-timenull olabilirTamamlanma zamanı.
completed_byobjectnull olabilirTamamlayan kişi.
2 alt alanı göster
iduuidKimlik (uuid).
namestringnull olabilirAd.
comment_countintegerYorum sayısı.
attachment_countintegerDosya sayısı.
checklistobjectKontrol listesi özeti.
2 alt alanı göster
totalintegerMadde sayısı.
doneintegerİşaretlenen madde sayısı.
created_atdate-timeOluşturulma zamanı (ISO 8601).
updated_atdate-timeSon değişiklik zamanı (ISO 8601).
urluriGörevin Todix’teki adresi.
/api/v1/tasksGörevler en yeni numaradan geriye sıralanır. Filtreler VE ile birleşir; filter uygulamadaki akıllı filtre ifadesini alır. Bir sayfa limit’ten az görev içerebilir: next_cursor null olana kadar devam et.
Sorgu parametreleri
statusenumHangi görevler: open açık (varsayılan), done tamamlanan, any hepsi.
opendoneanyVarsayılan: open
assigneeuuid | "me"Sorumlu: kişi kimliği ya da kendin için me.
projectuuid | "none"Proje kimliği; projesiz görevler için none.
sectionuuidBölüm kimliği.
labeluuidEtiket kimliği.
priorityenumÖncelik.
highmediumlowstageenumAşama.
tododoingwaitingdueenumHedef tarih: today bugün, week bu hafta, later sonra, none tarihsiz.
todayweeklaternoneoverdueenumtrue: yalnız gecikenler.
01truefalseparentuuidBu görevin alt işleri.
top_levelenumtrue: alt işler hariç.
01truefalseqstringBaşlıkta ya da açıklamada geçen metin.
1–200 karakter
filterstringAkıllı filtre ifadesi, ör. p1 & bugün & @ben (Akıllı filtre bölümü).
1–600 karakter
numberintegerÇalışma alanındaki görev numarası (#42).
1–9.999.999.999 arası
sortenumSıralama: number en yeni görev önce (varsayılan), updated son değişen önce, completed son tamamlanan önce (status=any değilse yalnız tamamlananlar).
numberupdatedcompletedVarsayılan: number
created_sincedate-timeYalnız bu zamandan sonra oluşturulan görevler (ISO 8601).
updated_sincedate-timeYalnız bu zamandan sonra değişen görevler (ISO 8601).
completed_sincedate-timeYalnız bu zamandan sonra tamamlanan görevler (ISO 8601).
limitintegerSayfadaki en çok kayıt.
Varsayılan: 50 · 1–200 arası
cursorstringÖnceki yanıttaki next_cursor.
En çok 200 karakter
Yanıtlar
- 200
Başarılı
Sayfalı liste döner: Görev nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
Görev oluştur
/api/v1/tasksSorumlu vermezsen görev sana atanır. Atama yetkilerin uygulamadakiyle aynıdır: uygulamada atayamadığın birine API de atayamaz.
İstek gövdesi
titlestringzorunluGörevin başlığı.
1–500 karakter
descriptionstringAçıklama (düz metin).
En çok 20.000 karakter
assignee_idsuuid[]Sorumlular; ilk kişi ana sorumlu. Boşsa sen.
En çok 20 öğe
priorityenumÖncelik: high yüksek, medium orta, low düşük.
highmediumlowdue_datedateHedef tarih (YYYY-AA-GG).
due_timestringHedef saati (SS:DD), çalışma alanının saatine göre.
start_datedateBaşlangıç tarihi.
deadlinedateSon tarih: hedefin kaçırılamayacak sınırı.
estimate_minutesintegerSüre tahmini, dakika.
1–100.000 arası
project_iduuidProje kimliği; null projeden çıkarır.
section_iduuidProje içindeki bölüm.
label_idsuuid[]Etiket kimlikleri.
En çok 30 öğe
Yanıtlar
- 201
Oluşturuldu
Döner: Görev nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
Görevi getir
/api/v1/tasks/{ref}Görevi numarasıyla (42) ya da kimliğiyle getirir. Tam açıklama ve created_at yalnız burada gelir.
Yol parametreleri
refstringzorunluGörev numarası (42) ya da görev kimliği (uuid).
Yanıtlar
- 200
Başarılı
Döner: Görev nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
Görevi güncelle
/api/v1/tasks/{ref}Yalnız değiştirmek istediğin alanları gönder. Bir tarihi temizlemek için null gönder.
Yol parametreleri
refstringzorunluGörev numarası (42) ya da görev kimliği (uuid).
İstek gövdesi
titlestringGörevin başlığı.
1–500 karakter
descriptionstringAçıklama (düz metin).
En çok 20.000 karakter
priorityenumÖncelik: high yüksek, medium orta, low düşük.
highmediumlowstageenumAşama: todo yapılacak, doing yapılıyor, waiting beklemede.
tododoingwaitingdue_datedatenull olabilirHedef tarih (YYYY-AA-GG).
due_timestringnull olabilirHedef saati (SS:DD), çalışma alanının saatine göre.
start_datedatenull olabilirBaşlangıç tarihi.
deadlinedatenull olabilirSon tarih: hedefin kaçırılamayacak sınırı.
estimate_minutesintegernull olabilirSüre tahmini, dakika.
1–100.000 arası
project_iduuidnull olabilirProje kimliği; null projeden çıkarır.
section_iduuidProje içindeki bölüm.
Yanıtlar
- 200
Başarılı
Döner: Görev nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
Görevi çöpe at
/api/v1/tasks/{ref}Görev çöp kutusuna taşınır; 30 gün içinde uygulamadan geri getirilebilir.
Yol parametreleri
refstringzorunluGörev numarası (42) ya da görev kimliği (uuid).
Yanıtlar
- 200
Başarılı
Yanıt gövdesi aşağıdaki örnekteki gibidir.
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
Görevi tamamla
/api/v1/tasks/{ref}/completeGörevi tamamlandı olarak işaretler; görevin kişilerine uygulamadaki gibi bildirim gider.
Yol parametreleri
refstringzorunluGörev numarası (42) ya da görev kimliği (uuid).
Yanıtlar
- 200
Başarılı
Döner: Görev nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
/api/v1/tasks/{ref}/reopenTamamlanmış bir görevi yeniden açar.
Yol parametreleri
refstringzorunluGörev numarası (42) ya da görev kimliği (uuid).
Yanıtlar
- 200
Başarılı
Döner: Görev nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
/api/v1/tasks/{ref}/assigneesSorumlu listesinin tamamını değiştirir; ilk kişi ana sorumludur.
Yol parametreleri
refstringzorunluGörev numarası (42) ya da görev kimliği (uuid).
İstek gövdesi
user_idsuuid[]zorunluYeni sorumlular; ilk kişi ana sorumlu.
1–20 öğe
Yanıtlar
- 200
Başarılı
Döner: Görev nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
/api/v1/tasks/{ref}/labelsGörevin etiketlerini gönderdiğin listeyle değiştirir. Boş liste tüm etiketleri kaldırır.
Yol parametreleri
refstringzorunluGörev numarası (42) ya da görev kimliği (uuid).
İstek gövdesi
label_idsuuid[]zorunluEtiket kimlikleri.
En çok 30 öğe
Yanıtlar
- 200
Başarılı
Döner: Görev nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
3 uç nokta
Görevin sohbeti: yorumlar uygulamadaki sohbet mesajlarıdır, bildirimleri de aynıdır.
Görevin sohbetindeki bir mesaj.
Alanlar
iduuidKimlik (uuid).
task_iduuidYorumun görevi.
bodystringMesajın metni.
authorobjectYazan kişi.
2 alt alanı göster
iduuidKimlik (uuid).
namestringnull olabilirAd.
reply_touuidnull olabilirYanıtlanan yorum.
internalbooleantrue: iç not — misafirler görmez.
created_atdate-timeOluşturulma zamanı (ISO 8601).
edited_atdate-timenull olabilirSon düzenleme zamanı.
Yorum ve yazıldığı görevin numarası, başlığı ve adresi.
Alanlar
iduuidKimlik (uuid).
task_iduuidYorumun görevi.
bodystringMesajın metni.
authorobjectYazan kişi.
2 alt alanı göster
iduuidKimlik (uuid).
namestringnull olabilirAd.
reply_touuidnull olabilirYanıtlanan yorum.
internalbooleantrue: iç not — misafirler görmez.
created_atdate-timeOluşturulma zamanı (ISO 8601).
edited_atdate-timenull olabilirSon düzenleme zamanı.
taskobjectYorumun yazıldığı görev.
4 alt alanı göster
iduuidKimlik (uuid).
numberintegerÇalışma alanındaki görev numarası (#42).
titlestringGörevin başlığı.
urluriAdres.
/api/v1/tasks/{ref}/commentsGörevin sohbetindeki yorumlar, yeniden eskiye.
Yol parametreleri
refstringzorunluGörev numarası (42) ya da görev kimliği (uuid).
Sorgu parametreleri
limitintegerSayfadaki en çok kayıt.
Varsayılan: 50 · 1–200 arası
cursorstringÖnceki yanıttaki next_cursor.
En çok 200 karakter
Yanıtlar
- 200
Başarılı
Sayfalı liste döner: Yorum nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
Yorum yaz
/api/v1/tasks/{ref}/commentsGörevin sohbetine mesaj gönderir; görevin kişilerine sohbet mesajındaki gibi bildirim gider.
Yol parametreleri
refstringzorunluGörev numarası (42) ya da görev kimliği (uuid).
İstek gövdesi
bodystringzorunluMesajın metni.
1–10.000 karakter
reply_touuidYanıtlanan yorum.
internalbooleantrue: iç not — misafirler görmez.
Yanıtlar
- 201
Oluşturuldu
Döner: Yorum nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
Sayaçları ve ilerlemesiyle bir proje.
Alanlar
iduuidKimlik (uuid).
namestringAd.
descriptionstringnull olabilirAçıklama (düz metin).
colorstringnull olabilirRenk, #RRGGBB.
iconstringnull olabilirSimge adı (küçük harf, rakam, tire).
statusstringProjenin durumu.
ownerobjectnull olabilirProje sahibi.
2 alt alanı göster
iduuidKimlik (uuid).
namestringnull olabilirAd.
parent_iduuidnull olabilirÜst proje.
folder_iduuidnull olabilirProjenin klasörü.
start_datedatenull olabilirBaşlangıç tarihi.
end_datedatenull olabilirBitiş tarihi.
archived_atdate-timenull olabilirArşivlenme zamanı (arşivde değilse null).
countsobjectGörev sayıları.
4 alt alanı göster
openintegerAçık görevler.
doneintegerTamamlanan görevler.
overdueintegerGeciken görevler.
totalintegerTüm görevler.
progressintegerİlerleme yüzdesi (0–100).
created_atdate-timeOluşturulma zamanı (ISO 8601).
updated_atdate-timeSon değişiklik zamanı (ISO 8601).
Projenin içindeki bir bölüm.
Alanlar
iduuidKimlik (uuid).
namestringAd.
positionintegerProjedeki sırası.
/api/v1/projectsArşivlenmiş projeler yalnız archived=true ile gelir.
Sorgu parametreleri
archivedenumtrue: arşivlenmiş projeler de gelir.
01truefalseqstringBaşlıkta ya da açıklamada geçen metin.
1–120 karakter
Yanıtlar
- 200
Başarılı
Sayfalı liste döner: Proje nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
Proje oluştur
/api/v1/projectsYeni bir proje açar. Proje açma yetkin uygulamadakiyle aynıdır.
İstek gövdesi
namestringzorunluAd.
1–120 karakter
descriptionstringAçıklama (düz metin).
En çok 5.000 karakter
colorstringRenk, #RRGGBB.
iconstringSimge adı (küçük harf, rakam, tire).
owner_iduuidProje sahibinin kimliği.
start_datedateBaşlangıç tarihi.
end_datedateBitiş tarihi.
Yanıtlar
- 201
Oluşturuldu
Döner: Proje nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
/api/v1/projects/{id}Projeyi sayaçları ve ilerlemesiyle getirir.
Yol parametreleri
iduuidzorunluKaydın kimliği (uuid).
Yanıtlar
- 200
Başarılı
Döner: Proje nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
Projeyi güncelle
/api/v1/projects/{id}Yalnız değiştirmek istediğin alanları gönder; null açıklamayı, sahibi ya da bir tarihi temizler.
Yol parametreleri
iduuidzorunluKaydın kimliği (uuid).
İstek gövdesi
namestringAd.
1–120 karakter
descriptionstringnull olabilirAçıklama (düz metin).
En çok 5.000 karakter
colorstringRenk, #RRGGBB.
iconstringSimge adı (küçük harf, rakam, tire).
owner_iduuidnull olabilirProje sahibinin kimliği.
start_datedatenull olabilirBaşlangıç tarihi.
end_datedatenull olabilirBitiş tarihi.
Yanıtlar
- 200
Başarılı
Döner: Proje nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
/api/v1/projects/{id}/sectionsProjenin bölümleri, sıralarıyla.
Yol parametreleri
iduuidzorunluKaydın kimliği (uuid).
Yanıtlar
- 200
Başarılı
Sayfalı liste döner: Bölüm nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
Bölüm ekle
/api/v1/projects/{id}/sectionsProjenin sonuna yeni bir bölüm ekler.
Yol parametreleri
iduuidzorunluKaydın kimliği (uuid).
İstek gövdesi
namestringzorunluAd.
1–80 karakter
Yanıtlar
- 201
Oluşturuldu
Döner: Bölüm nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
Adı ve rengiyle bir etiket.
Alanlar
iduuidKimlik (uuid).
namestringAd.
colorstringnull olabilirRenk, #RRGGBB.
/api/v1/labelsÇalışma alanının etiketleri.
Yanıtlar
- 200
Başarılı
Sayfalı liste döner: Etiket nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
Etiket oluştur
/api/v1/labelsÇalışma alanına yeni bir etiket ekler.
İstek gövdesi
namestringzorunluAd.
1–40 karakter
colorstringRenk, #RRGGBB.
Yanıtlar
- 201
Oluşturuldu
Döner: Etiket nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
Çalışma alanındaki bir kişi.
Alanlar
user_iduuidKişinin kimliği.
namestringAd.
emailemailE-posta adresi.
titlestringnull olabilirKişinin unvanı.
roleenumRol: admin yönetici, member üye.
adminmemberstatusenumactive etkin, disabled devre dışı.
activedisabledcan_assignbooleanBu kişiye görev atayabilir misin.
/api/v1/membersÇalışma alanının üyeleri. can_assign bu kişiye görev atayıp atayamayacağını söyler.
Sorgu parametreleri
emailemailE-posta adresi.
En çok 200 karakter
qstringBaşlıkta ya da açıklamada geçen metin.
1–120 karakter
Yanıtlar
- 200
Başarılı
Sayfalı liste döner: Üye nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
8 uç nokta
Çalışma alanında bir şey olunca seçtiğin adrese imzalı istek. Yalnız yöneticiler yönetir; anahtarın webhooks:manage izni olmalı.
Adresi, olayları ve son teslim durumuyla.
Alanlar
iduuidKimlik (uuid).
urluriİsteklerin gönderildiği HTTPS adresi.
descriptionstringnull olabilirAçıklama (düz metin).
eventsenum[]Dinlenen olaylar.
task.createdtask.updatedtask.completedtask.deletedcomment.createdproject.createdenabledbooleanAçık mı; true art arda hata sayacını sıfırlar.
failure_countintegerArt arda başarısız teslim sayısı.
disabled_reason"failing"null olabilirfailing: art arda hatalar yüzünden kapandı.
last_delivery_atdate-timenull olabilirSon teslim denemesi.
last_success_atdate-timenull olabilirSon başarılı teslim.
secret_hintstringİmza anahtarının son 4 karakteri.
created_atdate-timeOluşturulma zamanı (ISO 8601).
Oluştururken ve anahtarı yenilerken dönen webhook: secret yalnız bu yanıtlarda gelir.
Alanlar
iduuidKimlik (uuid).
urluriİsteklerin gönderildiği HTTPS adresi.
descriptionstringnull olabilirAçıklama (düz metin).
eventsenum[]Dinlenen olaylar.
task.createdtask.updatedtask.completedtask.deletedcomment.createdproject.createdenabledbooleanAçık mı; true art arda hata sayacını sıfırlar.
failure_countintegerArt arda başarısız teslim sayısı.
disabled_reason"failing"null olabilirfailing: art arda hatalar yüzünden kapandı.
last_delivery_atdate-timenull olabilirSon teslim denemesi.
last_success_atdate-timenull olabilirSon başarılı teslim.
secret_hintstringİmza anahtarının son 4 karakteri.
created_atdate-timeOluşturulma zamanı (ISO 8601).
secretstringİmza anahtarı (whsec_…); yalnız bu yanıtta bir kez.
Bir webhook isteği ve sonucu.
Alanlar
iduuidKimlik (uuid).
eventstringOlay türü.
statusenumpending sırada, sending gönderiliyor, delivered teslim edildi, failed başarısız, canceled iptal.
pendingsendingdeliveredfailedcanceledattemptsintegerDeneme sayısı.
response_statusintegernull olabilirAlıcının HTTP yanıt kodu.
errorstringnull olabilirHata nedeni (başarılıysa null).
duration_msintegernull olabilirSüre, milisaniye.
created_atdate-timeOluşturulma zamanı (ISO 8601).
last_attempt_atdate-timenull olabilirSon deneme zamanı.
delivered_atdate-timenull olabilirTeslim zamanı.
next_attempt_atdate-timenull olabilirSıradaki deneme zamanı.
/api/v1/webhooksÇalışma alanının webhook’ları. Yalnız yöneticiler.
Yanıtlar
- 200
Başarılı
Sayfalı liste döner: Webhook nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
Webhook ekle
/api/v1/webhooksİmza anahtarı (secret) yalnız bu yanıtta bir kez döner; hemen kaydet. Adres herkese açık bir HTTPS adresi olmalı.
İstek gövdesi
urlurizorunluİsteklerin gönderileceği herkese açık HTTPS adresi.
En çok 500 karakter
eventsenum[]zorunluDinlenen olaylar.
task.createdtask.updatedtask.completedtask.deletedcomment.createdproject.created1–6 öğe
descriptionstringAçıklama (düz metin).
En çok 200 karakter
Yanıtlar
- 201
Oluşturuldu
Döner: İmza anahtarıyla webhook
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
/api/v1/webhooks/{id}Webhook’un ayarları ve son teslim durumu.
Yol parametreleri
iduuidzorunluKaydın kimliği (uuid).
Yanıtlar
- 200
Başarılı
Döner: Webhook nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
Webhook’u güncelle
/api/v1/webhooks/{id}enabled: true art arda hata sayacını sıfırlar ve kapanmış bir webhook’u yeniden açar.
Yol parametreleri
iduuidzorunluKaydın kimliği (uuid).
İstek gövdesi
urluriYeni HTTPS adresi.
En çok 500 karakter
eventsenum[]Dinlenen olaylar.
task.createdtask.updatedtask.completedtask.deletedcomment.createdproject.created1–6 öğe
descriptionstringnull olabilirAçıklama (düz metin).
En çok 200 karakter
enabledbooleanAçık mı; true art arda hata sayacını sıfırlar.
Yanıtlar
- 200
Başarılı
Döner: Webhook nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
Webhook’u sil
/api/v1/webhooks/{id}Webhook ve teslim geçmişi silinir. Gövdesiz 204 döner.
Yol parametreleri
iduuidzorunluKaydın kimliği (uuid).
Yanıtlar
- 204
İçerik yok
Başarılı olunca gövde dönmez.
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
/api/v1/webhooks/{id}/testHemen bir ping teslimi kuyruğa alır (202). Test teslimleri yeniden denenmez.
Yol parametreleri
iduuidzorunluKaydın kimliği (uuid).
Yanıtlar
- 202
Kuyruğa alındı
Yanıt gövdesi aşağıdaki örnekteki gibidir.
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
/api/v1/webhooks/{id}/rotate-secretYeni anahtar bir kez döner; eskisi hemen geçersiz olur.
Yol parametreleri
iduuidzorunluKaydın kimliği (uuid).
Yanıtlar
- 200
Başarılı
Yanıt gövdesi aşağıdaki örnekteki gibidir.
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
/api/v1/webhooks/{id}/deliveriesWebhook’un son 50 teslimi, durum ve süreleriyle.
Yol parametreleri
iduuidzorunluKaydın kimliği (uuid).
Yanıtlar
- 200
Başarılı
Sayfalı liste döner: Teslim nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
3 uç nokta
Kendi adresine anında, imzalı olay bildirimi; Zapier ve Make bunu kullanır. Her üye kurabilir, yalnız görebildiğin işler gelir. Anahtarın hooks izni olmalı.
Olayı, hedef adresi, süzgeçleri ve son teslim durumuyla bir abonelik.
Alanlar
iduuidKimlik (uuid).
eventenumOlay türü.
task.createdtask.updatedtask.completedtask.assignedcomment.createdproject.createdtarget_urluriOlayların gönderildiği HTTPS adresi.
project_iduuidnull olabilirYalnız bu projenin görevleri ve yorumları.
assigned_to_mebooleantrue: yalnız sana atanan görevler (task.assigned zaten öyle).
enabledbooleanAçık mı; true art arda hata sayacını sıfırlar.
failure_countintegerArt arda başarısız teslim sayısı.
disabled_reason"failing"null olabilirfailing: art arda hatalar yüzünden kapandı.
last_delivery_atdate-timenull olabilirSon teslim denemesi.
last_success_atdate-timenull olabilirSon başarılı teslim.
created_atdate-timeOluşturulma zamanı (ISO 8601).
Kurarken dönen tetikleyici: secret yalnız bu yanıtta bir kez gelir.
Alanlar
iduuidKimlik (uuid).
eventenumOlay türü.
task.createdtask.updatedtask.completedtask.assignedcomment.createdproject.createdtarget_urluriOlayların gönderildiği HTTPS adresi.
project_iduuidnull olabilirProje kimliği; null projeden çıkarır.
assigned_to_mebooleantrue: yalnız sana atanan görevler (task.assigned zaten öyle).
enabledbooleanAçık mı; true art arda hata sayacını sıfırlar.
failure_countintegerArt arda başarısız teslim sayısı.
disabled_reason"failing"null olabilirfailing: art arda hatalar yüzünden kapandı.
last_delivery_atdate-timenull olabilirSon teslim denemesi.
last_success_atdate-timenull olabilirSon başarılı teslim.
created_atdate-timeOluşturulma zamanı (ISO 8601).
secretstringİmza anahtarı (whsec_…); yalnız bu yanıtta bir kez.
/api/v1/hooksBu anahtarın ya da bağlantının kurduğu tetikleyiciler.
Yanıtlar
- 200
Başarılı
Sayfalı liste döner: Tetikleyici nesnesi
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
Tetikleyici kur
/api/v1/hooksBir olaya adres abone eder; imza anahtarı (secret) yalnız bu yanıtta bir kez döner. Yalnız uygulamada görebildiklerin gelir. task.* ve comment.created için tasks:read, project.created için projects:read gerekir. Kişi ve çalışma alanı başına en çok 100 tetikleyici; hedef 410 Gone dönerse tetikleyici silinir.
İstek gövdesi
eventenumzorunluOlay türü.
task.createdtask.updatedtask.completedtask.assignedcomment.createdproject.createdtarget_urlurizorunluOlayların gönderildiği HTTPS adresi.
En çok 500 karakter
project_iduuidYalnız bu projenin görevleri ve yorumları.
assigned_to_mebooleantrue: yalnız sana atanan görevler (task.assigned zaten öyle).
Yanıtlar
- 201
Oluşturuldu
Döner: İmza anahtarıyla tetikleyici
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
Tetikleyiciyi kaldır
/api/v1/hooks/{id}Aboneliği siler; bu andan sonra istek gelmez.
Yol parametreleri
iduuidzorunluKaydın kimliği (uuid).
Yanıtlar
- 204
İçerik yok
Başarılı olunca gövde dönmez.
- 4xx
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
Son yorumları listele
/api/v1/commentsÇalışma alanında görebildiğin son yorumlar, en yenisi önce; her biri göreviyle. "Yeni yorum" tetikleyicileri için: since yalnız daha yenilerini getirir, project ve task listeyi daraltır.
Sorgu parametreleri
projectuuidProje kimliği; projesiz görevler için none.
taskstringGörev numarası (42) ya da görev kimliği.
En çok 64 karakter
sincedate-timeYalnız bu zamandan sonra yazılan yorumlar (ISO 8601).
limitintegerSayfadaki en çok kayıt.
Varsayılan: 50 · 1–200 arası
cursorstringÖnceki yanıttaki next_cursor.
En çok 200 karakter
Yanıtlar
Başarılı
Sayfalı liste döner: Göreviyle yorum
Başarısız isteklerde tek biçimli hata nesnesi döner. Hatalar
400 · 401 · 403 · 404 · 429
/api/v1/comments