Miunganisho ya API

Unganisha API zako za nje kwenye enuchat ili AI na sheria ziweze kuleta data ya wakati halisi kutoka mifumo yako.

Jinsi Inavyofanya Kazi

Miunganisho ya API inakuwezesha kuunganisha enuchat na mifumo yako ya backend — injini za uhifadhi, CRMs, usimamizi wa agizo, hesabu, na zaidi. Wakati mgeni anauliza swali, enuchat inaweza kupiga API yako kupata data halisi na kuijumuisha kwenye jibu.

Mtiririko

  1. Sanidi muunganisho — URL ya msingi ya API yako na uthibitisho
  2. Ongeza vituo — simu maalum za API na violezo vya njia na kuchora ramani ya jibu
  3. Unda sheria — sheria ya AI au tuli yenye kitendo cha CALL_API
  4. Mgeni anauliza swali — sheria huanzishwa, hupiga API yako, huchora ramani ya jibu kwenye vibadilishi vya kipindi
  5. AI hujibu na data halisi — vibadilishi vya kipindi vinapatikana kwa AI kwa kutoa jibu sahihi

Mfano: Upatikanaji wa Chumba cha Hoteli

Mgeni: "Je, chumba 205 kinapatikana wiki ijayo?"

Sheria ya AI inalingana: "Wakati mgeni anauliza kuhusu upatikanaji wa chumba"

Kitendo cha CALL_API: GET https://api.hotel.com/rooms/205/availability

Jibu limechorwa ramani: room_available = true, price = "€120/usiku"

AI hujibu: "Chumba 205 kinapatikana wiki ijayo kwa €120/usiku. Je, ungependa kukihifadhi?"

Kusanidi Muunganisho

Nenda kwenye Mipangilio → Miunganisho ya API kwenye dashibodi yako.

1. Unda Muunganisho

Muunganisho unawakilisha API moja ya nje. Unahitaji:

UwanjaMaelezoMfano
JinaLebo kwa muunganisho huuHotel Booking API
URL ya MsingiURL ya mzizi wa APIhttps://api.hotel.com/v1
Aina ya UthibitishoJinsi ya kuthibitishaBearer Token, OAuth2, nk.

2. Aina za Uthibitisho

Hakuna

Kwa API za umma ambazo hazihitaji uthibitisho.

Ufunguo wa API

Hutuma ufunguo tuli kama kichwa au kigezo cha hoja.

UwanjaMaelezo
UfunguoThamani ya ufunguo wako wa API
Jina la KichwaKichwa cha kutumia (chaguomsingi: X-Api-Key)

Ufunguo hutumwa kama: X-Api-Key: your_key_here

Bearer Token

Hutuma tokeni tuli kwenye kichwa cha Authorization.

Hutumwa kama: Authorization: Bearer your_token_here

Basic Auth

Hutuma jina la mtumiaji na nenosiri, yamewekwa base64.

Hutumwa kama: Authorization: Basic dXNlcjpwYXNz

OAuth 2.0 (Client Credentials)

Huleta tokeni ya ufikiaji kiotomatiki na kuihifadhi hadi imeisha. Bora kwa API za kisasa kama Salesforce, Google, au seva za OAuth maalum.

UwanjaMaelezo
URL ya TokeniKituo cha tokeni cha OAuth (mfano https://auth.example.com/oauth/token)
Client IDKitambulishi cha mteja wa OAuth
Client SecretSiri ya mteja wa OAuth
ScopeScopes zimetenganishwa kwa nafasi (mfano read write)

enuchat inashughulikia mzunguko wa maisha wa tokeni kiotomatiki — huleta kwenye simu ya kwanza, hucache hadi imeisha, huburudisha inapohitajika.

Usalama: Stakabadhi zote zimesimbwa kwa kupumzika kwa kutumia libsodium. Kamwe hazifunulwi kwenye majibu ya API — thamani zilizofichwa tu zinaonyeshwa kwenye dashibodi.

Kusanidi Vituo

Kila muunganisho unaweza kuwa na vituo vingi — simu maalum za API unazotaka kufanya.

UwanjaMaelezoMfano
JinaLebo kwa kituo hikiCheck availability
MbinuMbinu ya HTTPGET, POST, PUT, DELETE
NjiaNjia ya URL (imeongezwa kwenye URL ya msingi). Tumia {'{'}variable} kwa thamani za nguvu/rooms/{'{'}roomId}/availability
Vigezo vya HojaVigezo vya URL kama jozi za ufunguo-thamani. Thamani zinasaidia {'{'}variable}date={'{'}checkIn}
Kiolezo cha MwiliMwili wa JSON kwa POST/PUT. Inasaidia ubadilishaji wa {'{'}variable}{'{'}"guest": "{'{'}name}"}
Kuchora Ramani ya JibuChora ramani ya uwanja wa jibu la JSON kwa vibadilishi vya kipindi kwa kutumia nuktadata.available → room_available
MaelezoMuktadha kwa AI (ni data gani kituo hiki hurudisha)Hurudisha upatikanaji wa chumba na bei

