Informio pre vývojárov

Vložte chat, Search alebo vytvorte vlastné rozhranie

Pridajte na web hotový chat widget alebo Informio Search. Pre vlastné rozhranie použite verejné API s povolenými doménami, lokalizáciou a existujúcimi dátami asistenta.

Najjednoduchšie nasadenie

Hotový widget jedným scriptom

V nastavení asistenta najprv povoľte doménu webu. Potom nahraďte ASSISTANT_ID verejným ID asistenta a vložte kód do stránky. Widget si sám načíta vzhľad, texty aj históriu konverzácie.

HTML
<script src="https://informio.eu/widget.js" data-assistant="ASSISTANT_ID" defer></script>

Kód vložte pred koncovú značku </body>. Vďaka defer neblokuje načítanie stránky a funguje na počítači aj mobile.

Povolená doména

Origin požiadavky sa musí zhodovať s doménou povolenou v nastavení asistenta. Prehliadač ho odošle automaticky.

Stabilná relácia

Vlastné náhodné session_id zachová históriu chatu medzi správami aj po opätovnom otvorení klienta.

Verejné ID asistenta

ID asistenta nie je tajný API kľúč. Tajomstvá ani AI prihlasovacie údaje nikdy nevkladajte do klienta.

Informio Search

Vyhľadávanie vložíte hotovým scriptom

Script vykreslí pole, autocomplete aj výsledky a sám volá Informio API. Na hostiteľskom webe nepotrebujete vlastný backend pre vyhľadávanie.

  1. 1.V nastaveniach asistenta povoľte doménu webu. V záložke Search zapnite vyhľadávanie, vyberte verejné webové/XML zdroje a uložte zmeny.
  2. 2.Skopírujte vygenerovaný kód z administrácie. V tejto ukážke nahraďte ASSISTANT_ID verejným ID svojho asistenta.
  3. 3.Vložte kód do HTML šablóny alebo bloku pre vlastné HTML, ktorý povoľuje script. Po načítaní stránky je vyhľadávanie pripravené.
Spoznať Informio Search
HTML
<div id="informio-search"></div>
<script src="https://informio.eu/search.js"
  data-assistant="ASSISTANT_ID"
  data-target="#informio-search" defer></script>

data-target je CSS selektor existujúceho kontajnera; ak ho vynecháte, pole sa zobrazí na mieste scriptu. Každý kontajner musí mať jedinečné ID. Pre viac polí použite samostatný script a kontajner pre každé pole.

V React/Vue alebo inom SPA nechajte kontajner v trvalom layoute a script načítajte raz po jeho vytvorení cez document.createElement('script'). Script vložený cez innerHTML sa nespustí. Pri častom montovaní a odstraňovaní komponentu použite vlastné rozhranie cez API nižšie.

Vzhľad a umiestnenie výsledkov

Farba, téma, zaoblenie a jazyk sa preberajú z asistenta. V Search zvoľte inline alebo modal a voliteľné AI zhrnutie. Hostiteľské CSS je oddelené cez Shadow DOM.

Zdroje a odkazy

Podporované sú vybrané webové/XML zdroje s verejným HTTP(S) odkazom. Samostatné MD a dokumenty nie sú podporované. Výsledky používajú posledné synchronizované údaje.

Spotreba programu

Autocomplete nevolá AI. Úspešné potvrdené AI vyhľadanie vrátane voliteľného zhrnutia spotrebuje jednu odpoveď organizácie.

Vlastné rozhranie cez Search API

Toto API potrebujete iba pri vlastnom rozhraní. Hotový search.js už všetky požiadavky vybavuje. Search nepoužíva session_id ani tajný API kľúč.

GET/api/search/{assistant}

Vráti vzhľad, jazyk, režim zobrazenia, branding a lokalizované hlášky.

GET/api/search/{assistant}/suggest?q=wellness

Textové návrhy bez AI, najviac 6 výsledkov. q je povinný parameter s 3–300 znakmi.

POST/api/search/{assistant}/results

JSON telo obsahuje q s 3–300 znakmi. Vráti najviac 24 výsledkov, voliteľné summary, mode a notice.

Posielajte Accept: application/json; pri POST aj Content-Type: application/json. Prehliadač posiela Origin automaticky a doména musí byť povolená. Accept-Language určuje jazyk pri automatickom jazyku asistenta. Pri návrhoch použite 300 ms odmlku a rušte zastarané požiadavky.

JavaScript
const assistantId = 'ASSISTANT_ID';
const query = 'wellness';
const response = await fetch(
  `https://informio.eu/api/search/${assistantId}/results`,
  {
    method: 'POST',
    credentials: 'omit',
    headers: {
      Accept: 'application/json',
      'Content-Type': 'application/json',
      'Accept-Language': document.documentElement.lang || 'en',
    },
    body: JSON.stringify({ q: query }),
  },
);
if (!response.ok) throw new Error(String(response.status));
const { results, summary, mode, notice } = await response.json();
const container = document.querySelector('#custom-search-results');
container.replaceChildren();
for (const item of results) {
  const url = new URL(item.url);
  if (!['https:', 'http:'].includes(url.protocol)
    || url.username || url.password) continue;
  const link = document.createElement('a');
  link.href = url.href;
  link.textContent = item.title;
  container.append(link);
}
JSON
{
  "results": [
    {
      "title": "Wellness a otváracie hodiny",
      "url": "https://example.com/wellness",
      "type": "page",
      "excerpt": "Bazén, saunový svet a praktické informácie pred návštevou.",
      "image_url": null,
      "price": null,
      "currency": null,
      "in_stock": null
    }
  ],
  "summary": null,
  "mode": "ai",
  "notice": null
}

