Skava Skava / Wiki

Prilagođeni elementi: API

API sučelje je obrazac čije ispunjene vrijednosti Skava šalje kao JSON na adresu koju odredite (vaš backend). Na taj način možete sigurno povezati Skavu s vlastitim sustavima.

i

API sučeljima upravljate u Web aplikaciji pod Prilagođeni elementi → uključite API sučelja. Izrada i uređivanje rezervirani su za administratore tvrtke; objavljena sučelja zatim mogu pokretati svi članovi tvrtke.

Postavite API sučelje

Sučelje se sastoji od polja za unos (ona čine JSON), ciljne adrese i autentifikacije.

  1. Stvaranje polja: Svako polje dobiva JSON ključ. S desne strane vidite uživo JSON pregled, koji se šalje vašem backendu upravo na taj način.
  2. Adresa (URL): https:// adresa vašeg backenda. Dopuštene su samo HTTPS adrese i one javno dostupne (vidi Sigurnost u nastavku).
  3. Metoda: POST (zadano), PUT, PATCH ili GET. Uz GET vrijednosti se dodaju kao upitni parametri umjesto slanja u tijelu zahtjeva.
  4. Autentifikacija: Postavite naziv zaglavlja (npr. Authorization) i prefiks vrijednosti (npr. Bearer ), a zatim spremite token. Opcionalno postavite datum isteka.
  5. Polja odgovora (opcionalno): Definirajte putem puta koje vrijednosti iz odgovora backenda trebaju biti prikazane: npr. order.id ili items[0].sku.
  6. Provjerite s Ping i Test Request, zatim Release.
Skava web aplikacija: kartica Polja sučelja API-ja. Na vrhu automatski uključene vrijednosti konteksta (ime korisnika, tvrtka, projekt …), ispod prilagođena polja s JSON ključem, a na desnoj strani pregled obrasca i uživo JSON pregled.
Kartica Polja: svako polje dobiva JSON ključ. Na vrhu su automatski uključene vrijednosti konteksta poput korisnika, tvrtke i naziva projekta. Na desnoj strani vidite obrazac i uživo JSON: točno ono što se šalje vašem backendu.
Skava web aplikacija: kartica Endpoint sučelja API-ja s poljima za URL, metodu POST, timeout, zaglavlje za autentifikaciju, prefiks vrijednosti Bearer i unos za šifrirani token.
Kartica Endpoint: ciljna adresa (samo HTTPS), metoda, timeout i zaglavlje za autentifikaciju uz prefiks vrijednosti. Token je pohranjen šifrirano i nikada se ne isporučuje klijentima.
Skava webaplikacija: kartica Odgovor u sučelju API-ja. Postavljeno je polje odgovora s JSON ključem Success, a desno je prikaz kako će rezultat izgledati u chatu.
Kartica Odgovor (opcionalno): definirajte putem puta koje vrijednosti iz odgovora backenda se prikazuju. Desno se nalazi pregled kartice rezultata kako će se kasnije pojaviti u chatu.

Sigurno pohranjivanje tokena

Token se pohranjuje šifriran i nikada se ne vraća klijentima: aplikacija prikazuje samo je li token postavljen i kada istječe. Pri slanju, Skava ga serveru dodaje u konfiguriranu zaglavlje. Ako postavite datum isteka, Skava odbija poziv nakon isteka i traži da obnovite token.

Testiranje: Ping i testni zahtjev

  • Ping : provjera dostupnosti. Provjerava samo odgovara li vaša adresa, a pritom ne šalje token niti podatke obrasca. Prikazuje dostupnost, status i vrijeme odgovora. Idealno kao prvi korak.
  • Testni zahtjev : pravi probni pokret: šalje uzorke podataka uključujući token na vašu adresu i prikazuje vam kompletan odgovor te izdvojena polja odgovora.

Kao administrator možete pokrenuti oba dok ste još u nacrtu kako biste provjerili integraciju prije objavljivanja.

Skava webaplikacija: kartica Test sučelja API-ja s gumbima Ping i Testni zahtjev, rezultatom Status 200 OK, vremenom odgovora i kompletnim JSON odgovorom s pozadinskog sustava.
Kartica Test: Ping i Testni zahtjev jedan do drugog. Ovdje sa statusom 200, vremenom odgovora i kompletnim odgovorom pozadinskog sustava u formatu JSON.

Nacrt i objavljivanje

