חיבורי API

חברו את ה-API החיצוניים שלכם ל-enuchat כדי ש-AI וכללים יוכלו לשלוף נתונים בזמן אמת מהמערכות שלכם.

איך זה עובד

חיבורי API מאפשרים לכם לשלב את enuchat עם מערכות ה-backend שלכם — מנועי הזמנות, CRM-ים, ניהול הזמנות, מלאי ועוד. כאשר מבקר שואל שאלה, enuchat יכול לקרוא ל-API שלכם כדי לקבל נתונים אמיתיים ולכלול אותם בתגובה.

הזרימה

  1. הגדירו חיבור — כתובת URL בסיסית של ה-API ואימות
  2. הוסיפו endpoints — קריאות API ספציפיות עם תבניות נתיב ומיפוי תגובה
  3. צרו כלל — כלל AI או סטטי עם פעולת CALL_API
  4. מבקר שואל שאלה — הכלל מופעל, קורא ל-API, ממפה את התגובה למשתני סשן
  5. AI עונה עם נתונים אמיתיים — משתני הסשן זמינים ל-AI ליצירת תשובה מדויקת

דוגמה: זמינות חדר מלון

מבקר: "האם חדר 205 פנוי בשבוע הבא?"

כלל AI מתאים: "כאשר מבקר שואל על זמינות חדרים"

פעולת CALL_API: GET https://api.hotel.com/rooms/205/availability

תגובה ממופה: room_available = true, price = "€120/לילה"

AI עונה: "חדר 205 פנוי בשבוע הבא ב-€120/לילה. האם תרצו להזמין?"

הגדרת חיבור

עברו ל-הגדרות → חיבורי API בלוח הבקרה.

1. צרו חיבור

חיבור מייצג API חיצוני אחד. אתם צריכים:

שדהתיאורדוגמה
שםתווית לחיבור זהHotel Booking API
כתובת URL בסיסיתכתובת URL שורשית של ה-APIhttps://api.hotel.com/v1
סוג אימותאיך לאמתBearer Token, OAuth2, וכו'

2. סוגי אימות

ללא

ל-API-ים ציבוריים שלא דורשים אימות.

API Key

שולח מפתח סטטי ככותרת או פרמטר שאילתה.

שדהתיאור
מפתחערך מפתח ה-API שלכם
שם כותרתכותרת לשימוש (ברירת מחדל: X-Api-Key)

המפתח נשלח כ: X-Api-Key: your_key_here

Bearer Token

שולח טוקן סטטי בכותרת Authorization.

נשלח כ: Authorization: Bearer your_token_here

Basic Auth

שולח שם משתמש וסיסמה, מקודדים ב-base64.

נשלח כ: Authorization: Basic dXNlcjpwYXNz

OAuth 2.0 (Client Credentials)

מביא access token אוטומטית ושומר במטמון עד לתפוגה. הטוב ביותר ל-API-ים מודרניים כמו Salesforce, Google או שרתי OAuth מותאמים.

שדהתיאור
כתובת URL לטוקןendpoint לטוקן OAuth (למשל https://auth.example.com/oauth/token)
Client IDמזהה לקוח OAuth שלכם
Client Secretסוד לקוח OAuth שלכם
Scopescopes מופרדים ברווח (למשל read write)

enuchat מטפל במחזור חיי הטוקן אוטומטית — מביא בקריאה הראשונה, שומר במטמון עד לתפוגה, מרענן כשצריך.

אבטחה: כל האישורים מוצפנים במנוחה באמצעות libsodium. הם לעולם לא חשופים בתגובות API — רק ערכים מוסתרים מוצגים בלוח הבקרה.

הגדרת Endpoints

לכל חיבור יכולים להיות מספר endpoints — קריאות API ספציפיות שברצונכם לבצע.

שדהתיאורדוגמה
שםתווית ל-endpoint זהבדיקת זמינות
שיטהשיטת HTTPGET, POST, PUT, DELETE
נתיבנתיב URL (מצורף לכתובת בסיס). השתמשו ב-{'{'}variable} לערכים דינמיים/rooms/{'{'}roomId}/availability
פרמטרי שאילתהפרמטרי URL כצמדי מפתח-ערך. ערכים תומכים ב-{'{'}variable}date={'{'}checkIn}
תבנית גוףגוף JSON עבור POST/PUT. תומך באינטרפולציית {'{'}variable}{'{'}"guest": "{'{'}name}"}
מיפוי תגובהמפו שדות תגובת JSON למשתני סשן בסימון נקודותdata.available → room_available
תיאורהקשר עבור AI (אילו נתונים endpoint זה מחזיר)מחזיר זמינות חדר ותמחור

