חזרה ללוח הבקרה

תיעוד

למדו כיצד להשתמש ב-Asyntai

תיעוד API

בנה אינטגרציות מותאמות עם ה-API של Asyntai

קבל מפתח API

נדרשת תוכנית בתשלום: גישה ל-API זמינה בתוכניות Starter, Standard ו-Pro. צפה במחירים

סקירה כללית

ה-API של Asyntai מאפשר לך לשלב תמיכת לקוחות מבוססת AI בכל אפליקציה. שלח הודעות וקבל תשובות חכמות שאומנו על תוכן האתר ומאגר הידע שלך.

אימות

כל בקשות ה-API דורשות אימות באמצעות מפתח ה-API שלך. תוכל לקבל את מפתח ה-API שלך מדף הגדרות API.

כלול את מפתח ה-API שלך בבקשות באמצעות אחת מהשיטות הבאות:

  • כותרת Authorization (מומלץ): Authorization: Bearer YOUR_API_KEY
  • כותרת X-API-Key: X-API-Key: YOUR_API_KEY

שמור על סודיות מפתח ה-API שלך. כל מי שיש לו את המפתח שלך יכול לגשת לחשבונך דרך ה-API. לעולם אל תחשוף אותו בקוד צד לקוח.

כתובת בסיס

https://asyntai.com/api/v1/

נקודות קצה

POST /chat/

שלח הודעה וקבל תשובה שנוצרה על ידי AI.

גוף הבקשה

{
  "message": "What are your business hours?",
  "session_id": "user_123",      // optional
  "website_id": 1                 // optional
}
פרמטר סוג נדרש תיאור
message string כן הודעת המשתמש לשליחה ל-AI
session_id string לא מזהה ייחודי לשיחה. השתמש באותו session_id כדי לשמור על היסטוריית השיחה.
website_id integer לא מזהה אתר ספציפי. אם לא סופק, משתמש באתר הראשי שלך.

תגובה

{
  "success": true,
  "response": "Our business hours are Monday-Friday, 9 AM to 5 PM EST.",
  "session_id": "user_123"
}

דוגמה (cURL)

curl -X POST https://asyntai.com/api/v1/chat/ \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"message": "What are your business hours?", "session_id": "user_123"}'

דוגמה (Python)

import requests

response = requests.post(
    "https://asyntai.com/api/v1/chat/",
    headers={
        "Authorization": "Bearer YOUR_API_KEY",
        "Content-Type": "application/json"
    },
    json={
        "message": "What are your business hours?",
        "session_id": "user_123"
    }
)

data = response.json()
print(data["response"])

דוגמה (JavaScript)

const response = await fetch("https://asyntai.com/api/v1/chat/", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    message: "What are your business hours?",
    session_id: "user_123"
  })
});

const data = await response.json();
console.log(data.response);

GET /websites/

הצג את כל האתרים המשויכים לחשבון שלך.

תגובה

{
  "success": true,
  "websites": [
    {
      "id": 1,
      "name": "My Website",
      "domain": "example.com",
      "is_primary": true
    }
  ]
}

דוגמה (cURL)

curl https://asyntai.com/api/v1/websites/ \
  -H "Authorization: Bearer YOUR_API_KEY"

GET /conversations/

אחזר היסטוריית שיחות עבור מפגש ספציפי.

פרמטרי שאילתה

פרמטר סוג נדרש תיאור
session_id string כן מזהה המפגש לאחזור היסטוריה
limit integer לא מספר הודעות מקסימלי להחזרה (ברירת מחדל: 50, מקסימום: 100)

תגובה

{
  "success": true,
  "session_id": "user_123",
  "messages": [
    {
      "role": "user",
      "content": "What are your business hours?",
      "timestamp": "2024-01-15T10:30:00Z"
    },
    {
      "role": "assistant",
      "content": "Our business hours are Monday-Friday, 9 AM to 5 PM EST.",
      "timestamp": "2024-01-15T10:30:01Z"
    }
  ]
}

