Özel Öğeler: API
Bir API arayüzü, Skava'nın doldurulan değerlerini JSON olarak belirlediğiniz bir adrese (sizin arka uçunuza) gönderdiği bir formdur. Bu sayede Skava'yı kendi sistemlerinizle güvenle entegre edebilirsiniz.
API arayüzlerini Web Uygulaması'nda Özel Öğeler altında, API Arayüzleri anahtarını açarak yönetirsiniz. Oluşturma ve düzenleme şirket yöneticilerine aittir; yayınlanan arayüzler ise şirketin tüm üyeleri tarafından tetiklenebilir.
Bir API arayüzü oluşturun
Bir arayüz, girdi alanlarından (bunlar JSON'u oluşturur), hedef adresten ve kimlik doğrulamadan oluşur.
- Alanlar oluşturun: Her alanın bir JSON anahtarı vardır. Sağ tarafta, arka uçunuza tam olarak bu şekilde gönderilen JSON önizlemesini canlı olarak görürsünüz.
- Adres (URL): Arka uçunuzun
https://adresi. Yalnızca HTTPS ve herkese açık adresler izinlidir (aşağıdaki Güvenlik bölümüne bakın). - Yöntem:
POST(varsayılan),PUT,PATCHveyaGET.GETkullanıldığında değerler gövdede gönderilmek yerine sorgu parametreleri olarak eklenir. - Kimlik doğrulama: Başlık adını (örn.
Authorization) ve değer önekini (örn.Bearer) belirleyin, ardından jetonu kaydedin. İsteğe bağlı olarak bir son kullanma tarihi belirleyin. - Yanıt alanları (isteğe bağlı): Arka uç yanıtındaki hangi değerlerin görüntüleneceğini yol ile tanımlayın: örn.
order.idveyaitems[0].sku. - Ping ve Test Request ile kontrol edin, ardından Release yapın.
Token'ı güvenli bir şekilde saklayın
Token şifreli olarak saklanır ve istemcilere asla geri döndürülmez: uygulama yalnızca bir tokenin ayarlanıp ayarlanmadığını ve ne zaman sona ereceğini gösterir. Gönderim sırasında Skava, bunu sunucu tarafında yapılandırılan başlığa ekler. Bir son kullanma tarihi belirlediyseniz, Skava süre dolunca isteği reddeder ve tokeni yenilemenizi ister.
Test: Ping ve Test İsteği
- Ping: Hafif bir erişilebilirlik kontrolüdür. Sadece adresinizin yanıt verip vermediğini kontrol eder, bu sırada token veya form verisi göndermez. Erişilebilirliği, durumu ve yanıt süresini gösterir. İlk adım olarak idealdir.
- Test İsteği: gerçek deneme çalışması: adresinize token dahil örnek verileri gönderir ve hem tam yanıtı hem de çıkarılan yanıt alanlarını gösterir.
Yönetici olarak, yayına almadan önce entegrasyonu doğrulamak için taslak modundayken her ikisini de çalıştırabilirsiniz.
Taslak Oluştur ve Yayınla
Her arayüz taslak olarak başlar ve serbestçe düzenlenebilir. Her şey hazır olduğunda Yayınla ile yayınlarsınız.
Yayınlandıktan sonra hedef adres, yöntem, alanlar, kimlik doğrulama başlığı ve süre sınırı sabitlenir. Bu bilinçli bir karardır: kimse verilerin nereye gittiğini sessizce değiştiremez. Operasyonel ihtiyaçlar nedeniyle yalnızca üç şey değiştirilebilir: token ve geçerlilik süresi (sona eren veya kullanılmış bir tokenın yenisiyle değiştirilebilmesi için) ve kitle, yani tetiklemenin yalnızca kendi ekibiniz tarafından mı yoksa ortak firmalar tarafından da mı yapılabilmesi. Diğer her şey için yeni bir sürüm oluşturun.
Güvenlik
Arayüzün yanlış kullanılmasını önlemek için katı kurallar geçerlidir: yalnızca HTTPS adresleri kabul edilir ve adres, halka açık bir hedef adrese işaret etmelidir: dahili adresler (ör. localhost, özel ağlar veya bulut meta verileri) reddedilir. Skava her çağrıda bunu kontrol eder, yalnızca doğrulanmış adrese bağlanır, yönlendirmeleri takip etmez ve zaman aşımı ile yanıt boyutunu sınırlar.
Ekip, yayınlanmış bir arayüzü nasıl kullanır
Bir arayüz yayınlandıktan sonra, tüm şirket üyeleri editör gerektirmeden doğrudan bir sohbetten onu tetikleyebilir. Ortak bir giriş veya ara bir iletişim kutusu yoktur: her yayınlanan öğe, onu sunan şirketin logosuyla birlikte artı menüsünde kendi adıyla yer alır.
- Sohbette alttaki Artı simgesine dokunun ve istediğiniz öğeye, örneğin Malzeme siparişi öğesine dokunun.
- Formu doldurun ve Gönder'e tıklayın.
- Sonuç, sohbet içinde bir kart olarak görünür ve sohbeti kullanan herkes tarafından görüntülenebilir.
Yapay zekanın bir öğe oluşturmasına izin verin
Şirket yöneticisi olarak editörü kendiniz kullanmak zorunda değilsiniz. Skava asistanına sohbetten, örneğin "katalogum için adet ve teslimat adresi içeren bir sipariş formu oluştur" diyebilirsiniz. Asistan bunun bir taslak oluşturur, alanları daha sonra tek tek değiştirebilir ve yüklediğiniz ürün kataloğunuzu bilir: siparişler için ürün numarası için metin alanı yerine ürün seçici önerir.
Ayrıca şunları da belirleyebilir: uç nokta ve yöntem ile kitle ("sadece şirket üyeleri" veya "aynı sohbetteki dış kişiler de"). Kitle için doğrudan ayarlamak yerine önce sorar, çünkü dışarıdan birinin neyi çalıştırabileceğini o belirler.
Açıkça dokunmadığı şey: erişim belirteci. Asla istemez ve asla kabul etmez, çünkü sohbet mesajları saklanır. Bunu editörde kendiniz girersiniz, aksi halde hiçbir çağrı yapılmaz. Ve yayınlayamaz: son adım sizde kalır, böylece müşterilere kontrolsüz bir şey görünmez.
Kim çalıştırabilir
"Endpoint" sekmesi, bir öğeyi kimin kullanabileceğini belirtir. Varsayılan ayar, şirketinizin üyeleridir. İkinci ayar, öğeyi dışarıdaki kişilere açar; ancak bu, yalnızca şirketinizden birinin de bulunduğu sohbetlerde geçerlidir: Tam da bunun için tasarlanan durum, sizden sipariş veren müşteri. Şirketiniz sohbetten ayrıldığında, izin kendiliğinden sona erer.
Kendi kataloğunuzdaki ürünler
Kataloğunuzu yükledikten sonra, oluşturucu bir ürün seçici bloğu sunar. Bakım gerektiren seçenekler yoktur: liste sizin kataloğunuzdur. Sipariş veren kişi listede arama yapar, görseli, adı ve ürün numarasını görür; arka uç sisteminiz de ürün numarasını alır. Skava, kataloğunuzda olmayan bir numarayı reddeder. Miktar için yanına normal bir sayı alanı ekleyin.
Kartı kendiniz tanımlayın
Arka uç, kartın ne söyleyeceğine karar verir. Skava yalnızca biçim, boyut ve güvenliği kontrol eder, anlamı değil: ne sipariş durumlarını ne de alan adlarını bilir. Bunu yapmak için bir card nesnesiyle yanıt verin:
{"card": {"v": 1, "title": "Order 10001", "state": "pending", "status_text": "Being picked", "fields": [{"label": "Tracking number", "value": "DPD123456789"}]}}
- v 1 tam sayısı olmalıdır. Bu değer yoksa yanıt bir kart olarak sayılmaz ve öğede yapılandırılan yanıt eşlemesi uygulanır.
- state yalnızca renk ve ikondur:
ok,pending,warnveyaerror. Anlam taşıyan her şey status_text alanına serbest metin olarak girilir. - fields, etiket ve değer çiftlerinden oluşan en fazla 20 girdilik bir listedir. Çok uzun değerler reddedilmek yerine kısaltılır, böylece bir sipariş küçük bir detay yüzünden asla başarısız olmaz.
Kullanıcının girdileri sunucuya aittir: Arka uç ne gönderirse göndersün, bunlar olduğu gibi kalır. Bunlar, sohbette gerçekten gönderilenlerin kaydıdır.
Daha sonra durumu bildirme
Öğe çalıştığında Skava iki ek değer gönderir: callback_url ve callback_token. Daha sonra yeni bir durumu oraya bildirin ve sohbetin yanı sıra telefonda da yeni bir kart görünür, biri bakarken. Önceki kart kalır, böylece hangi durumun bildirildiği okunabilir. Yukarıdakiyle aynı card nesnesini, Authorization: Bearer <callback_token> başlığıyla POST yöntemiyle gönderin. Kartın yanına üç isteğe bağlı değer gider:
- seq: kendi sayacınız. Daha küçük veya eşit bir değere sahip olan raporlar atılır, böylece iki rapor birbirini geçemez.
- final: etkileşimi kapatır. Jeton geçersiz hale gelir ve kart kesinleşir.
- notify: Kartı sessizce göndermek, okunmamış sayacı ve bildirim oluşturmadan göndermek için
falseolarak ayarlayın. Kimseyi uyandırmaması gereken ara adımlar için idealdir. Bu ayar yapılmazsa kart tamamen normal bir mesaj olarak görünür.
Bir etkileşim en fazla 50 kart paylaşabilir. Aynı raporun iki kez gönderilmesi ikinci bir kart oluşturmaz.
Skava, kısaltma veya düşürme varsa 200 yanıtı ve hints listesi döndürür; kart kullanılamazsa 422 döndürür. Etkileşimler 90 gün boyunca raporları kabul eder.
Kartlar, Skava'nın sistem göndericisi tarafından paylaşılır; öğeyi çalıştıran kişi veya kendi şirketinizin bir hesabı tarafından değil. Hangi sistemin yazdığını kartın başlığı belirtir.
Kopyalanabilir tam bir örnek, depoda example_order_server/ altında bulunur ve api.skava.io adresinde çalışır.
İlgili
Doldurulabilir bir belge şablonu oluşturmak mı istiyorsunuz? Özel Öğeler: Belgeler sayfasına göz atın.
Sıkça Sorulan Sorular
Skava'da bir API arayüzü nedir?
Skava'nın doldurulan değerlerini JSON olarak belirlediğiniz bir adrese (kendi backend'inize) gönderdiği bir form: Skava'yı kendi sistemlerinize bağlamak için idealdir.
API arayüzlerini kimler oluşturabilir ve tetikleyebilir?
Oluşturma ve düzenleme şirket yöneticilerine aittir. Yayına alınan bir arayüz, şirketin tüm üyeleri tarafından tetiklenebilir.
"Ping" ile "Test Request" arasındaki fark nedir?
Ping yalnızca adresin erişilebilir olup olmadığını kontrol eder: token ve veri olmadan. Test Request token dahil örnek veri gönderir ve tam yanıtı gösterir.
API anahtarım güvenli mi?
Evet. Jeton şifreli olarak saklanır ve asla istemcilere iletilmez. Uygulama yalnızca bir jetonun tanımlı olup olmadığını ve ne zaman sona ereceğini gösterir.
Hangi adresler uç nokta olarak izin verilir?
Yalnızca herkese açık https:// adresleri. localhost, özel ağlar veya bulut meta verileri gibi dahili hedefler reddedilir: Bu, arayüzün kötüye kullanılmasını önler.
Yayınlanmış bir arayüzü neden artık değiştiremiyorum?
Yayınlandıktan sonra hedef adres, yöntem, alanlar ve kimlik doğrulama başlığı sabitlenir; böylece kimse verilerin nereye gittiğini sessizce yönlendiremez. Jeton, son kullanma süresi ve kitle (sadece kendi ekibiniz veya ortak şirketler de dahil) değiştirilebilir kalır; süresi dolan bir jetonu değiştirmenin tam olarak yolu budur. Diğer her şey için yeni bir sürüm oluşturun.