results obsahuje karty; type je page, article, product, event alebo profile. Obrázok, cena, mena a sklad môžu byť null. summary je text alebo null; mode je ai alebo text a notice je lokalizovaná správa alebo null. Zoznam je obmedzený na 24 výsledkov bez stránkovania.

Ukážka JavaScriptu očakáva vlastný kontajner #custom-search-results a vykreslí odkazy. Úryvky, summary aj notice vykresľujte cez textContent, nie innerHTML. Používajte overené HTTP(S) URL; obrázky načítajte len vtedy, keď image_url existuje.

Limity a textový režim

Konfigurácia a návrhy zdieľajú limit 120 požiadaviek za minútu na asistenta/IP. Výsledky majú limit 20 za minútu na asistenta/IP. Pri 429 rešpektujte Retry-After.

AI chyba alebo vyčerpaný program môže vrátiť HTTP 200 s mode: text a textovými výsledkami bez spotreby odpovede. Pri zlyhaní iba zhrnutia zostáva mode: ai, summary je null a výsledky sa účtujú ako jedno AI vyhľadanie.

Stiahnuť OpenAPI

Chybové stavy

403
Doména nie je povolená.
404
Asistent neexistuje, je koncept alebo má vypnutý Search.
422
Chýbajúci alebo neplatný parameter q.
423
Asistent je pozastavený alebo blokovaný kontrolou kvality.
429
Prekročený limit požiadaviek; skúste to po uplynutí Retry-After.

Rýchly štart

Prvá odpoveď cez API

Nahraďte ASSISTANT_ID verejným ID z nastavení asistenta. Rovnaké session_id posielajte počas celej konverzácie.

Základná URL

https://informio.eu/api
curl --request POST \
  --url https://informio.eu/api/widget/ASSISTANT_ID/messages \
  --header 'Accept: application/json' \
  --header 'Content-Type: application/json' \
  --header 'Origin: https://example.com' \
  --data '{
    "session_id": "visitor-session-01JEXAMPLE1234567890",
    "message": "When are you open?"
  }'

Referenčný prehľad

Verejné Widget API

Stabilné endpointy, ktoré používa aj oficiálny Informio widget.

GET/widget/{assistant}

Konfigurácia asistenta

Vráti názov, vzhľad, texty, dostupnosť operátora a existujúcu históriu pre zadanú reláciu.

POST/widget/{assistant}/messages

Odoslanie správy

Odošle otázku návštevníka a vráti odpoveď, produkty alebo aktuálny stav odovzdania človeku.

GET/widget/{assistant}/sync

Synchronizácia chatu

Načíta nové správy operátora, stav prevzatia a ukončenie konverzácie bez obnovenia celého rozhrania.

POST/widget/{assistant}/handoff

Žiadosť o operátora

Požiada dostupný tím o prevzatie konverzácie človekom, ak je táto funkcia pre asistenta zapnutá.

POST/widget/{assistant}/page-view

Pohyb návštevníka

Priradí ku konverzácii navštívenú URL a názov stránky bez obsahu formulárov a query parametrov.

POST/widget/{assistant}/end

Ukončenie a hodnotenie

Ukončí aktuálnu konverzáciu a voliteľne uloží pozitívne alebo negatívne hodnotenie návštevníka.

Odporúčaný postup

Jedna relácia od otvorenia po koniec

Klient potrebuje iba verejné ID asistenta, povolený Origin a stabilné session_id.

1

Načítajte konfiguráciu

Po otvorení chatu získajte vzhľad, texty a doterajšiu históriu relácie.

2

Odosielajte správy

Každú otázku odošlite s rovnakým session_id a pri webe aj s aktuálnou stránkou.

3

Priebežne synchronizujte

Po žiadosti o človeka pravidelne načítajte nové správy a stav operátora.

Strojovo čitateľný kontrakt

OpenAPI YAML môžete importovať do Postmanu, Insomnie alebo použiť na vygenerovanie klienta vo vašom jazyku.

Stiahnuť OpenAPI

Potrebujete spravovať asistentov cez API?

Verejný kontrakt pokrýva chat, widget a Search. API na správu asistentov a znalostných zdrojov nie je verejné; požiadavku preberieme na info@informio.eu.

Premeňte svoje know-how na asistenta, ktorý odpovedá 24/7.

Začnite bez platobnej karty a bez API kľúča. Predvolené Informio AI máte pripravené automaticky, vlastný OpenAI účet alebo AI server môžete pripojiť voliteľne.

FREE program · 100 odpovedí · bez platobnej karty