Kubadilisha Kibadilishi

Tumia {'{'}variableName} kwenye njia, vigezo vya hoja, na violezo vya mwili. Vibadilishi vinatoka kwa:

  • Vibadilishi vya kipindi — vilivyowekwa na sheria za awali (kitendo cha SET_VARIABLE)
  • Vigezo vya kitendo — vilivyowekwa kwa ukubwa kwenye kitendo cha sheria ya CALL_API

Kuchora Ramani ya Jibu

Chora ramani ya uwanja wa jibu la JSON kwa vibadilishi vya kipindi kwa kutumia nukta:

// 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"

Vibadilishi vilivyochorwa ramani vimehifadhiwa kama vibadilishi vya kipindi kwenye mazungumzo na vinapatikana kwa AI kwa kutoa majibu.

Kutumia na Sheria

Simu za API huanzishwa na kitendo cha CALL_API kwenye sheria. Unaweza kuzichanganya na vitendo vingine.

Mapishi: Utafutaji wa Hali ya Agizo

Muunganisho: Order Management API — https://api.shop.com/v2 — Bearer Token

Kituo: GET /orders/{'{'}orderId} → huchora ramani ya data.statusorder_status, data.etadelivery_eta

Sheria (aina ya AI): "Wakati mgeni anauliza kuhusu hali ya agizo lake au utoaji"

Vitendo:

  1. CALL_API → kituo cha Hali ya Agizo
  2. REPLY_AI → AI hutumia order_status na delivery_eta kujibu

Matokeo: Mgeni: "Agizo langu #4521 liko wapi?" — AI: "Agizo lako #4521 linasafirishwa sasa na linapaswa kufika ifikapo Alhamisi."

Mapishi: Bei ya Wakati Halisi

Muunganisho: Pricing API — https://pricing.example.com — API Key

Kituo: GET /products/{'{'}productId}/price → huchora ramani ya pricecurrent_price, currencyprice_currency

Sheria (tuli): MESSAGE_MATCHES_REGEX: /\b(price|cost|how much)\b/i

Vitendo:

  1. CALL_API → kituo cha Bei
  2. REPLY_TEXT → "Bei ya sasa ni {'{'}current_price} {'{'}price_currency}."

Majaribio

Jaribu daima miunganisho na vituo vyako kabla ya kuvitumia kwenye sheria:

  • Jaribu Muunganisho — huthibitisha uthibitisho hufanya kazi (kwa OAuth2: huleta tokeni)
  • Jaribu Kituo — hufanya simu halisi ya API na vibadilishi vya sampuli na huonyesha jibu
  • Jaribu Sheria (dry-run) — kwenye ukurasa wa Sheria, jaribu kama sheria ingelingana na ni vitendo gani vingetekelezwa

Kidokezo: Anza kwa kujaribu muunganisho, kisha kila kituo, kisha sheria kamili. Kwa njia hii unaweza kutenga masuala katika kila ngazi.

Usalama

  • Usimbuaji kwa kupumzika — stakabadhi zote zimesimbwa kwa kutumia libsodium kabla ya kuhifadhi
  • Kamwe hazifunulwi — majibu ya API hayajumuishi kamwe stakabadhi zilizosimbuliwa, thamani zilizofichwa tu
  • Ulinzi wa SSRF — enuchat huzuia simu kwa localhost, IP za kibinafsi, na majina ya mwenyeji ya ndani
  • Muda wa kukatika — simu za API za nje zina muda wa kukatika wa sekunde 5 kuzuia kunyongeka
  • Caching ya tokeni ya OAuth2 — tokeni za ufikiaji zimehifadhiwa kwa usalama na kuburudishwa kiotomatiki
  • Utengaji wa mpangaji — miunganisho imepangwa kwa mpangaji wako, haifikiki kwa wengine

Uko tayari kuunganisha API zako?

Anza kuunganisha mifumo yako na enuchat leo.

Anza Bure