API yardımı ile Deskie'ye veriler nasıl aktarılır?

Son güncelleme: 13.03.2024

Vazgeçtiğiniz bir yardım masasından Deskie'ye taşınmak için kullanıma hazır içe aktarma seçeneğini bulundurmuyorsak, API kullanarak yine de verilerinizi taşıyabilirsiniz. Bunu yapmak için geliştiricilerinizi de sürece dahil etmeniz gerekecek. Kendileri için işlerini kolaylaştıracak ayrıntılı talimatlar hazırladık:)

Veri aktarımını sağlayacak scripti yazmadan önce

1) Veri aktarma scriptinin çok sık istek gönderdiğinde hata içeren yanıtları almaması için uyguladığımız API limitlerine göz atın. İstek sayısı limiti, kullanmakta olduğunuz plana bağlıdır. Limit aşıldığında, "429 Too Many Requests" hatayı içeren yanıt görüntülenir.

Gönderdiğiniz herhangi bir istek için alınan yanıtın başlıklarında aşağıdakileri görüntüleyebilirsiniz: 

  • api_calls_left — ilgili aralık için kalan (henüz kullanılmamış) API isteklerinin sayısı;

  • rate_limit_per_minute — dakikada gönderilebilecek maksimum istek sayısı;

  • retry_after — dakikalık limit aşıldığında, isteklerin saniye cinsinden ne kadar süre sonra gönderilebileceğini bildiren başlık.

Veri yazdırma istekleri (POST, PUT, DELETE metodları) limit dahilinde iki istek olarak sayılır.

Dakikalık limitinin öngördüğü istek sayısına 5 saniyede ulaşacak şekilde yazılan scriptin bir sonraki isteği başarılı olarak göndermesi için scriptin 55 saniye devre dışı kalması gerekecektir. Bu nedenle istekler belirli bir dakika boyunca orantılı olarak gönderilmelidir.

2) Destek talepleri yerine başta müşterileri oluşturmanın bir anlamı yok, çünkü ilgili destek talebi ile ilişkilendirilmiş müşteri bilgilerinin veritabanımızda olmadığı durumda önce ilgili müşteri ardından da destek talebi oluşturulur. Böylece, aynı API limitleri çerçevesinde daha fazla veri aktarmanıza fırsat tanınır.

3) API aracılığı ile yalnızca şu kanallar üzerinden alınan destek taleplerini (ve müşterileri) oluşturmak mümkündür: E-posta, Çağrılar, WhatsApp ve Özel iletişim kanalları. Kullanmaktan vazgeçtiğiniz yardım masasında işlediğiniz diğer kaynaklı destek talepleri (sosyal ağlar, messengerler vb.) için içe aktarma olanağı bulunmamaktadır.

Veri aktarımında kullanılan API metodları

1.1 "E-posta" kanalı kaynaklı destek talebi oluşturma

Bir destek talebi oluşturmak için uygun bir API metodu (veya benzer bir metod, yazışmanın ilk iletisine dosya eklemeniz gerektiği sürece) kullanmanız gerekir. Destek talebininin kim tarafından oluşturulduğuna bağlı olarak iletilecek parametrelerin farklı olmaları gerekmektedir.

a. Müşteri yazışmayı başlattı (destek talebini oluşturdu):

  • zorunluuser_email, subject, content_html, created_at

  • isteğe bağlıuser_full_name, staff_id, group_id, status, priority, custom_fields, labels

b. Temsilci yazışmayı başlattı (destek talebini oluşturdu):

  • zorunlu — user_email, initiator_id, subject, content_html, created_at, case_email_id=-1

  • isteğe bağlı — user_full_name, staff_id, group_id, status, priority, custom_fields, labels

Bir destek talebinin oluşturulması için uygun isteğin başarılı olarak gönderilmesi sonucu dönen yanıtı 200 olarak alırsınız. Yanıt, case_id, case_number ve user_id dahil olmak üzere destek talebi ile ilgili tüm verileri içerecektir. Destek talebindeki bilgileri daha sonra görüntüleyebilmeniz/düzenleyebilmeniz ve müşteriden alınan yanıtları ekleyebilmeniz için sözü geçen veriler kaydedilmelidir.

