דילוג לתוכן

חיפוש בתיעוד

הקלידו כדי לחפש בכל דפי התיעוד.

תפריט התיעוד
חומר עזרקהל יעד · צרכני ה-API

חומר עזר ל-REST API

הקטלוג המלא של נקודות הקצה, עם דוגמאות לבקשות

דף זה תורגם באופן אוטומטי מאנגלית. אם יש הבדל כלשהו, המקור הוא הקובע.לקריאת המקור באנגלית

תיעוד אינטראקטיבי

כל אפליקציית Agent-Lab מגישה OpenAPI 3 באופן אוטומטי — מימוש הדוגמה בכתובת http://localhost:18000/docs (או האפליקציה שלך, בכל מקום שבו היא רצה). הקטלוג שלהלן מתעד את הנתבים המובנים של הפריימוורק; ה-extra_routers שלך מופיעים באותה סכמה.

אימות

כאשר auth.enabled הוא true (ראו את חומר העזר לתצורה), הנתיבים דורשים bearer token של Keycloak. הנתב /auth מעוגן רק כשהאימות מופעל:

TOKEN=$(curl -s -X POST https://<host>/auth/login \
  -H "Content-Type: application/json" \
  -d '{"username": "…", "password": "…"}' | jq -r '.access_token')

curl -s https://<host>/agents/list -H "Authorization: Bearer $TOKEN" | jq
מתודה נקודת קצה תיאור
POST /auth/login יצירת bearer token חדש
POST /auth/renew חידוש bearer token קיים
POST /auth/exchange החלפת קוד הרשאה של Microsoft Entra ID (PKCE) בטוקן של האפליקציה
GET /auth/profile קבלת הפרופיל של המשתמש המאומת
PUT /auth/profile עדכון הפרופיל של המשתמש המאומת

הגדרת ה-realm/הלקוח מוסברת באימות עם Keycloak.

נתיבים ללא אימות: /status/*, /docs, /openapi.json, /mcp, /static, נקודות הקצה well-known של OAuth ונקודת העיגון של ה-SPA — כל השאר דורש טוקן תקף.

נקודות קצה

סוכנים

יוצרים מופעים של כל סוג סוכן רשום; agent_type מאומת באופן דינמי מול הרישום.

מתודה נקודת קצה תיאור
GET /agents/list הצגת כל מופעי הסוכנים
GET /agents/types הצגת סוגי הסוכנים הרשומים (הרישום)
GET /agents/{agent_id} קבלת מופע סוכן לפי מזהה
POST /agents/create יצירת מופע סוכן חדש
POST /agents/update עדכון הפרטים הבסיסיים של סוכן
POST /agents/update_setting עדכון הגדרה בודדת של סוכן
POST /agents/{agent_id}/reset_settings איפוס הגדרות הסוכן לברירות המחדל
DELETE /agents/delete/{agent_id} מחיקת מופע סוכן
WS /agents/ws/task_updates/{agent_id} זרם WebSocket של עדכוני התקדמות משימות עבור פעולות ארוכות

הודעות

מתודה נקודת קצה תיאור
POST /messages/post שליחת הודעה לסוכן וקבלת התשובה
POST /messages/list הצגת ההודעות של סוכן
GET /messages/{message_id} קבלת פרטי הודעה מורחבים (תשובות, קובץ מצורף)
DELETE /messages/delete/{message_id} מחיקת הודעה

מודלי שפה

מתודה נקודת קצה תיאור
GET /llms/list הצגת מודלי השפה המוגדרים
GET /llms/{language_model_id} קבלת מודל שפה וההגדרות שלו
POST /llms/create יצירת מודל שפה חדש
POST /llms/update עדכון התצורה של מודל שפה
POST /llms/update_setting עדכון הגדרה בודדת של מודל שפה
DELETE /llms/delete/{language_model_id} מחיקת מודל שפה

אינטגרציות

מתודה נקודת קצה תיאור
GET /integrations/list הצגת אינטגרציות חיצוניות (ספקי AI)
GET /integrations/{integration_id} קבלת פרטי אינטגרציה
POST /integrations/create יצירת אינטגרציה (פרטי ההתחברות נשמרים ב-Vault)
DELETE /integrations/delete/{integration_id} מחיקת אינטגרציה

קבצים מצורפים

מתודה נקודת קצה תיאור
GET /attachments/list הצגת הקבצים המצורפים
GET /attachments/download/{attachment_id} הורדת קובץ מצורף
POST /attachments/upload העלאת קובץ מצורף
POST /attachments/embeddings יצירת embeddings עבור קובץ מצורף

סטטוס ו-MCP

מתודה נקודת קצה תיאור
GET /status/liveness בדיקת liveness
GET /status/readiness בדיקת readiness
GET /status/metrics מדדי Prometheus
* /mcp שרת ה-MCP (Streamable HTTP)
GET /.well-known/oauth-protected-resource/mcp מטא-נתוני OAuth עבור לקוחות MCP

דוגמאות לבקשות

יצירת מופע סוכן — agent_name מקבל [a-zA-Z0-9_-]; agent_type חייב להיות סוג רשום; language_model_id הוא אופציונלי:

curl -s -X POST http://localhost:18000/agents/create \
  -H "Content-Type: application/json" \
  -d '{
        "agent_name": "support-agent-1",
        "agent_type": "coordinator_planner_supervisor",
        "language_model_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
      }' | jq

שליחת הודעה — message_role הוא אחד מהערכים human, assistant, tool; attachment_id הוא אופציונלי:

curl -s -X POST http://localhost:18000/messages/post \
  -H "Content-Type: application/json" \
  -d '{
        "agent_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
        "message_role": "human",
        "message_content": "Summarize the attached report.",
        "attachment_id": null
      }' | jq

עדכון הגדרת סוכן — setting_key מקבל [a-zA-Z_-]; setting_value מכיל עד 16,000 תווים (תבניות פרומפט ומטעני JSON נשמרים כאן — ראו את מודל הדומיין של הישויות):

curl -s -X POST http://localhost:18000/agents/update_setting \
  -H "Content-Type: application/json" \
  -d '{
        "agent_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
        "setting_key": "system_prompt",
        "setting_value": "You are a concise research assistant…"
      }' | jq

מוסכמות

  • מזהים הם UUIDs; כל נקודות הקצה של רשימות מקבלות גוף JSON, ולא query strings.
  • הגדרות הן זוגות מפתח-ערך שנשמרים עם הסוכן או המודל — כך אותו מימוש מריץ מופעים רבים בתצורות שונות.
  • הרישום הוא מקור האמת לערכי agent_type תקפים — מריצים GET /agents/types כדי לראות מה האפליקציה הפועלת גילתה (כולל החבילות שלך דרך scan_packages).