דוגמה (cURL)

curl "https://asyntai.com/api/v1/conversations/?session_id=user_123&limit=20" \
  -H "Authorization: Bearer YOUR_API_KEY"

GET /sessions/

הצג את מפגשי הצ'אט האחרונים שלך. השתמש בזה כדי לגלות מזהי מפגשים, שתוכל להעביר ל-/conversations/ כדי לאחזר את היסטוריית ההודעות המלאה.

פרמטרי שאילתה

פרמטר סוג נדרש תיאור
limit integer לא מספר מפגשים אחרונים להחזרה (ברירת מחדל: 20, מקסימום: 100)
website_id string לא סנן מפגשים לפי מזהה אתר ספציפי
source string לא סנן לפי מקור הפגישה: widget, api, whatsapp, instagram, messenger, gorgias, freshchat, zapier

תגובה

{
  "success": true,
  "sessions": [
    {
      "session_id": "session_abc123def",
      "source": "widget",
      "message_count": 5,
      "first_message": "What are your business hours?",
      "first_message_at": "2024-01-15T10:30:00Z",
      "last_message_at": "2024-01-15T10:35:00Z",
      "website_domain": "example.com"
    }
  ]
}

דוגמה (cURL)

curl "https://asyntai.com/api/v1/sessions/?limit=10" \
  -H "Authorization: Bearer YOUR_API_KEY"

GET /leads/

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

פרמטרי שאילתה

פרמטר סוג נדרש תיאור
limit integer לא מספר הלידים להחזרה (ברירת מחדל: 50, מקסימום: 100)
website_id string לא סנן לידים לפי מזהה אתר ספציפי

תגובה

{
  "success": true,
  "leads": [
    {
      "session_id": "session_abc123def",
      "email": "visitor@example.com",
      "phone": "+1234567890",
      "page_url": "https://example.com/pricing",
      "started_at": "2024-01-15T10:30:00Z"
    }
  ]
}
שדה סוג תיאור
session_id string מזהה שיחת הצ'אט. העבר אותו ל-/conversations/ כדי לראות את היסטוריית הצ'אט המלאה.
email מחרוזת או null כתובת דוא"ל שסופקה על ידי המבקר, או null אם לא נאספה
phone מחרוזת או null מספר טלפון שסופק על ידי המבקר, או null אם לא נאסף
page_url מחרוזת או null כתובת ה-URL של הדף שבו המבקר שוחח
started_at string חותמת זמן ISO 8601 של מועד תחילת שיחת הצ'אט

דוגמה (cURL)

curl "https://asyntai.com/api/v1/leads/?limit=20" \
  -H "Authorization: Bearer YOUR_API_KEY"

דוגמה (Python)

import requests

response = requests.get(
    "https://asyntai.com/api/v1/leads/",
    headers={"Authorization": "Bearer YOUR_API_KEY"},
    params={"limit": 20}
)

leads = response.json()["leads"]
for lead in leads:
    print(f"{lead['email'] or ''} | {lead['phone'] or ''}")

GET /account/

קבל את פרטי החשבון וסטטיסטיקות השימוש שלך.

תגובה

{
  "success": true,
  "account": {
    "email": "you@example.com",
    "plan": "starter",
    "messages_used": 150,
    "messages_limit": 2500
  }
}

דוגמה (cURL)

curl https://asyntai.com/api/v1/account/ \
  -H "Authorization: Bearer YOUR_API_KEY"

מספר אתרים? נקודות הקצה של מאגר הידע מוגדרות כברירת מחדל לאתר הראשי שלך. אם יש לך מספר אתרים, העבר website_id כדי לפנות לאתר ספציפי. תוכל למצוא את מזהי האתרים שלך באמצעות GET /websites/.

מגבלות העלאה יומיות: העלאות למאגר הידע (טקסט, URL, גיליון אלקטרוני) כפופות למגבלת תווים יומית על בסיס התוכנית שלך. זה חל על סך התוכן שהועלה בכל נקודות הקצה של מאגר הידע ביום.

