API-tilkoblinger

Koble dine eksterne API-er til enuchat slik at AI og regler kan hente sanntidsdata fra systemene dine.

Slik fungerer det

API-tilkoblinger lar deg integrere enuchat med dine egne backend-systemer — bookingmotorer, CRM-er, ordrehåndtering, lagerstyring og mer. Når en besøkende stiller et spørsmål, kan enuchat kalle API-et ditt for å hente ekte data og inkludere det i svaret.

Flyten

  1. Konfigurer en tilkobling — API-ets basis-URL og autentisering
  2. Legg til endpoints — spesifikke API-kall med sti-maler og svarkartlegging
  3. Opprett en regel — en AI- eller statisk regel med en CALL_API-handling
  4. Besøkende stiller et spørsmål — regelen utløses, kaller API-et ditt, kartlegger svaret til sesjonsvariabler
  5. AI svarer med ekte data — sesjonsvariablene er tilgjengelige for AI til å generere et presist svar

Eksempel: Hotellromtilgjengelighet

Besøkende: "Er rom 205 ledig neste uke?"

AI-regel matcher: "Når besøkende spør om romtilgjengelighet"

CALL_API-handling: GET https://api.hotel.com/rooms/205/availability

Svar kartlagt: room_available = true, price = "€120/natt"

AI svarer: "Rom 205 er ledig neste uke til €120/natt. Vil du booke det?"

Sette opp en tilkobling

Gå til Innstillinger → API-tilkoblinger i kontrollpanelet.

1. Opprett en tilkobling

En tilkobling representerer ett eksternt API. Du trenger:

FeltBeskrivelseEksempel
NavnEn etikett for denne tilkoblingenHotellbooking-API
Basis-URLAPI-ets rot-URLhttps://api.hotel.com/v1
AutentiseringstypeHvordan autentisereBearer Token, OAuth2, osv.

2. Autentiseringstyper

Ingen

For offentlige API-er som ikke krever autentisering.

API-nøkkel

Sender en statisk nøkkel som header eller spørringsparameter.

FeltBeskrivelse
NøkkelDin API-nøkkelverdi
HeadernavnHeader å bruke (standard: X-Api-Key)

Nøkkelen sendes som: X-Api-Key: din_nøkkel_her

Bearer Token

Sender et statisk token i Authorization-headeren.

Sendes som: Authorization: Bearer ditt_token_her

Basic Auth

Sender brukernavn og passord, base64-kodet.

Sendes som: Authorization: Basic dXNlcjpwYXNz

OAuth 2.0 (Client Credentials)

Henter et access token automatisk og cacher det til utløp. Best for moderne API-er som Salesforce, Google eller egne OAuth-servere.

FeltBeskrivelse
Token-URLOAuth token-endpoint (f.eks. https://auth.example.com/oauth/token)
Client IDDin OAuth client ID
Client SecretDin OAuth client secret
ScopeMellomromseparerte scopes (f.eks. read write)

enuchat håndterer tokenlivssyklusen automatisk — henter ved første kall, cacher til utløp, fornyer når nødvendig.

Sikkerhet: Alle legitimasjonsopplysninger krypteres i hvile med libsodium. De eksponeres aldri i API-svar — kun maskerte verdier vises i kontrollpanelet.

Konfigurere endpoints

Hver tilkobling kan ha flere endpoints — spesifikke API-kall du ønsker å gjøre.

FeltBeskrivelseEksempel
NavnEtikett for dette endpointetSjekk tilgjengelighet
MetodeHTTP-metodeGET, POST, PUT, DELETE
StiURL-sti (legges til basis-URL). Bruk {'{'}variable} for dynamiske verdier/rooms/{'{'}roomId}/availability
SpørringsparametreURL-parametre som nøkkel-verdi-par. Verdier støtter {'{'}variable}date={'{'}checkIn}
Body-malJSON-kropp for POST/PUT. Støtter {'{'}variable}-interpolering{'{'}"guest": "{'{'}name}"}
SvarkartleggingKartlegg JSON-svarfelt til sesjonsvariabler med punktnotasjondata.available → room_available
BeskrivelseKontekst for AI (hvilke data dette endpointet returnerer)Returnerer romtilgjengelighet og priser

Variabelinterpolering

Bruk {'{'}variableName} i stier, spørringsparametre og body-maler. Variabler kommer fra:

  • Sesjonsvariabler — satt av tidligere regler (SET_VARIABLE-handling)
  • Handlingsparametre — hardkodet i CALL_API-regelhandlingen

Svarkartlegging

Kartlegg JSON-svarfelt til sesjonsvariabler med punktnotasjon:

// API returns:
{'{'}
  "data": {'{'}
    "available": true,
    "price": {'{'} "amount": 120, "currency": "EUR" }
  }
}

// Mapping:
data.available  →  room_available    // "true"
data.price.amount  →  room_price    // "120"
data.price.currency  →  room_currency  // "EUR"

Kartlagte variabler lagres som sesjonsvariabler på samtalen og er tilgjengelige for AI til å generere svar.

Bruk med regler

API-kall utløses av CALL_API-handlingen i regler. Du kan kombinere dem med andre handlinger.

Oppskrift: Ordrestatusoppslag

Tilkobling: Ordrehåndterings-API — https://api.shop.com/v2 — Bearer Token

Endpoint: GET /orders/{'{'}orderId} → kartlegger data.statusorder_status, data.etadelivery_eta

Regel (AI-type): "Når besøkende spør om ordrestatus eller levering"

Handlinger:

  1. CALL_API → Ordrestatus-endpoint
  2. REPLY_AI → AI bruker order_status og delivery_eta til å svare

Resultat: Besøkende: "Hvor er bestillingen min #4521?" — AI: "Bestillingen din #4521 er for tiden under frakt og bør ankomme innen torsdag."

Oppskrift: Sanntidsprising

Tilkobling: Pris-API — https://pricing.example.com — API-nøkkel

Endpoint: GET /products/{'{'}productId}/price → kartlegger pricecurrent_price, currencyprice_currency

Regel (statisk): MESSAGE_MATCHES_REGEX: /\b(price|cost|how much)\b/i

Handlinger:

  1. CALL_API → Pris-endpoint
  2. REPLY_TEXT → "Gjeldende pris er {'{'}current_price} {'{'}price_currency}."

Testing

Test alltid tilkoblinger og endpoints før du bruker dem i regler:

  • Test tilkobling — verifiserer at autentisering fungerer (for OAuth2: henter et token)
  • Test endpoint — gjør et ekte API-kall med eksempelvariabler og viser svaret
  • Test regel (tørrkjøring) — på Regler-siden, test om en regel ville matche og hvilke handlinger som ville utføres

Tips: Start med å teste tilkoblingen, deretter hvert endpoint, deretter den komplette regelen. På denne måten kan du isolere problemer på hvert nivå.

Sikkerhet

  • Kryptering i hvile — alle legitimasjonsopplysninger krypteres med libsodium før lagring
  • Aldri eksponert — API-svar inkluderer aldri dekrypterte legitimasjonsopplysninger, kun maskerte verdier
  • SSRF-beskyttelse — enuchat blokkerer kall til localhost, private IP-er og interne vertsnavn
  • Timeout — eksterne API-kall har en 5-sekunders timeout for å forhindre henging
  • OAuth2 token-caching — access tokens caches sikkert og fornyes automatisk
  • Leietakerisolasjon — tilkoblinger er avgrenset til din leietaker, utilgjengelige for andre

Klar til å koble til API-ene dine?

Begynn å integrere systemene dine med enuchat i dag.

Kom i gang gratis