Prilagojeni elementi: vmesnik API
Vmesnik API je obrazec, katerega izpolnjene vrednosti Skava pošlje kot JSON na naslov, ki ga določite (vaš backend). Tako lahko Skava varno povežete s svojimi sistemi.
Vmesnike API upravljate v Webapp pod Prilagojeni elementi → preklopite Vmesniki API. Ustvarjanje in urejanje je rezervirano za upravljavce podjetja; objavljeni vmesniki se nato lahko sprožijo vsi člani podjetja.
Nastavitev vmesnika API
Vmesnik sestavljajo vhodna polja (ki tvorijo JSON), ciljni naslov in overjanje.
- Ustvarite polja: Vsako polje dobi JSON ključ. Na desni vidite predogled JSON v živo, ki se bo vašemu strežniku poslal točno v tej obliki.
- Naslov (URL):
https://naslov vašega strežnika. Dovoljeni so le naslovi s HTTPS in javno dostopni (glejte varnost spodaj). - Metoda:
POST(privzeto),PUT,PATCHaliGET. PriGETse vrednosti dodajo kot parametri poizvedbe namesto, da bi se poslale v telesu zahtevka. - Overjanje: Nastavite ime glave (npr.
Authorization) in predpono vrednosti (npr.Bearer), nato shranite žeton. Po želji nastavite datum poteka. - Polja odziva (opcijsko): Določite s potjo, katere vrednosti iz odziva strežnika naj se prikažejo: npr.
order.idaliitems[0].sku. - Preverite s Ping in Test Request, nato Release.
Shranite žeton varno
Žeton je shranjen šifriran in se nikoli ne vrne strankam: aplikacija prikazuje le, ali je žeton nastavljen in kdaj poteka. Ob pošiljanju ga aplikacija Skava doda na strežniški strani na konfigurirano glavo. Če nastavite datum poteka, aplikacija Skava zavrne klic po poteku in vas prosi za obnovo žetona.
Preizkušanje: Ping in preizkusna zahteva
- Ping : preverjanje dosegljivosti. Preveri le, ali vaš naslov odgovarja, pri tem pa ne pošilja žetona ali podatkov obrazca. Prikaže dosegljivost, status in čas odziva. Idealno kot prvi korak.
- Preizkusni zahtevek : pravi preizkusni zagon: pošlje vzorne podatke, vključno z žetonom, na vaš naslov in prikaže celoten odziv ter izločena polja odziva.
Kot skrbnik lahko oba opravite še v načinu osnutka, da preverite integracijo pred objavo.
Osutek in objava
Vsak vmesnik se začne kot osutek in ga je mogoče prosto urejati. Ko je vse pripravljeno, ga objavite s klikom na Objavi.
Objavljeni vmesniki so nespremenljivi. To je namerno: tako po objavi nihče ne more skrivaj zamenjati ciljnega naslova ali žetona. Če želite kaj spremeniti, ustvarite novo različico.
Varnost
Da se prepreči zloraba vmesnika, veljajo stroga pravila: dovoljeni so le HTTPS naslovi in naslov se mora nanašati na javni ciljni naslov. Notranji naslovi (npr. localhost, zasebna omrežja ali metapodatki oblaka) so zavrnjeni. Skava to preveri pri vsakem klicu, se poveže točno na preverjeni naslov, ne sledi preusmeritvam in omejuje časovni limit ter velikost odgovora.
Kako ekipa uporablja objavljeno vmesnik
Ko je vmesnik objavljen, ga lahko vsi člani podjetja neposredno sprožijo iz klepeta: urejevalnik ni potreben. Postopek je enak kot pri predlogah dokumentov: izberite, izpolnite, pošljite.
- V klepetu pritisnite Plus na dnu in izberite Prilagojen element.
- Iz seznama izberite želeno predlogo ali vmesnik.
- Izpolnite obrazec in pritisnite Pošlji.
- Rezultat se prikaže kot kartica v klepetu: vidna je vsem udeležencem v klepetu.
Pustite, da umetna inteligenca ustvari element
Kot skrbnik podjetja ne morate uporabljati urejevalnika sami. Povejte asistentu Skava v klepetu, na primer »ustvari mi obrazec za naročilo za moj katalog s količino in naslovom za dostavo«. Iz tega ustvari osnutek, kasneje pa lahko polja spreminja eno po eno. Pozna vaš naložen katalog izdelkov: za naročila predlaga izbirnik izdelkov namesto besedilnega polja za številko izdelka.
Kar lahko nastavi tudi: končno točko in metodo ter publiko (»samo člani podjetja« ali »tudi zunanji uporabniki v istem klepetu«). Pri publiko najprej vpraša, namesto da bi jo takoj nastavil, saj odloča, kdo lahko zunanje izvaja določene stvari.
Kar eksplicitno ne dotakne: žeton za dostop. Nikoli ga ne zahteva in nikoli ga ne sprejme, ker se sporočila v klepetu shranjujejo. Vnesete ga sami v urejevalniku, sicer se klic ne izvede. Tudi ne more objaviti: zadnji korak ostane pri vas, zato ničesar ne postane vidnega strankam brez vaše preveritve.
Kdo ga lahko izvaja
Zavihek »Končna točka« določa, kdo lahko uporabi element. Privzeto so to člani vašega podjetja. Druga nastavitev ga odpre tudi zunanjim uporabnikom, vendar le v klepetu, kjer je prisoten tudi nekdo iz vašega podjetja: točno tisti primer, za katerega je namenjen, ko stranka pri vas naroča. Ko vaše podjetje zapusti klepet, se dovoljenje samodejno prekliče.
Izdelki iz vašega lastnega kataloga
Ko boste naložili katalog izdelkov, vam bo urejevalnik ponudil blok izbirnika izdelkov. Možnosti za vzdrževanje ni: seznam je vaš katalog. Oseba, ki naroča, ga poišče, vidi sliko, ime in artiklno številko, vaš backend pa prejme artiklno številko. Skava zavrne številko, ki ni v vašem katalogu. Za količino postavite običajno polje za številke ob njem.
Kartico določite sami
Vaš backend odloča, kaj piše na kartici. Skava preveri le obliko, velikost in varnost, nikoli pa pomena: ne pozna niti stanj naročil niti imen polj. Da to storite, odgovorite z objektom card:
{"card": {"v": 1, "title": "Order 10001", "state": "pending", "status_text": "Being picked", "fields": [{"label": "Tracking number", "value": "DPD123456789"}]}}
- v mora biti celo število 1. Brez njega odgovor ne šteje kot kartica in velja preslikava odgovora, konfigurirana v elementu.
- state je le barva in ikona:
ok,pending,warnalierror. Vse, kar nosi pomen, se vpiše v status_text kot prost besedilo. - fields je seznam oznak in vrednosti, največ 20 vnosov. Pre dolge vrednosti se skrajšajo namesto da bi bile zavrnjene, zato naročilo nikoli ne odpove zaradi podrobnosti.
Vnosi uporabnika pripadajo strežniku: ostanejo nespremenjeni, ne glede na to, kaj pošlje vaš backend. To je zapis v klepetu o tem, kaj je dejansko oddano.
Poročanje o stanju kasneje
Ko element teče, Skava pošlje dve dodatni vrednosti: callback_url in callback_token. Tam kasneje poročajte novo stanje in v klepetu se pojavi nova kartica, tudi na telefonu, medtem ko nekdo gleda. Prejšnja ostane, zato je razvidno, katero stanje je bilo poročano. Pošljite enak objekt card kot zgoraj, prek POST z glavo Authorization: Bearer <callback_token>. Ob kartici se pošljejo trije izbirni parametri:
- seq: vaš lastni števec. Poročilo z manjšo ali enako vrednostjo se zavrne, zato se dve poročili ne moreta prehiteti.
- final: zaključi interakcijo. Žeton postane neveljaven in kartica je dokončna.
- notify: nastavite na
false, da se kartica objavi tiho, brez števila neprebranih sporočil in brez obvestila. Primerno za vmesne korake, ki ne bi smeli prebuditi nikogar. Brez tega je kartica povsem običajno sporočilo.
Interakcija lahko objavi največ 50 kartic. Enako poročilo dvakrat ne ustvari druge kartice.
Skava odgovori s 200 in seznamom hints, če je bilo kaj skrajšano ali izpuščeno, ter s 422, če je bila kartica neuporabna. Interakcija sprejema poročila 90 dni.
Kartice objavi sistemski pošiljatelj Skave, ne oseba, ki je izvedla element, in ne račun vaše lastne družbe. V naslovu kartice je navedeno, kateri sistem je avtor.
Celoten primer za kopiranje je na voljo v repozitoriju pod example_order_server/ in deluje na api.skava.io.
Sorazno
Želite namesto tega ustvariti izpolnjevani predlog dokumenta? Glejte Prilagojeni elementi: dokumenti.
Pogosta vprašanja
Kaj je API vmesnik v Skavi?
Obrazec, katerega izpolnjene vrednosti Skava pošlje kot JSON na naslov, ki ga določite (vaš backend): uporabno za povezovanje Skave z vašimi lastnimi sistemi.
Kdo je pooblaščen za ustvarjanje in sprožanje API vmesnikov?
Ustvarjanje in urejanje je rezervirano za upravljavce podjetja. Objavljen vmesnik lahko nato sprožijo vsi člani podjetja.
Kakšna je razlika med "Ping" in "Test Request"?
Ping preveri le, ali je naslov dosegljiv : brez žetona in brez podatkov. Testna zahteva pošlje vzorčne podatke, vključno z žetonom, in prikaže celoten odziv.
Ali je moj API žeton varen?
Da. Žeton je shranjen šifriran in nikoli ni dostavljen strankam. Aplikacija prikaže le, ali je žeton nastavljen in kdaj poteče.
Kateri naslovi so dovoljeni kot končne točke?
Samo javno dostopni naslovi https://. Notranje cilje, kot so localhost, zasebna omrežja ali metapodatki oblaka, je zavrnjeno : to ščiti pred zlorabo vmesnika.
Zakaj ne morem več spremeniti izdane vmesnika?
Izdani vmesniki so namerno nespremenljivi, da po izdaji nihče ne more zamenjati ciljne naslova ali žetona. Za spremembe ustvarite novo različico.