תוכנית תווים/יום
Starter100,000
Standard500,000
Pro2,000,000

GET /knowledge/

הצג את רשומות מאגר הידע שלך. אלו מקורות התוכן שצ'אטבוט ה-AI שלך משתמש בהם כדי לענות על שאלות.

פרמטרי שאילתה

פרמטר סוג נדרש תיאור
limit integer לא מספר רשומות להחזרה (ברירת מחדל: 50, מקסימום: 100)
website_id string לא סנן לפי מזהה אתר (ברירת מחדל: האתר הראשי שלך)

תגובה

{
  "success": true,
  "entries": [
    {
      "id": "abc-123-def",
      "type": "text",
      "title": "Business Hours",
      "description": "Manual text content (150 words)",
      "created_at": "2024-01-15T10:30:00Z"
    },
    {
      "id": "ghi-456-jkl",
      "type": "url",
      "title": "About Us - Example",
      "description": "Content from https://example.com/about",
      "created_at": "2024-01-14T09:00:00Z"
    }
  ]
}

דוגמה (cURL)

curl "https://asyntai.com/api/v1/knowledge/?limit=10" \
  -H "Authorization: Bearer YOUR_API_KEY"

POST /knowledge/text/

הוסף תוכן טקסט מותאם למאגר הידע שלך. ה-AI ישתמש בזה כדי לענות על שאלות מבקרים.

גוף הבקשה

{
  "title": "Return Policy",
  "content": "We offer a 30-day return policy on all items. Items must be unused and in original packaging. Refunds are processed within 5-7 business days.",
  "website_id": "123"
}
פרמטר סוג נדרש תיאור
title string כן כותרת לרשומת ידע זו
content string כן תוכן הטקסט (מינימום 10 תווים)
website_id string לא אתר יעד (ברירת מחדל: האתר הראשי שלך)

תגובה

{
  "success": true,
  "id": "abc-123-def",
  "title": "Return Policy",
  "chunks_created": 1
}

דוגמה (cURL)

curl -X POST "https://asyntai.com/api/v1/knowledge/text/" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"title": "Return Policy", "content": "We offer a 30-day return policy..."}'

POST /knowledge/url/

הוסף דף אינטרנט למאגר הידע שלך. התוכן ייאסף ויחולץ באופן אוטומטי.

גוף הבקשה

{
  "url": "https://example.com/faq",
  "website_id": "123"
}
פרמטר סוג נדרש תיאור
url string כן כתובת ה-URL לאיסוף תוכן ממנה
website_id string לא אתר יעד (ברירת מחדל: האתר הראשי שלך)

תגובה

{
  "success": true,
  "id": "abc-123-def",
  "title": "FAQ - Example",
  "url": "https://example.com/faq",
  "chunks_created": 5
}

דוגמה (cURL)

curl -X POST "https://asyntai.com/api/v1/knowledge/url/" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com/faq"}'

POST /knowledge/spreadsheet/

העלה גיליון CSV או Excel (.xlsx) למאגר הידע שלך. כל שורה הופכת לרשומת ידע נפרדת, אידיאלי לקטלוגי מוצרים, רשימות שאלות נפוצות, טבלאות מחירים וספריות.

בקשה

שלח כ-multipart/form-data (העלאת קובץ), לא JSON.

פרמטר סוג נדרש תיאור
file file כן קובץ .csv או .xlsx. השורה הראשונה חייבת להיות כותרות עמודות. מקסימום שורות להעלאה: Starter 500, Standard 2,000, Pro 10,000. שורות עודפות נחתכות.
website_id string לא אתר יעד (ברירת מחדל: האתר הראשי שלך)

תגובה

{
  "success": true,
  "id": "abc-123-def",
  "title": "products.csv",
  "rows_processed": 15,
  "chunks_created": 15
}

דוגמה (cURL)

curl -X POST "https://asyntai.com/api/v1/knowledge/spreadsheet/" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "file=@products.csv"