1.2 "E-posta" kanalı kaynaklı destek talebine ileti ekleme

Oluşturulan yeni destek talebi yalnızca müşteri ile başlatılan yazışmadaki ilk iletiyi içerir. Geri kalan iletiler ayrı bir API metodu yardımı ile eklenmelidir. Bu durumda da, iletinin kim tarafından eklendiğine bağlı olarak iletilecek parametrelerin farklı olmaları gerekmektedir.

a. Müşteri iletisi (yanıtı):

  • zorunlu — content_html, created_at, user_id

  • isteğe bağlı — opsiyonel parametre bulunmamakta

b. Temsilci iletisi (yanıtı):

  • zorunlu — content_html, created_at, staff_id, do_not_send_email=true

  • isteğe bağlı — opsiyonel parametre bulunmamakta

Yazışma esnasında eklenen notlarınızı (ekipçe yazılan yorumlar) özel bir API metodu kullanarak ekleyebilirsiniz.

1.3 "E-posta" kanalı kaynaklı destek talebi parametrelerinin denetimi

Bir destek talebi oluştururken yalnızca zorunlu parametreleri iletmeyi tercih etmişseniz, tüm iletiler eklendikten sonra, destek talebini görüntüleme metodu aracılığıyla parametreleri denetleme gereksinimi doğabilir. Parametrelerin bazılarını değiştirmenizi gerektiren durumlarda (durum belirleme, etiket ekleme, sorumlu temsilciyi atama vb.) düzenleme metodunu kullanın.

2.1 "Çağrılar" kanalı kaynaklı destek talebi oluşturma

Bir destek talebi oluşturmak için uygun API metodu (veya benzer bir metod, yazışmanın ilk iletisine dosya eklemeniz gerektiği sürece; örneğin, görüşme kaydı) kullanmanız gerekir. Görüşmenin kim tarafından başlatıldığına bağlı olarak iletilecek parametrelerin farklı olmaları gerekmektedir.

a. Müşteri görüşmeyi başlattı :

  • zorunlu — user_phone, subject, content, created_at

  • isteğe bağlı — user_full_name, staff_id, group_id, status, priority, custom_fields, labels

b. Temsilci görüşmeyi başlattı :

  • zorunlu — user_phone, initiator_id, subject, content, created_at

  • isteğe bağlı — user_full_name, staff_id, group_id, status, priority, custom_fields, labels

Bir destek talebinin oluşturulması için uygun isteğin başarılı olarak gönderilmesi sonucu dönen yanıtı 200 olarak alırsınız. Yanıt, case_id, case_number ve user_id dahil olmak üzere destek talebi ile ilgili tüm verileri içerecektir. Destek talebindeki bilgileri daha sonra görüntüleyebilmeniz/düzenleyebilmeniz ve müşteriden alınan yanıtları ekleyebilmeniz için sözü geçen veriler kaydedilmelidir.

2.2 "Çağrılar" kanalı kaynaklı destek talebine ileti ekleme

Genel olarak, bu kanal kaynaklı her destek talebi müşteri ile görüşme yapılması sırasında oluşturulduğu için az sayıda ileti içerir. Öte yandan, bu tür destek talepleri, ortak çalışma sonucu eklenen birçok önemli not (ekipçe yazılan yorumlar) içerir. Bu nedenle, müşterinin görmemesi gereken notları özel bir API metodu kullanarak eklemeniz gerekmektedir. Aynı destek talebi bünyesinde gelen ve giden çağrılar ile ilgili ileti eklemenizi gerektiren durumlarda ise ileti eklenmesine olanak tanıyan API metodunu kullanın.

a. Müşteri görüşmeyi başlattı:

  • zorunlu — content, created_at, user_id

  • isteğe bağlı — opsiyonel parametre bulunmamakta