Svako sučelje počinje kao nacrt i može se slobodno uređivati. Kada je sve spremno, objavite ga putem opcije Objavi.

!

Objavljena sučelja su neizmjenjiva. To je namjerno: nakon objavljivanja nitko ne može tajno zamijeniti ciljnu adresu ili token. Ako želite nešto promijeniti, stvorite novu verziju.

Sigurnost

i

Da bi se sprijeilo zlouporaba sučelja, primjenjuju se stroga pravila: dopušteni su samo HTTPS adresi, a adresa mora upućivati na javnu ciljnu adresu. Unutarnje adrese (npr. localhost, privatne mreže ili metapodaci oblaka) odbacuju se. Skava to provjerava pri svakom pozivu, povezuje se točno na verificiranu adresu, ne slijedi preusmjeravanja te ograničava vrijeme čekanja i veličinu odgovora.

Kako tim koristi objavljeno sučelje

Nakon što se sučelje objavi, svi članovi tvrtke mogu ga pokrenuti izravno iz razgovora: nije potreban uređivač. Tok je isti kao kod predložaka dokumenata: odabir, ispunjavanje, slanje.

  1. U razgovoru dodirnite Plus na dnu i odaberite Prilagođeni element.
  2. Odaberite željeni predložak ili sučelje s popisa.
  3. Ispunite obrazac i Pošaljite.
  4. Rezultat se prikazuje kao kartica u chatu: vidljiva svima u chatu.
Skava web aplikacija: izbornik s plusom u polju za unos chata s unosima Priključi datoteku, Foto/Video, Stvori zadatak, Stvori stavku usluge i Prilagođeni element.
Korak 1: putem izbornika Plus u chatu odaberite Prilagođeni element.
Skava web aplikacija: dijalog Odaberi prilagođeni element iznad chata, koji nudi objavljenu API radnju Narudžba materijala; kartice s rezultatima već su poslale u pozadini.
Korak 2: odaberite željani predložak ili sučelje: ovdje API radnju Narudžba materijala.
Skava web aplikacija: ispunjivi obrazac za API radnju Narudžba materijala s poljima broj artikla, opis, količina, jedinica, traženi datum isporuke i napomena, uz bilješku o automatski uključenim vrijednostima.
Korak 3: ispunite obrazac. Bilješka na dnu prikazuje koje se vrijednosti uključuju automatski.
Skava web aplikacija: kartica rezultata za API radnju Narudžba materijala u chatu sa statusom 200, unesenim vrijednostima i odgovorom pozadinskog sustava (broj narudžbe, status, datum isporuke) te proširivim sirovim podacima.
Korak 4: kartica rezultata u chatu s ulaznim podacima i odgovorom vašeg pozadinskog sustava.

Neka AI izgradi element

Kao administrator tvrtke ne morate sami koristiti uređivač. Recite Skava asistentu u chatu, na primjer "napravi mi obrazac za narudžbu za moj katalog s količinom i adresom isporuke". On će na temelju toga stvoriti nacrt, kasnije možete pojedinačno mijenjati polja, a poznaje i vaš učitani katalog artikala: za narudžbe predlaže odabir proizvoda umjesto tekstualnog polja za broj artikla.

Što također može postaviti: točku pristupa i metodu te publiku ("samo članovi tvrtke" ili "također vanjske osobe u istom chatu"). Za publiku prvo pita umjesto da je odmah postavi, jer to određuje tko može pokrenuti nešto izvana.

Što eksplicitno ne dira: token pristupa. Nikada ne traži niti prihvaća token, jer se poruke u chatu spremaju. Vi ga unosite sami u uređivaču, inače se ne šalje nijedan poziv. Također ne može objaviti: zadnji korak ostaje na vama, pa ništa ne postaje vidljivo kupcima bez provjere.

Tko ga može pokrenuti

Kartica "Točka pristupa" navodi tko može koristiti element. Zadano su to članovi vaše tvrtke. Druga postavka otvara ga vanjskim osobama, ali samo u chatu gdje je prisutan i netko iz vaše tvrtke: točno onaj slučaj za koji je namijenjen, kada vam kupac naručuje. Kada vaša tvrtka napusti chat, dozvola se automatski ukida.

Proizvodi iz vlastitog kataloga

Nakon što učitate katalog artikala, izgradnik nudi blok odabira proizvoda. Nema opcija za održavanje: popis je vaš katalog. Osoba koja naručuje pretražuje ga, vidi sliku, naziv i broj artikla, a vaš backend prima broj artikla. Skava odbacuje broj koji nije u vašem katalogu. Za količinu postavite obično polje za broj pored njega.