DELETE /knowledge/{id}/

מחק רשומת מאגר ידע. ניתן למצוא את ה-id מתגובת GET /knowledge/.

תגובה

{
  "success": true,
  "message": "Knowledge base entry deleted"
}

דוגמה (cURL)

curl -X DELETE "https://asyntai.com/api/v1/knowledge/abc-123-def/" \
  -H "Authorization: Bearer YOUR_API_KEY"

טיפ: תוכל גם לנהל webhooks מתוך הגדרות API דף ללא כתיבת קוד.

GET /webhooks/

הצג את ה-webhooks הרשומים שלך.

תגובה

{
  "success": true,
  "webhooks": [
    {
      "id": "abc-123-def",
      "url": "https://example.com/webhook",
      "events": ["message.received", "escalation.requested"],
      "is_active": true,
      "created_at": "2024-01-15T10:30:00Z"
    }
  ]
}

דוגמה (cURL)

curl "https://asyntai.com/api/v1/webhooks/" \
  -H "Authorization: Bearer YOUR_API_KEY"

POST /webhooks/

רשום webhook חדש לקבלת התראות אירועים בזמן אמת.

אירועים זמינים

אירוע תיאור
message.received מבקר שלח הודעה וקיבל תגובה
conversation.started מפגש צ'אט חדש הותחל
escalation.requested ה-AI הפעיל העברה לנציג אנושי
takeover.started נציג אנושי השתלט על מפגש צ'אט

גוף הבקשה

{
  "url": "https://example.com/webhook",
  "events": ["message.received", "escalation.requested"],
  "website_id": "123"
}
פרמטר סוג נדרש תיאור
url string כן כתובת HTTPS לקבלת בקשות POST של webhook
events array כן רשימת אירועים להרשמה (ראה טבלה למעלה)
website_id string לא אתר יעד (ברירת מחדל: האתר הראשי שלך)

תגובה

{
  "success": true,
  "webhook": {
    "id": "abc-123-def",
    "url": "https://example.com/webhook",
    "events": ["message.received", "escalation.requested"],
    "secret": "whsec_abc123...",
    "created_at": "2024-01-15T10:30:00Z"
  }
}

אימות webhooks: כל webhook כולל secret (מוצג רק בעת יצירה). כל POST לכתובת שלך כולל X-Webhook-Signature כותרת — HMAC-SHA256 של גוף הבקשה חתום עם הסוד שלך.

דוגמה (cURL)

curl -X POST "https://asyntai.com/api/v1/webhooks/" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com/webhook", "events": ["message.received"]}'

DELETE /webhooks/{id}/

מחק webhook. ניתן למצוא את ה-id מתגובת GET /webhooks/.

תגובה

{
  "success": true,
  "message": "Webhook deleted"
}

דוגמה (cURL)

curl -X DELETE "https://asyntai.com/api/v1/webhooks/abc-123-def/" \
  -H "Authorization: Bearer YOUR_API_KEY"

תגובות שגיאה

כל תגובות השגיאה עוקבות אחר פורמט זה:

{
  "success": false,
  "error": "Error message describing what went wrong"
}
קוד סטטוס תיאור
400 בקשה שגויה - פרמטרים לא תקינים או שדות חובה חסרים
401 לא מורשה - מפתח API לא תקין או חסר
429 יותר מדי בקשות - הגעת למגבלת ההודעות של התוכנית שלך
503 שירות לא זמין - שירות ה-AI לא זמין באופן זמני

מגבלות קצב

השימוש ב-API מוגבל לפי תוכנית המנוי שלך:

  • Free: 100 הודעות/חודש
  • Starter ($39/חודש): 2,500 הודעות/חודש
  • Standard ($139/חודש): 15,000 הודעות/חודש
  • Pro ($449/חודש): 50,000 הודעות/חודש

צריך עזרה?

אם יש לך שאלות או שנתקלת בבעיות, צור קשר איתנו ב-hello@asyntai.com.