Brzi početak
Dodajte skriptu pri dnu dokumenta i inicijalizirajte s obveznim parametrima: projectId, apiKey i license. Bez važeće licence i API ključa widget se neće učitati.
Savjet: najprije testirajte na staging domeni (dodajte je u dopuštene domene licence), zatim prebacite na produkciju.
<script src="https://cdn.brendigo.com/ai/assistant.js" defer></script>
<script>
  window.BrendyAI = window.BrendyAI || {};
  BrendyAI.init({
    projectId: "YOUR_PROJECT_ID",
    apiKey: "YOUR_API_KEY",
    license: "YOUR_LICENSE_KEY",
    lang: "hr",
    theme: "auto"
  });
</script>
            Ugradnja
                Umetnite skriptu neposredno prije oznake </body>. Atribut defer osigurava da ne blokira renderiranje.
                Dostupni su i CMS dodaci (WordPress, Drupal, Joomla) te NPM paket za SPA okruženja.
              
position:"right"ili"left"(pozicija plutajućeg gumba)offset: npr.{ x: 24, y: 24 }(udaljenost od ruba)zIndex: npr.1050(redoslijed sloja)
<script src="https://cdn.brendigo.com/ai/assistant.js" defer></script>
<script>
  BrendyAI.init({
    projectId: "YOUR_PROJECT_ID",
    apiKey: "YOUR_API_KEY",
    license: "YOUR_LICENSE_KEY"
  });
</script>
            API ključ i licenca
Nakon aktivacije projekta u Brendigo konzoli dobit ćete API ključ i licencu. API ključ služi za autentikaciju i obračun kvota, dok licenca definira plan (Free, Pro, Enterprise) i dopuštene domene.
- Sigurnost ključa: ne izlažite ga javno; gdje je moguće, koristite proxy na poslužitelju.
 - Rotacija: promijenite ključ pri sumnji na kompromitaciju; ograničite CORS na vlastite domene.
 - Licenca: dodajte staging i produkcijske domene na popis dopuštenih kako bi učitavanje bilo uspješno.
 
// Proxy primjer (pseudo-kod): sakrivanje API ključa na poslužitelju
// Klijent
fetch('/api/assistant-proxy', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({ event: 'message', payload })
});
// Server (Node/Express)
app.post('/api/assistant-proxy', async (req, res) => {
  const r = await fetch('https://api.brendigo.com/assistant', {
    method: 'POST',
    headers: {
      'Authorization': 'Bearer ' + process.env.BRENDY_API_KEY,
      'Content-Type': 'application/json'
    },
    body: JSON.stringify(req.body)
  });
  res.status(r.status).send(await r.json());
});
            Konfiguracija
| Opcija | Tip | Zadano | Opis | 
|---|---|---|---|
projectId | string | — | ID vašeg projekta (obavezno). | 
apiKey | string | — | API ključ za autentikaciju i kvote (obavezno). | 
license | string | — | Licenčni ključ; plan i dopuštene domene (obavezno). | 
lang | string | "auto" | Jezik sučelja; može se naslijediti iz lang atributa dokumenta. | 
theme | string | "auto" | "light" | "dark" | "auto" (poštuje prefers-color-scheme). | 
sources | array<url> | [] | URL-ovi iz kojih asistent uči (FAQ, sitemap, dokumentacija). | 
user | object | {} | Podaci o korisniku (id, email uz privolu) radi personalizacije. | 
position | string | "right" | Pozicija plutajućeg gumba. | 
offset | object | {x:24,y:24} | Udaljenost od rubova prozora. | 
zIndex | number | 1050 | Redoslijed sloja u odnosu na ostale elemente. | 
consentMode | string | "auto" | Integracija s Google Consent Mode v2 / CMP-om. | 
endpoint | string | "/api/assistant" | Vlastiti backend endpoint ako koristite proxy. | 
retry | object | {count:2, backoff:300} | Ponašanje pri pogreškama (broj pokušaja i odgoda u ms). | 
leadCapture | boolean | false | Uključuje prikupljanje leadova (emitira događaj lead). | 
context | object | {} | Početni kontekst (npr. { plan: 'Pro', cartValue: 129.90 }). | 
onReady | function | — | Poziva se kada je widget spreman. | 
Događaji i API
Asistent emitira događaje na objektu window i pruža tanki API preko globalnog objekta BrendyAI.
ready— widget je inicijaliziranopen/close— prozor asistenta otvoren/zatvorenmessage— svaka korisnička ili AI porukalead— prikupljen potencijalni kontakt (ako je omogućeno)error— pogreška u radu widgeta ili mreže
// Callback na spremnost
BrendyAI.on('ready', (ctx) => {
  console.log('Asistent spreman', ctx.version);
});
// Slušanje poruka
BrendyAI.on('message', (payload) => {
  // { text, from: 'user' | 'assistant', ts }
  analytics.track('ai_message', payload);
});
// Programski otvoriti / zatvoriti prozor
BrendyAI.open();
BrendyAI.close();
// Predavanje konteksta
BrendyAI.context.set({ cartValue: 129.90, plan: 'Pro' });
            Otklanjanje poteškoća
- Widget se ne prikazuje: provjerite učitavanje skripte (bez 404) i vrijednosti 
projectId,apiKey,license. - Blokiran od CMP-a: koristite 
consentMode: "auto"ili ručno proslijedite stanje privole. - Sudar stilova: povećajte 
zIndexili postavitepositionnaleft. 
// Provjera inicijalizacije
if (!window.BrendyAI || !BrendyAI.version) {
  console.warn('Brendy AI nije inicijaliziran');
}
// Evidentiranje pogrešaka
BrendyAI.on('error', (e) => console.error('[BrendyAI]', e));
            Podrška
Trebate pomoć ili API ključ/licencu? Pišite na podrska@brendigo.com ili otvorite tiket preko kontakta.