אינטרפולציית משתנים

השתמשו ב-{'{'}variableName} בנתיבים, פרמטרי שאילתה ותבניות גוף. משתנים מגיעים מ:

  • משתני סשן — שהוגדרו על ידי כללים קודמים (פעולת SET_VARIABLE)
  • פרמטרי פעולה — מקודדים בפעולת CALL_API של הכלל

מיפוי תגובה

מפו שדות תגובת JSON למשתני סשן בסימון נקודות:

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

משתנים ממופים נשמרים כמשתני סשן בשיחה וזמינים ל-AI ליצירת תגובות.

שימוש עם כללים

קריאות API מופעלות על ידי פעולת CALL_API בכללים. אתם יכולים לשלב אותן עם פעולות אחרות.

מתכון: בדיקת סטטוס הזמנה

חיבור: Order Management API — https://api.shop.com/v2 — Bearer Token

Endpoint: GET /orders/{'{'}orderId} → ממפה data.statusorder_status, data.etadelivery_eta

כלל (סוג AI): "כאשר המבקר שואל על סטטוס ההזמנה או המשלוח"

פעולות:

  1. CALL_API → Order Status endpoint
  2. REPLY_AI → AI משתמש ב-order_status ו-delivery_eta כדי להשיב

תוצאה: מבקר: "איפה ההזמנה שלי #4521?" — AI: "ההזמנה שלך #4521 כרגע בדרך ואמורה להגיע עד יום חמישי."

מתכון: תמחור בזמן אמת

חיבור: Pricing API — https://pricing.example.com — API Key

Endpoint: GET /products/{'{'}productId}/price → ממפה pricecurrent_price, currencyprice_currency

כלל (סטטי): MESSAGE_MATCHES_REGEX: /\b(price|cost|how much)\b/i

פעולות:

  1. CALL_API → Pricing endpoint
  2. REPLY_TEXT → "המחיר הנוכחי הוא {'{'}current_price} {'{'}price_currency}."

בדיקות

תמיד בדקו את החיבורים וה-endpoints לפני שימוש בכללים:

  • בדקו חיבור — מוודא שאימות עובד (עבור OAuth2: מביא טוקן)
  • בדקו Endpoint — מבצע קריאת API אמיתית עם משתני דוגמה ומציג את התגובה
  • בדקו כלל (הרצה יבשה) — בדף הכללים, בדקו אם כלל יתאים ואילו פעולות יבוצעו

טיפ: התחילו בבדיקת החיבור, אז כל endpoint, ואז הכלל המלא. כך תוכלו לבודד בעיות בכל רמה.

אבטחה

  • הצפנה במנוחה — כל האישורים מוצפנים באמצעות libsodium לפני אחסון
  • לעולם לא חשופים — תגובות API לעולם לא כוללות אישורים מפוענחים, רק ערכים מוסתרים
  • הגנת SSRF — enuchat חוסם קריאות ל-localhost, כתובות IP פרטיות ושמות מארח פנימיים
  • Timeout — לקריאות API חיצוניות יש timeout של 5 שניות למניעת תליה
  • שמירת טוקני OAuth2 במטמון — access tokens נשמרים בצורה מאובטחת ומתחדשים אוטומטית
  • בידוד דיירים — חיבורים מוגבלים לדייר שלכם, לא נגישים לאחרים

מוכנים לחבר את ה-API-ים שלכם?

התחילו לשלב את המערכות שלכם עם enuchat כבר היום.

התחילו בחינם