Informio pro vývojáře

Vložte chat, Search nebo vytvořte vlastní rozhraní

Přidejte na web hotový chat widget nebo Informio Search. Pro vlastní rozhraní použijte veřejné API s povolenými doménami, lokalizací a stávajícími daty asistenta.

Nejjednodušší nasazení

Hotový widget jedním scriptem

V nastavení asistenta nejprve povolte doménu webu. Poté nahraďte ASSISTANT_ID veřejným ID asistenta a vložte kód do stránky. Widget si sám načte vzhled, texty i historii konverzace.

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

Kód vložte před koncovou značku </body>. Díky defer neblokuje načítání stránky a funguje na počítači i mobilu.

Povolená doména

Origin požadavku se musí shodovat s doménou povolenou v nastavení asistenta. Prohlížeč jej odešle automaticky.

Stabilní relace

Vlastní náhodné session_id zachová historii chatu mezi zprávami i po opětovném otevření klienta.

Veřejné ID asistenta

ID asistenta není tajný API klíč. Tajemství ani přihlašovací údaje k AI nikdy nevkládejte do klienta.

Informio Search

Vyhledávání vložíte hotovým skriptem

Skript vykreslí pole, návrhy i výsledky a sám volá Informio API. Na hostitelském webu nepotřebujete vlastní backend pro vyhledávání.

  1. 1.V nastavení asistenta povolte doménu webu. V záložce Search zapněte vyhledávání, vyberte veřejné webové/XML zdroje a uložte změny.
  2. 2.Zkopírujte vygenerovaný kód z administrace. V této ukázce nahraďte ASSISTANT_ID veřejným ID svého asistenta.
  3. 3.Vložte kód do HTML šablony nebo bloku pro vlastní HTML, který povoluje skripty. Po načtení stránky je vyhledávání připravené.
Poznat 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ícího kontejneru; pokud ho vynecháte, pole se zobrazí na místě skriptu. Každý kontejner musí mít jedinečné ID. Pro více polí použijte samostatný skript a kontejner pro každé pole.

V React/Vue nebo jiném SPA ponechte kontejner v trvalém layoutu a skript načtěte jednou po jeho vytvoření přes document.createElement('script'). Skript vložený přes innerHTML se nespustí. Při častém připojování a odebírání komponenty použijte vlastní rozhraní přes API níže.

Vzhled a umístění výsledků

Barva, motiv, zaoblení a jazyk se přebírají z asistenta. V Search zvolte inline nebo modal a volitelné AI shrnutí. CSS hostitelského webu je oddělené pomocí Shadow DOM.

Zdroje a odkazy

Podporované jsou vybrané webové/XML zdroje s veřejným HTTP(S) odkazem. Samostatné MD a dokumenty nejsou podporované. Výsledky používají poslední synchronizovaná data.

Spotřeba tarifu

Autocomplete nevolá AI. Úspěšné potvrzené AI vyhledání včetně volitelného shrnutí spotřebuje jednu odpověď organizace.

Vlastní rozhraní přes Search API

Toto API potřebujete pouze pro vlastní rozhraní. Hotový search.js už všechny požadavky vyřizuje. Search nepoužívá session_id ani tajný API klíč.

GET/api/search/{assistant}

Vrátí vzhled, jazyk, režim zobrazení, branding a lokalizované hlášky.

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

Textové návrhy bez AI, nejvýše 6 výsledků. q je povinný parametr s 3–300 znaky.

POST/api/search/{assistant}/results

JSON tělo obsahuje q s 3–300 znaky. Vrátí nejvýše 24 výsledků, volitelné summary, mode a notice.

Posílejte Accept: application/json; při POST také Content-Type: application/json. Prohlížeč posílá Origin automaticky a doména musí být povolená. Accept-Language určuje jazyk při automatickém jazyku asistenta. U návrhů použijte 300 ms prodlevu a rušte zastaralé požadavky.

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 otevírací doba",
      "url": "https://example.com/wellness",
      "type": "page",
      "excerpt": "Bazén, saunový svět a praktické informace před návštěvou.",
      "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 nebo profile. Obrázek, cena, měna a sklad mohou být null. summary je text nebo null; mode je ai nebo text a notice je lokalizovaná zpráva nebo null. Seznam má nejvýše 24 výsledků bez stránkování.

