REST · Embed · CORS

API dokumentáció

Integráld a Vondarót a weboldaladba vagy a szerveredre. Itt minden nyilvános végpont, a hitelesítés és a példakérések egy helyen vannak.

Alap URL

Az éles környezet bázis URL-je: https://vondaro.io. A példák ezt használják.

A JSON API-k CORS-t engedélyeznek a böngészős hívásokhoz (ahol releváns). A private API kulcsot soha ne tedd be frontend kódba – csak szerverről hívható.

API kulcsok (public / private)

A kulcsokat a Vondaro dashboardon, a Beágyazás menüben hozhatod létre.

  • Public – beágyazott scriptekhez (chat widget, embed config). A böngészőben is használható.
  • Private – szerveroldali integrációkhoz (pl. REST lead felvétel). Ha a kéréshez tartozik böngészős Origin fejléc, a szolgáltatás elutasítja a hívást.

Embed script (chat widget)

Illeszd be a weboldalad body végéhez. A script betölti a buborék chatet és a data-base-url alapján hívja a szervereinket.

<script
  src="https://vondaro.io/embed.js"
  data-api-key="lgp_..."
  data-base-url="https://vondaro.io"
  async
></script>
POST
/api/v1/leads
Lead létrehozása (REST)
Új leadet hoz létre a céghez társított kulcs alapján. A public kulcsnál a domain egyezés számít (kivéve, ha a scriptben ki van kapcsolva a hostname ellenőrzés).

Header: x-api-key vagy Authorization: Bearer <kulcs>, vagy JSON mező: api_key.

JSON body

body
NameTypeRequiredDescription
first_namestring
yes
Keresztnév vagy keresztnév + vezetéknév.
emailstring
yes
Érvényes email cím.
last_namestringnoVezetéknév.
phonestringnoTelefonszám.
servicestringnoSzolgáltatás / termék rövid megnevezése.
detailsstringnoSzabad szöveg; a rendszer details.note alatt tárolja.
sourcestringnoEgyik: form | api | chat | manual. Alapértelmezés: api.
referral_dataobjectnoForrás / UTM mezők (pl. utm_source, landing_page, referrer_url). Csak engedélyezett kulcsok.

Válasz mezők

response
NameTypeDescription
successbooleanSikeres mentés.
lead_iduuidAz új lead azonosítója.
over_limitbooleanHa a csomag lead limitje túllépve, a lead így is mentve, státusz: over_limit.

HTTP

  • 400Hiányzó kötelező mező vagy érvénytelen email.
  • 401Hiányzó vagy érvénytelen API kulcs.
  • 403Private kulcs böngészőből, vagy nem engedélyezett origin (public).
  • 500Szerverhiba.

cURL (private kulcs, szerverről)

curl -sS -X POST "https://vondaro.io/api/v1/leads" \
  -H "Content-Type: application/json" \
  -H "x-api-key: lgp_PRIVATE_..." \
  -d '{
    "first_name": "Péter",
    "email": "peter@example.com",
    "phone": "+36301234567",
    "service": "Térkövezés",
    "details": "40 m2, Budapest",
    "source": "api"
  }'
GET
/api/embed/config
Chat widget konfiguráció
Visszaadja a cég AI chat beállításait (üdvözlő szöveg, gyors gombok, kontakt szövegek). Csak public kulccsal.

Query paraméterek

query
NameTypeRequiredDescription
api_keystring
yes
Public API kulcs.

Válasz mezők

response
NameTypeDescription
welcome_messagestringÜdvözlő üzenet.
quick_buttonsstring[]Gyors gombok feliratai.
contact_prompt_textstring | nullEgyedi kontakt kérés szöveg.
require_phonebooleanKötelező-e a telefon.
gate_quotebooleanÁrajánlat kapu beállítás.
chat_themeobject | nullPro+: { primary_hex }. Business/Enterprise (white label): + opcionálisan accent_hex, header_title, border_radius_px (8–28), hide_powered_by. Csomagnak megfelelő mezők; egyébként null.

HTTP

  • 400Hiányzó api_key.
  • 401Érvénytelen kulcs.
  • 403Private kulcs – itt nem használható.

Példa

curl -sS "https://vondaro.io/api/embed/config?api_key=lgp_..."
POST
/api/embed/chat
AI chat üzenet
Egy felhasználói üzenetet küld az AI-nak, és a válasz szöveget adja vissza. Beszélgetéshez és leadhez kapcsolódó session kezelés a szerveren történik.

JSON body

body
NameTypeRequiredDescription
api_keystring
yes
Public API kulcs.
messagestring
yes
Felhasználó üzenete.
session_idstringnoMunkamenet azonosító (kliens oldalon generálható, stabil).
first_namestringnoHa a kontakt már megvan, add meg a pontosabb leadhez.
emailstringnoEmail cím, ha már megvan.
phonestringnoTelefon, ha megvan.
referral_dataobjectnoUgyanazok a mezők, mint a lead API-nál (engedélyezett kulcsok).

Válasz mezők

response
NameTypeDescription
replystringAz AI válasz szövege.
lead_iduuidAz aktuális lead azonosítója.
session_idstringSession azonosító.
request_contactbooleanJelzi, ha a válasz alapján érdemes a kontakt adatokat kérni.

HTTP

  • 400Hiányzó api_key vagy üzenet.
  • 401Érvénytelen kulcs.
  • 403Private kulcs – böngészőből nem.
  • 500Szerverhiba.

Minimális JSON body

curl -sS -X POST "https://vondaro.io/api/embed/chat" \
  -H "Content-Type: application/json" \
  -d '{
    "api_key": "lgp_...",
    "message": "Sziasztok, árajánlatot kérnék térkövezésre.",
    "session_id": "lgp_session_abc123"
  }'

CORS és hibák

A dokumentált végpontok Access-Control-Allow-Origin: * értékkel válaszolnak a megfelelő OPTIONS preflight kérésekre.

A hibaüzenetek többsége JSON: { "error": "…" } magyar szöveggel.

Limit és válaszfejlécek (lead)

A POST /api/v1/leads sikeres válaszában a szerver opcionálisan küldi az X-Lead-Limit és X-Lead-Count fejléceket, ha a csomaghoz tartozik limit.