API ühendused
Ühendage oma välised API-d enuchat-iga, nii et AI ja reeglid saaksid hankida reaalajas andmeid teie süsteemidest.
Kuidas see töötab
API ühendused võimaldavad teil integreerida enuchat-i oma taustasüsteemidega — broneerimismootorid, CRM-id, tellimuste haldus, inventuur ja palju muud. Kui külastaja esitab küsimuse, saab enuchat kutsuda teie API-d, et saada tegelikke andmeid ja lisada need vastusesse.
Voog
- Konfigureeri ühendus — teie API baas-URL ja autentimine
- Lisa lõpp-punktid — konkreetsed API kutsed tee mallide ja vastuse vastendamisega
- Loo reegel — AI või staatiline reegel CALL_API toiminguga
- Külastaja esitab küsimuse — reegel käivitub, kutsub teie API, vastendab vastuse seansi muutujatega
- AI vastab tegelike andmetega — seansi muutujad on AI-le saadaval täpse vastuse genereerimiseks
Näide: Hotellitoa saadavus
Külastaja: „Kas tuba 205 on järgmisel nädalal saadaval?"
AI reegel vastab: „Kui külastaja küsib toa saadavuse kohta"
CALL_API toiming: GET https://api.hotel.com/rooms/205/availability
Vastus vastendatud: room_available = true, price = „120 €/öö"
AI vastab: „Tuba 205 on järgmisel nädalal saadaval hinnaga 120 €/öö. Kas soovite seda broneerida?"
Ühenduse seadistamine
Minge juhtpaneelil Seaded → API ühendused.
1. Loo ühendus
Ühendus esindab ühte välist API-d. Vajate:
| Väli | Kirjeldus | Näide |
|---|---|---|
| Nimi | Selle ühenduse silt | Hotelli broneerimise API |
| Baas-URL | API juur-URL | https://api.hotel.com/v1 |
| Autentimise tüüp | Kuidas autentida | Bearer Token, OAuth2 jne. |
2. Autentimise tüübid
Puudub
Avalikele API-dele, mis ei vaja autentimist.
API võti
Saadab staatilise võtme päise või päringuparameetrina.
| Väli | Kirjeldus |
|---|---|
| Võti | Teie API võtme väärtus |
| Päise nimi | Kasutatav päis (vaikimisi: X-Api-Key) |
Võti saadetakse kujul: X-Api-Key: your_key_here
Bearer Token
Saadab staatilise tokeni Authorization päises.
Saadetakse kujul: Authorization: Bearer your_token_here
Basic Auth
Saadab kasutajanime ja parooli, base64-kodeeritult.
Saadetakse kujul: Authorization: Basic dXNlcjpwYXNz
OAuth 2.0 (Client Credentials)
Hankib juurdepääsutokeni automaatselt ja vahemällub kuni aegumiseni. Parim moodsate API-de jaoks nagu Salesforce, Google või kohandatud OAuth serverid.
| Väli | Kirjeldus |
|---|---|
| Tokeni URL | OAuth tokeni lõpp-punkt (nt. https://auth.example.com/oauth/token) |
| Client ID | Teie OAuth kliendi ID |
| Client Secret | Teie OAuth kliendi saladus |
| Scope | Tühikuga eraldatud skoobid (nt. read write) |
enuchat käsitleb tokeni elutsüklit automaatselt — hangib esimesel kutsel, vahemällub kuni aegumiseni, värskendab vajadusel.
Turvalisus: Kõik mandaadid krüpteeritakse puhkeolekus libsodium abil. Neid ei avaldata kunagi API vastustes — juhtpaneelil kuvatakse ainult maskeeritud väärtused.
Lõpp-punktide konfigureerimine
Igal ühendusel võib olla mitu lõpp-punkti — konkreetseid API kutseid, mida soovite teha.
| Väli | Kirjeldus | Näide |
|---|---|---|
| Nimi | Selle lõpp-punkti silt | Kontrolli saadavust |
| Meetod | HTTP meetod | GET, POST, PUT, DELETE |
| Tee | URL-tee (lisatakse baas-URL-ile). Kasutage {'{'}variable} dünaamiliste väärtuste jaoks | /rooms/{'{'}roomId}/availability |
| Päringu parameetrid | URL parameetrid võtme-väärtuse paaridena. Väärtused toetavad {'{'}variable} | date={'{'}checkIn} |
| Keha mall | JSON keha POST/PUT jaoks. Toetab {'{'}variable} interpolatsiooni | {'{'}"guest": "{'{'}name}"} |
| Vastuse vastendus | Vastendage JSON vastuse väljad seansi muutujatega, kasutades punktnotatsiooni | data.available → room_available |
| Kirjeldus | AI konteksti (milliseid andmeid see lõpp-punkt tagastab) | Tagastab toa saadavuse ja hinnad |
Muutujate interpolatsioon
Kasutage {'{'}variableName} teedes, päringuparameetrites ja keha mallides. Muutujad tulevad:
- Seansi muutujatest — seatud eelmistest reeglitest (SET_VARIABLE toiming)
- Toimingu parameetritest — kõvasti kodeeritud CALL_API reegli toimingus
Vastuse vastendus
Vastendage JSON vastuse väljad seansi muutujatega, kasutades punktnotatsiooni:
// API tagastab:
{'{'}
"data": {'{'}
"available": true,
"price": {'{'} "amount": 120, "currency": "EUR" }
}
}
// Vastendus:
data.available → room_available // "true"
data.price.amount → room_price // "120"
data.price.currency → room_currency // "EUR"Vastendatud muutujad salvestatakse seansi muutujatena vestluses ja on AI-le saadaval vastuste genereerimiseks.
Reeglitega kasutamine
API kutsed käivitatakse reeglites CALL_API toiminguga. Saate neid kombineerida teiste toimingutega.
Retsept: Tellimuse oleku otsimine
Ühendus: Tellimuste halduse API — https://api.shop.com/v2 — Bearer Token
Lõpp-punkt: GET /orders/{'{'}orderId} → vastendab data.status → order_status, data.eta → delivery_eta
Reegel (AI tüüp): „Kui külastaja küsib oma tellimuse oleku või tarne kohta"
Toimingud:
- CALL_API → Tellimuse oleku lõpp-punkt
- REPLY_AI → AI kasutab vastamiseks
order_statusjadelivery_eta
Tulemus: Külastaja: „Kus on mu tellimus #4521?" — AI: „Teie tellimus #4521 on hetkel saatmisel ja peaks neljapäevaks kohale jõudma."
Retsept: Reaalajas hinnakujundus
Ühendus: Hinnakujunduse API — https://pricing.example.com — API võti
Lõpp-punkt: GET /products/{'{'}productId}/price → vastendab price → current_price, currency → price_currency
Reegel (staatiline): MESSAGE_MATCHES_REGEX: /\b(price|cost|how much)\b/i
Toimingud:
- CALL_API → Hinnakujunduse lõpp-punkt
- REPLY_TEXT → „Praegune hind on {'{'}current_price} {'{'}price_currency}."
Testimine
Enne reeglites kasutamist testige alati oma ühendusi ja lõpp-punkte:
- Testi ühendust — kontrollib, kas autentimine töötab (OAuth2 jaoks: hangib tokeni)
- Testi lõpp-punkti — teeb tõelise API kutse näidismuutujatega ja näitab vastust
- Testi reeglit (kuivtest) — Reeglite lehel testige, kas reegel sobituks ja millised toimingud käivituksid
Vihje: Alustage ühenduse testimisega, seejärel iga lõpp-punktiga, seejärel kogu reegliga. Nii saate isoleerida probleeme igal tasemel.
Turvalisus
- Krüpteerimine puhkeolekus — kõik mandaadid krüpteeritakse libsodium abil enne salvestamist
- Ei avaldata kunagi — API vastused ei sisalda kunagi dekrüpteeritud mandaate, ainult maskeeritud väärtusi
- SSRF kaitse — enuchat blokeerib kutseid localhostile, privaatsetele IP-dele ja sisevõrgu hostinimedele
- Ajalõpp — välistel API kutsetel on 5-sekundi ajalõpp, et vältida kinnijäämist
- OAuth2 tokeni vahemällu — juurdepääsutokenid vahemällutakse turvaliselt ja värskendatakse automaatselt
- Rentnike isoleerimine — ühendused on teie rentniku jaoks, teistele kättesaamatud
Valmis oma API-sid ühendama?
Alustage oma süsteemide integreerimist enuchat-iga juba täna.
Alusta tasuta