Ugradite LiKE AI pretragu u svoje aplikacije, veb-sajt ili interne sisteme. Tri metoda integracije: REST API, JS vidžet, iframe.
#REST API
Dostupnost po planu. Javni API i javni vidžet rade samo na planovima koji ih uključuju (vidi Planovi i naplata). Na ostalim planovima ključ ili javni vidžet ne mogu da se kreiraju, a već izdati prestaju da odgovaraju: zahtev preko ključa dobija
403, a dugme vidžeta se ne pojavljuje na sajtu. Korporativni vidžet ne zavisi od ove opcije.
#Korak 1 — Kreirajte API ključ
- Integracije → Public API → „Kreiraj ključ”
- Unesite naziv (na primer, „Mobilna aplikacija”)
- Kopirajte ključ — prikazuje se samo jednom
#Korak 2 — Koristite API
Svi zahtevi se autorizuju preko zaglavlja:
X-API-Key: your-key#Osnovne krajnje tačke
| Krajnja tačka | Metod | Opis |
|---|---|---|
/api/public/search |
POST | AI pretraga kroz bazu znanja |
/api/public/toc |
GET | Sadržaj (spisak) javnih članaka |
/api/public/articles |
GET | Spisak javnih članaka |
/api/public/articles/{id} |
GET | Sadržaj članka |
#Primer: AI pretraga
curl -X POST https://your-account.lynkora.pro/api/public/search \
-H "X-API-Key: $API_KEY" \
-H "Content-Type: application/json" \
-d '{"q": "Как оформить отпуск?"}'Odgovor:
{
"answer": "Для оформления отпуска...",
"sources": [
{"title": "Politika otpuskov", "url": "..."}
]
}#Ograničenja brzine
API zahtevi su ograničeni po ključu; kada se premaši, vraća se HTTP 429 sa zaglavljem Retry-After.
#Bezbednost
- Čuvajte ključeve u promenljivama okruženja, ne u kodu
- Kreirajte zaseban ključ za svaku aplikaciju
- Obrišite nekorišćene ključeve
- Ograničite domene u podešavanjima ključa
#JS vidžet
Plutajuće dugme za AI pretragu za ugrađivanje na bilo koji veb-sajt.
#Korak 1 — Preuzmite kod
- Integracije → Kanali → kartica „JS Widget“ → „Upravljaj vidžetima“ → „Kreiraj vidžet“. Navedite „Adresa sajta na kojem će stajati vidžet“
- Konfigurišite parametre (vidi tabelu ispod)
- Kopirajte kod
#Korak 2 — Dodajte ga na svoj sajt
Umetnite kopirani <script> pre zatvarajuće oznake </body>:
#Gde nalepiti kod u konstruktorima sajtova
Kod je isti za sve sajtove — ne treba ga menjati: vidžet sam pronalazi svoje mesto na stranici, gde god konstruktor postavi red. Razlika je samo u tome gde ga nalepiti.
Bilo koji sajt (HTML). Nalepite kod pre zatvarajuće oznake </body> na svakoj stranici na kojoj je potrebna pretraga — ili u zajednički šablon sajta.
WordPress. Instalirajte plugin WPCode (Insert Headers and Footers) → Code Snippets → Header & Footer → nalepite kod u polje Footer → Save Changes. Na WordPress.com pluginovi nisu dostupni na svim planovima.
Tilda. Za ceo sajt: Site Settings → More → HTML code for the HEAD section → nalepite kod → Save → ponovo objavite sve stranice. Za jednu stranicu: dodajte blok Other → T123 (HTML code) i nalepite kod u njega.
Wix. U kontrolnoj tabli sajta otvorite Settings → Custom Code (u zavisnosti od verzije interfejsa — u odeljku „Advanced“ ili „Development & integrations“) → Add Custom Code → nalepite kod → All pages → Body — end → Apply. Ne koristite element „Embed HTML“ na stranici: on se otvara u okviru (frame) na drugoj adresi i vidžet tamo neće raditi. Prilagođeni kod u Wix-u dostupan je na premium planu sa povezanim domenom.
Webflow. Site settings → Custom code → Footer code → nalepite kod → Save → objavite sajt. Prilagođeni kod za ceo sajt dostupan je na plaćenim planovima sajta.
Squarespace. Otvorite Code Injection (u podešavanjima sajta; u zavisnosti od verzije interfejsa — u odeljku Developer tools ili Website Tools) → nalepite kod u polje Footer → Save. Umetanje koda nije dostupno na svim planovima.
Shopify. Online Store → Themes → … → Edit code → fajl layout/theme.liquid → nalepite kod pre </body> → Save.
Framer. Site Settings → General → Custom Code → nalepite kod u polje End of tag → objavite sajt.
Google Tag Manager. Tags → New → Custom HTML → nalepite kod → okidač All Pages → Save → objavite kontejner dugmetom Publish.
Docusaurus. Kod se navodi u docusaurus.config.js, sa istim ključem:
scripts: [
{
src: 'https://your-account.lynkora.pro/api/public/widget.js',
'data-key': 'wk_live_YOUR_KEY',
async: true,
},
],Adrese sajta. Vidžet radi samo na adresama iz polja Dozvoljeni domeni, a adresa se proverava tačno: example.com i www.example.com su dve različite adrese — dodajte obe. Ako sajt proveravate na adresi za pregled u konstruktoru (na primer *.tilda.ws, *.wixsite.com, *.webflow.io, *.myshopify.com), dodajte i nju.
Dugme se nije pojavilo? Proverite tri stvari: vidžet je omogućen; adresa stranice je u polju Dozvoljeni domeni — tačno, sa www ili bez; kod stoji u podešavanjima sajta ili šablonu, a ne u elementu koji konstruktor otvara u okviru.
#Parametri vidžeta
| Parametar | Vrednost | Opis |
|---|---|---|
data-key |
wk_live_... |
Obavezno. Ključ vidžeta (kreiran u Integracije → Kanali → JS Widget). Bez njega, vidžet neće pokrenuti |
data-position |
bottom-right / bottom-left / none |
Pozicija plutajućeg dugmeta (podrazumevano bottom-right) |
data-theme |
light / dark / auto |
Vizuelna tema (podrazumevano light; auto prati temu Vašeg sajta) |
data-lang |
ru / en / de / es / fr / it / pt / ko / sr / sr-Cyrl / zh / ar |
Podrazumevani jezik. Primenjuje se samo kada je jezik posetioca nepoznat: izbor posetioca i jezici njegovog pregledača imaju prednost. Ako nijedan ne odgovara — engleski |
data-hotkey |
k |
Taster za otvaranje kombinovan sa Cmd/Ctrl (podrazumevano k → Cmd/Ctrl + K) |
data-session-token |
JWT | Opciono. Token sesije za režim identiteta po korisniku (vidi „Poređenje režima autentifikacije” ispod) |
#Rezultat
Dugme se pojavljuje u uglu vašeg sajta (boja — iz podešavanja vidžeta). Kliknite → prozor ćaskanja sa poljem za pitanje → AI odgovor iz vaše baze znanja.
#Jezik
Posetilac menja jezik dugmetom sa globusom u zaglavlju prozora; izbor se pamti u njegovom pregledaču za ovaj vidžet. Bez izbora vidžet uzima prvi odgovarajući od jezika pregledača, zatim jezik iz podešavanja vidžeta (data-lang), pa engleski. Jezik stranice vašeg sajta se ne uzima u obzir. Na arapskom se prozor otvara zdesna nalevo.
#Vezivanje za sajt
Vidžet radi samo na adresama navedenim pri kreiranju („Adresa sajta na kojem će stajati vidžet“); zahtevi sa drugih sajtova se odbijaju. Više adresa — odvojite zarezom. Bez adrese vidžet ne može da se uključi, a zvezdica „bilo koji sajt“ se ne prihvata. Adresa se poredi tačno: example.com i www.example.com su različite adrese, navedite obe ako se sajt otvara preko obe. Za lokalnu proveru navedite adresu sa portom, na primer http://127.0.0.1:8899.
#Šta vidi posetilac
- U tekstu odgovora nema oznaka izvora u obliku
[2.3]; naslovi i linkovi su formatirani. - Ispod odgovora — blok „Izvori“: link vodi na izvornu stranicu, a ako je nema — na članak.
- Link „Otvori potpunu pretragu“ postoji samo kod korporativnog vidžeta.
#Ako je limit AI odgovora potrošen
Javni vidžet se na sajtu u potpunosti skriva dok se limit ne vrati. Korporativni vidžet ostaje na mestu, ali ne prima pitanja i prikazuje kada će pretraga ponovo biti dostupna.
#iframe
Potpuno funkcionalan interfejs za pretragu ugrađen na vašu stranicu:
#Kod za ugrađivanje
/embed je jedina adresa portala koju je dozvoljeno otvoriti u okviru na tuđem sajtu. Koren portala (https://your-account.lynkora.pro) ne može da se ugradi — pregledač će to odbiti. Okviru nije potreban ključ: radi anonimno i prikazuje tačno ono što vidi anonimni posetilac portala; opseg se preuzima iz podešavanja vidžeta.
#Direktan link
Ako vam iframe ne odgovara, dajte korisnicima direktan link: https://your-account.lynkora.pro
#Demo režim
Za testiranje bez API ključa, dostupna je demo krajnja tačka sa ograničenjima:
| Parametar | Vrednost |
|---|---|
| Autorizacija | Nije potrebna |
| Ograničenja | Primenjuje se ograničenje broja zahteva po adresi. Pri prekoračenju se vraća HTTP 429 sa zaglavljem Retry-After |
| Namena | Upoznavanje sa API-jem. Za produkcijsko opterećenje napravite ključ |
Krajnja tačka: POST /api/public/demo/search
#Poređenje režima autentifikacije
Vidžet podržava dva režima autentifikacije.
#Režim A — Poverenje URL zoni
Autentifikacija na strani klijenta: vi ste odgovorni za to ko dolazi do stranica sa vidžetom (VPN, SSO, zaštićene rute). Lynkora ne zna identitet korisnika — samo Origin/IP zahteva. Vidžet je vidljiv svima koji otvore stranicu sa kodom za ugrađivanje.
- Backend kod: 0 linija
- Vreme onbordinga: ~2 minuta
- Pogodno za: intranet, interni portal
#Režim B — Token sesije (JWT po korisniku)
Vaš backend izdaje kratkotrajni token sesije za svakog korisnika. Lynkora zna identitet, vodi reviziju po korisniku i podržava opoziv i GDPR DSAR.
- Backend kod: ~10 linija (preko SDK-a)
- Vreme onbordinga: 1–2 sata
- Pogodno za: multi-tenant SaaS, regulisane industrije
| Režim A — URL zona | Režim B — Token sesije | |
|---|---|---|
| Identitet korisnika | ne (samo Origin/IP) | da (JWT po korisniku) |
| Revizija po korisniku | ne | da |
| Opoziv / GDPR DSAR | ne | da |
| Backend kod | 0 linija | ~10 linija (SDK) |
| Onbording | ~2 minuta | 1–2 sata |