Ukázka JavaScriptu očekává vlastní kontejner #custom-search-results a vykreslí odkazy. Úryvky, summary i notice vykreslujte přes textContent, ne innerHTML. Používejte ověřené HTTP(S) URL; obrázky načítejte pouze tehdy, když image_url existuje.

Limity a textový režim

Konfigurace a návrhy sdílejí limit 120 požadavků za minutu na asistenta/IP. Výsledky mají limit 20 za minutu na asistenta/IP. Při 429 respektujte Retry-After.

Chyba AI nebo vyčerpaný tarif může vrátit HTTP 200 s mode: text a textovými výsledky bez spotřeby odpovědi. Při selhání pouze shrnutí zůstává mode: ai, summary je null a výsledky se účtují jako jedno AI vyhledání.

Stáhnout OpenAPI

Chybové stavy

403
Doména není povolená.
404
Asistent neexistuje, je koncept nebo má vypnutý Search.
422
Chybějící nebo neplatný parametr q.
423
Asistent je pozastavený nebo blokovaný kontrolou kvality.
429
Překročený limit požadavků; zkuste to po uplynutí Retry-After.

Rychlý start

První odpověď přes API

Nahraďte ASSISTANT_ID veřejným ID z nastavení asistenta. Stejné session_id posílejte během celé konverzace.

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í přehled

Veřejné Widget API

Stabilní endpointy, které používá také oficiální Informio widget.

GET/widget/{assistant}

Konfigurace asistenta

Vrátí název, vzhled, texty, dostupnost operátora a existující historii pro zadanou relaci.

POST/widget/{assistant}/messages

Odeslání zprávy

Odešle otázku návštěvníka a vrátí odpověď, produkty nebo aktuální stav předání člověku.

GET/widget/{assistant}/sync

Synchronizace chatu

Načte nové zprávy operátora, stav převzetí a ukončení konverzace bez obnovení celého rozhraní.

POST/widget/{assistant}/handoff

Žádost o operátora

Požádá dostupný tým o převzetí konverzace člověkem, pokud je tato funkce pro asistenta zapnutá.

POST/widget/{assistant}/page-view

Pohyb návštěvníka

Přiřadí ke konverzaci navštívenou URL a název stránky bez obsahu formulářů a query parametrů.

POST/widget/{assistant}/end

Ukončení a hodnocení

Ukončí aktuální konverzaci a volitelně uloží pozitivní nebo negativní hodnocení návštěvníka.

Doporučený postup

Jedna relace od otevření po konec

Klient potřebuje pouze veřejné ID asistenta, povolený Origin a stabilní session_id.

1

Načtěte konfiguraci

Po otevření chatu získejte vzhled, texty a dosavadní historii relace.

2

Odesílejte zprávy

Každou otázku odešlete se stejným session_id a na webu také s aktuální stránkou.

3

Průběžně synchronizujte

Po žádosti o člověka pravidelně načítejte nové zprávy a stav operátora.

Strojově čitelný kontrakt

OpenAPI YAML můžete importovat do Postmanu, Insomnie nebo použít pro vygenerování klienta ve vašem jazyce.

Stáhnout OpenAPI

Potřebujete spravovat asistenty přes API?

Veřejný kontrakt pokrývá chat, widget a Search. API pro správu asistentů a znalostních zdrojů není veřejné; požadavek probereme na info@informio.eu.

Premeňte svoje know-how na asistenta, který odpovídá 24/7.

Začněte bez platební karty a bez API klíče. Výchozí Informio AI je připravené automaticky, vlastní OpenAI účet nebo AI server můžete připojit volitelně.

FREE program · 100 odpovědí · bez platební karty