b. Temsilci görüşmeyi başlattı:

  • zorunlu — content, created_at, staff_id

  • isteğe bağlı — opsiyonel parametre bulunmamakta

2.3 "Çağrılar" kanalı kaynaklı destek talebi parametrelerinin denetimi

Bir destek talebi oluştururken yalnızca zorunlu parametreleri iletmeyi tercih etmişseniz, tüm iletiler eklendikten sonra, destek talebini görüntüleme metodu aracılığıyla parametreleri denetleme gereksinimi doğabilir. Parametrelerin bazılarını değiştirmenizi gerektiren durumlarda (durum belirleme, etiket ekleme, sorumlu temsilciyi atama vb.) düzenleme metodunu kullanın.

3.1 Özel iletişim kanalı kaynaklı destek talebi oluşturma

Özel iletişim kanalları hakkında daha fazla bilgi edinin.

Bir destek talebi oluşturmak için uygun API metodu (veya benzer bir metod, yazışmanın ilk iletisine dosya eklemeniz gerektiği sürece) kullanmanız gerekir. Ancak, destek talebininin kim tarafından oluşturulduğuna bağlı olarak iletilecek parametrelerin farklı olmaları gerekmektedir.

a. Müşteri yazışmayı başlattı (destek talebini oluşturdu):

  • zorunlu — user_custom_id, subject, content_html (veya senkron tipi özel kanalı için content), created_at

  • isteğe bağlı — user_full_name, staff_id, group_id, status, priority, custom_fields, labels

b. Temsilci yazışmayı başlattı (destek talebini oluşturdu):

  • zorunlu — user_custom_id, initiator_id, subject, content_html (veya senkron tipi özel kanalı için content), created_at

  • isteğe bağlı — user_full_name, staff_id, group_id, status, priority, custom_fields, labels

Bir destek talebinin oluşturulması için uygun isteğin başarılı olarak gönderilmesi sonucu dönen yanıtı 200 olarak alırsınız. Yanıt, case_id, case_number ve user_id dahil olmak üzere destek talebi ile ilgili tüm verileri içerecektir. Destek talebindeki bilgileri daha sonra görüntüleyebilmeniz/düzenleyebilmeniz ve müşteriden alınan yanıtları ekleyebilmeniz için sözü geçen veriler kaydedilmelidir.

3.2 Özel iletişim kanalı kaynaklı destek talebine ileti ekleme

Oluşturulan yeni destek talebi yalnızca müşteri ile başlatılan yazışmadaki ilk iletiyi içerir. Geri kalan iletiler ayrı bir API metodu yardımı ile eklenmelidir. Bu durumda da, iletinin kim tarafından eklendiğine bağlı olarak iletilecek parametrelerin farklı olmaları gerekmektedir.

a. Müşteri iletisi (yanıtı):

  • zorunlu — content_html (veya senkron tipi özel kanalı için content), created_at, user_id

  • isteğe bağlı — opsiyonel parametre bulunmamakta

b. Temsilci iletisi (yanıtı):

  • zorunlu — content_html (veya senkron tipi özel kanalı için content), created_at, staff_id

  • isteğe bağlı — opsiyonel parametre bulunmamakta

Yazışma esnasında eklenen notlarınızı (ekipçe yazılan yorumlar) özel bir API metodu kullanarak ekleyebilirsiniz.

3.3 Özel iletişim kanalı kaynaklı destek talebi parametrelerinin denetimi

Bir destek talebi oluştururken yalnızca zorunlu parametreleri iletmeyi tercih etmişseniz, tüm iletiler eklendikten sonra, destek talebini görüntüleme metodu aracılığıyla parametreleri denetleme gereksinimi doğabilir. Parametrelerin bazılarını değiştirmenizi gerektiren durumlarda (durum belirleme, etiket ekleme, sorumlu temsilciyi atama vb.) düzenleme metodunu kullanın.

Bu makale yardımcı oldu mu?