Definirajte karticu sami

Vaš backend odlučuje što kartica piše. Skava provjerava samo oblik, veličinu i sigurnost, nikada značenje: ne poznaje niti stanja narudžbe niti nazive polja. Da biste to učinili, odgovorite objektom card:

{"card": {"v": 1, "title": "Order 10001", "state": "pending", "status_text": "Being picked", "fields": [{"label": "Tracking number", "value": "DPD123456789"}]}}

  • v mora biti cijeli broj 1. Bez njega odgovor ne vrijedi kao kartica i primjenjuje se preslikavanje odgovora konfigurirano u elementu.
  • state je samo boja i ikona: ok, pending, warn ili error. Sve što nosi značenje ide u status_text kao slobodan tekst.
  • fields je popis oznaka i vrijednosti, najviše 20 stavki. Preduge vrijednosti se skraćuju umjesto da se odbace, pa narudžba nikada ne uspijeva zbog detalja.

Unosi korisnika pripadaju poslužitelju: ostaju nepromijenjeni bez obzira na to što vaš backend šalje. To je zapis u chatu o tome što je zapravo predano.

Prijavljenje statusa kasnije

Kada se element izvrši, Skava šalje dvije dodatne vrijednosti: callback_url i callback_token. Kasnije prijavite novo stanje na toj adresi i nova kartica se pojavi u chatu, također na mobitelu, dok netko gleda. Prethodna ostaje, pa je čitljivo koje je stanje prijavljeno. Pošaljite isti objekt card kao gore, putem POST s zaglavljem Authorization: Bearer <callback_token>. Uz karticu idu tri opcionalne vrijednosti:

  • seq: vaš vlastiti brojilo. Izvještaj s manjom ili jednakom vrijednošću se odbacuje, pa dva izvještaja ne mogu jedan preteksti drugog.
  • final: zatvara interakciju. Token postaje nevažeći, a kartica konačna.
  • notify: postavite na false da se kartica objavi tiho, bez broja nepročitanih poruka i bez obavijesti. Za međukorake koji ne bi trebali probuditi nikoga. Bez toga, kartica je potpuno normalna poruka.

Interakcija može objaviti najviše 50 kartica. Isti izvještaj dvaput ne stvara drugu karticu.

Skava odgovara s 200 i popisom hints ako je nešto skraćeno ili izbačeno, te s 422 ako je kartica bila neupotrebljiva. Interakcija prihvaća izvještaje 90 dana.

Kartice objavljuje Skavin sustavni pošiljatelj, ne osoba koja je pokrenula element niti račun vaše tvrtke. Tko je sustav koji piše navedeno je u naslovu kartice.

Potpuni primjer za kopiranje nalazi se u spremištu pod example_order_server/ i radi na api.skava.io.

Povezano

Želite li umjesto toga izraditi ispunjiv predložak dokumenta? Pogledajte Prilagođeni elementi: Dokumenti.

Često postavljana pitanja

Što je API sučelje u Skavi?

Obrazac čije ispunjene vrijednosti Skava šalje kao JSON na adresu koju odredite (vaš backend): korisno za povezivanje Skave s vlastitim sustavima.

Tko ima pravo stvarati i pokretati API sučelja?

Stvaranje i uređivanje rezervirano je za administratore tvrtke. Objavljeno sučelje zatim mogu pokretati svi članovi tvrtke.

Koja je razlika između „Ping" i „Testni zahtjev"?

Ping provjerava samo je li adresa dostupna: bez tokena i bez podataka. Test Request šalje uzorak podataka uključujući token i prikazuje kompletan odgovor.

Je li moj API token siguran?

Da. Token je spreman u šifriranom obliku i nikada se ne isporučuje klijentima. Aplikacija prikazuje samo je li token postavljen i kada istječe.

Koje su adrese dopuštene kao krajnje točke?

Samo javno dostupne adrese https://. Unutarnje ciljeve poput localhosta, privatnih mreža ili metapodataka o oblaku odbacuje se: to štiti od zlouporabe sučelja.

Zašto više ne mogu promijeniti objavljeno sučelje?

Objavljena sučelja su namjerno nepromjenjiva kako nitko ne bi mogao zamijeniti ciljnu adresu ili token nakon objave. Za izmjene stvorite novu verziju.