فحوص أمثلة اختيارية
Section titled “فحوص أمثلة اختيارية”-
عاين تطابقات JSONPath. افحص مسارات الجذر والحقول وفهارس المصفوفات وأحرف البدل مقابل JSON مقدم. لا يشغّل ذلك إجراءً ولا يحفظ ذاكرة المحادثة.
-
تحقق من اتصال MCP نموذجي. ابدأ الاتصال واسرد الأدوات على نقطة وثائق Cloudflare أو Microsoft Learn فقط. لا يُجرى تسجيل دخول أو تنفيذ أدوات.
في المتصفح المتوافق، تتوفر هذه الفحوص أيضًا كأدوات للموقع. تفتح الروابط النماذج المعتادة.
إجراءات AI
Section titled “إجراءات AI”توسّع إجراءات AI قدرات وكيلك إلى ما يتجاوز الإجابة من قاعدة المعرفة. تتيح تحديد سلوكيات محفّزة: أشياء ينبغي أن ينفذها AI عندما يكتشف حالات معينة في المحادثة.
ما تفعله إجراءات AI:
- إجراءات طلب HTTP: تستدعي واجهات API خارجية عند تفعيلها. مثلًا، تتحقق من حالة الطلب في نظامك الخلفي، أو تنشئ تذكرة دعم، أو تبحث عن معلومات حساب، وكل ذلك أثناء المحادثة.
- إجراءات MCP: تتصل بخوادم Model Context Protocol لتكاملات أدوات متقدمة (مثل البحث عن منتجات Shopify أو استعلامات قواعد بيانات مخصصة).
حالات استخدام شائعة:
- جلب معلومات فورية (حالة طلب أو تفاصيل حساب أو مخزون) من أنظمتك الخلفية أثناء المحادثات
- إنشاء تذاكر أو تحديث سجلات CRM أو تشغيل سير عمل في أنظمة خارجية بناءً على سياق المحادثة
- تقديم توصيات مخصصة عبر الاستعلام عن كتالوج المنتجات
لكل إجراء name وdescription (يخبر الوصف AI بوقت تشغيل إجراءات طلب HTTP)، وإعداد خاص بنوعه. يمكن تفعيل الإجراءات وتعطيلها منفردة عبر API. تُنشأ الإجراءات وتُضبط بالكامل في لوحة تحكم Quickchat؛ توفر API السرد والتحديث (التفعيل أو التعطيل) والحذف، بالإضافة إلى نقاط مخصصة لإنشاء إجراءات MCP وضبطها.
سرد جميع إجراءات AI
Section titled “سرد جميع إجراءات AI”GET https://app.quickchat.ai/v1/api/ai_actions
curl https://app.quickchat.ai/v1/api/ai_actions \ -H 'Authorization: Bearer <API_TOKEN>'import requests
response = requests.get( url="https://app.quickchat.ai/v1/api/ai_actions", headers={"Authorization": "Bearer <API_TOKEN>"},)data = response.json()الاستجابة 200 OK
[ { "id": 1, "name": "Check Order Status", "description": "Look up order status when customer asks about their order.", "is_active": true, "type": "http_request", "icon": null, "icon_color": null, "is_valid": true }]| الحقل | الوصف |
|---|---|
id عدد صحيح | معرف إجراء AI |
name سلسلة نصية | اسم العرض |
description سلسلة نصية | متى يُشغّل الإجراء |
is_active قيمة منطقية | هل هو مفعّل |
type سلسلة نصية | "http_request" أو "remote_mcp" أو "shopify_remote_mcp" أو "knowledge_base" |
icon سلسلة نصية أو null | معرف الأيقونة |
icon_color سلسلة نصية أو null | لون الأيقونة |
is_valid قيمة منطقية | هل الإعداد صحيح |
تحديث إجراء AI
Section titled “تحديث إجراء AI”PATCH https://app.quickchat.ai/v1/api/ai_actions/{action_id}
جسم الطلب
| المعلمة | الوصف |
|---|---|
is_active قيمة منطقية | تفعيل الإجراء أو تعطيله |
icon سلسلة نصية | معرف الأيقونة (200 حرف كحد أقصى) |
icon_color سلسلة نصية | لون الأيقونة (50 حرفًا كحد أقصى) |
curl -X PATCH https://app.quickchat.ai/v1/api/ai_actions/1 \ -H 'Authorization: Bearer <API_TOKEN>' \ -H 'Content-Type: application/json' \ -d '{"is_active": false}'import requests
response = requests.patch( url="https://app.quickchat.ai/v1/api/ai_actions/1", headers={"Authorization": "Bearer <API_TOKEN>"}, json={"is_active": False},)data = response.json()الاستجابة 200 OK: تعيد لقطة إجراء AI المحدّثة.
حذف إجراء AI
Section titled “حذف إجراء AI”DELETE https://app.quickchat.ai/v1/api/ai_actions/{action_id}
curl -X DELETE https://app.quickchat.ai/v1/api/ai_actions/1 \ -H 'Authorization: Bearer <API_TOKEN>'import requests
response = requests.delete( url="https://app.quickchat.ai/v1/api/ai_actions/1", headers={"Authorization": "Bearer <API_TOKEN>"},)الاستجابة 200 OK (جسم فارغ)
إنشاء إجراء MCP
Section titled “إنشاء إجراء MCP”POST https://app.quickchat.ai/v1/api/ai_actions/remote_mcp
يربط خادم MCP بعيدًا بوكيل AI كـ إجراء MCP. يتطلب رمز API بنطاق write_all (تتطلب رموز API خطة Business أو أعلى).
جسم الطلب
| المعلمة | الوصف |
|---|---|
remote_mcp_url سلسلة نصية، مطلوبة | رابط خادم MCP. يجب استخدام https://؛ تُرفض الروابط التي تُحل إلى عناوين شبكات خاصة أو داخلية |
headers مصفوفة، مطلوبة | رؤوس الاتصال المرسلة إلى الخادم، مثل رمز Authorization ثابت. كل عنصر هو {"id", "name", "value"}؛ اختر أي سلسلة فريدة لـ id. أرسل [] إذا لم يحتج الخادم إلى رؤوس |
allowed_tools مصفوفة، مطلوبة | مفاتيح تفعيل لكل أداة، بصيغة {"name", "is_active"}. أرسل [] لترك إتاحة الأدوات إلى default_tool_is_active |
name سلسلة نصية | اسم العرض في قائمة الإجراءات (100 حرف كحد أقصى). افتراضيًا تُشتق التسمية من مضيف الخادم |
description سلسلة نصية | الوصف في قائمة الإجراءات (2500 حرف كحد أقصى) |
icon سلسلة نصية | معرف الأيقونة (200 حرف كحد أقصى) |
icon_color سلسلة نصية | لون الأيقونة (50 حرفًا كحد أقصى) |
name وdescription تسميتان موجهتان للمشغّل: تعرّفان الإجراء في لوحة التحكم ولا يقرأهما AI. يعمل AI من أوصاف الأدوات التي ينشرها خادم MCP نفسه.
curl -X POST https://app.quickchat.ai/v1/api/ai_actions/remote_mcp \ -H 'Authorization: Bearer <API_TOKEN>' \ -H 'Content-Type: application/json' \ -d '{ "remote_mcp_url": "https://mcp.example.com/mcp", "headers": [ {"id": "h-1", "name": "Authorization", "value": "Bearer <SERVER_TOKEN>"} ], "allowed_tools": [], "name": "Example MCP" }'import requests
response = requests.post( url="https://app.quickchat.ai/v1/api/ai_actions/remote_mcp", headers={"Authorization": "Bearer <API_TOKEN>"}, json={ "remote_mcp_url": "https://mcp.example.com/mcp", "headers": [ {"id": "h-1", "name": "Authorization", "value": "Bearer <SERVER_TOKEN>"} ], "allowed_tools": [], "name": "Example MCP", },)data = response.json()الاستجابة 201 Created
{ "id": 2, "name": "Example MCP", "description": "Connected MCP server", "is_active": false, "type": "remote_mcp", "icon": "FaMixcloud", "icon_color": "#EF4444", "is_valid": true, "validation_issues": [], "remote_mcp_url": "https://mcp.example.com/mcp", "remote_mcp_auth_token": "", "default_tool_is_active": true, "allowed_tools": [], "headers": [ {"id": 10, "name": "Authorization", "value": "Bearer <SERVER_TOKEN>"} ], "oauth": null, "recommended_tools": []}| الحقل | الوصف |
|---|---|
remote_mcp_url سلسلة نصية | رابط خادم MCP المتصل |
default_tool_is_active قيمة منطقية | هل يُسمح باستخدام الأدوات غير المدرجة في allowed_tools |
allowed_tools مصفوفة | مفاتيح تفعيل لكل أداة، {"name", "is_active"} |
headers مصفوفة | رؤوس الاتصال المخزنة |
remote_mcp_auth_token سلسلة نصية أو null | حقل رمز ثابت قديم. لا يمكن تعيينه عبر هذه API؛ مرّر بيانات الاعتماد عبر headers بدلًا منه |
oauth كائن أو null | حالة التفويض للخوادم المتصلة بتسجيل دخول OAuth (وإلا null) |
recommended_tools مصفوفة | أسماء الأدوات التي توصي بها Quickchat للخوادم ذات الملف المُعد مسبقًا (للقراءة فقط) |
validation_issues مصفوفة | أسماء فحوص الإعداد الفاشلة؛ فارغة عندما تكون is_valid هي true |
تطابق بقية الحقول سرد جميع إجراءات AI.
يُنشأ الإجراء مع is_active: false. وللخوادم التي لا تملك ملف Quickchat مُعدًا مسبقًا، يبدأ أيضًا بـ default_tool_is_active: true، فتُسمح كل أداة تُكتشف وقت الرد حتى تقيدها. لتفعيل الإجراء، استخدم نقطة تحديث إجراء AI أعلاه: PATCH /v1/api/ai_actions/{action_id} مع {"is_active": true}.
جلب إعداد إجراء MCP
Section titled “جلب إعداد إجراء MCP”GET https://app.quickchat.ai/v1/api/ai_actions/{action_id}/remote_mcp
curl https://app.quickchat.ai/v1/api/ai_actions/2/remote_mcp \ -H 'Authorization: Bearer <API_TOKEN>'import requests
response = requests.get( url="https://app.quickchat.ai/v1/api/ai_actions/2/remote_mcp", headers={"Authorization": "Bearer <API_TOKEN>"},)data = response.json()الاستجابة 200 OK: تعيد إعداد MCP الخاص، بالشكل نفسه لاستجابة الإنشاء أعلاه.
تحديث إعداد إجراء MCP
Section titled “تحديث إعداد إجراء MCP”PATCH https://app.quickchat.ai/v1/api/ai_actions/{action_id}/remote_mcp
كل الحقول اختيارية؛ لا تتغير إلا الحقول التي ترسلها.
جسم الطلب
| المعلمة | الوصف |
|---|---|
remote_mcp_url سلسلة نصية | رابط خادم جديد (يُتحقق منه كما عند الإنشاء). يؤدي تغيير رابط خادم متصل بـ OAuth إلى مسح التفويض المخزن وتعطيل الإجراء |
headers مصفوفة | تستبدل رؤوس الاتصال |
allowed_tools مصفوفة | تستبدل مفاتيح تفعيل الأدوات، كل منها {"name", "is_active"} |
default_tool_is_active قيمة منطقية | هل يُسمح باستخدام الأدوات غير المدرجة في allowed_tools |
name سلسلة نصية | اسم العرض (100 حرف كحد أقصى) |
description سلسلة نصية | الوصف في قائمة الإجراءات (2500 حرف كحد أقصى) |
curl -X PATCH https://app.quickchat.ai/v1/api/ai_actions/2/remote_mcp \ -H 'Authorization: Bearer <API_TOKEN>' \ -H 'Content-Type: application/json' \ -d '{ "allowed_tools": [ {"name": "search_docs", "is_active": true}, {"name": "delete_page", "is_active": false} ], "default_tool_is_active": false }'import requests
response = requests.patch( url="https://app.quickchat.ai/v1/api/ai_actions/2/remote_mcp", headers={"Authorization": "Bearer <API_TOKEN>"}, json={ "allowed_tools": [ {"name": "search_docs", "is_active": True}, {"name": "delete_page", "is_active": False}, ], "default_tool_is_active": False, },)data = response.json()الاستجابة 200 OK: تعيد إجراء MCP المحدّث بالشكل نفسه لاستجابة الإنشاء.
اختبار الاتصال واكتشاف الأدوات، أي فحص اتصال في لوحة التحكم، غير متاحين في API العامة. تشغّل لوحة التحكم الفحص تلقائيًا عند ربط خادم أو إعادة ربطه، ويجب إكمال تفويض الخوادم المحمية بـ OAuth في لوحة التحكم؛ يعرض حقل oauth في الاستجابات أعلاه تلك الحالة.