واجهة برمجة التطبيقات
واجهة برمجة تطبيقات داتا للمؤسسات
واجهة REST واحدة للاستعلام، إدارة المصادر، والاشتراك في الأحداث، محمية بمفاتيح محدودة النطاق.
المصادقة
كل طلب يتطلب مفتاح API يُرسل ضمن ترويسة Authorization كحامل (Bearer). تُصدر المفاتيح من إعدادات مساحة العمل بواسطة مالك أو مسؤول.
Authorization: Bearer sk_live_9f2c... Content-Type: application/json
نطاقات مفاتيح API
كل مفتاح مقيّد بنطاق واحد أو أكثر، على مبدأ أقل صلاحية ممكنة.
| النطاق | الوصف |
|---|---|
| query:read | تنفيذ استعلامات وقراءة الإجابات |
| sources:read | قراءة قائمة المصادر المربوطة |
| sources:manage | إضافة وتعديل مصادر البيانات |
| workspace:admin | إدارة أعضاء وصلاحيات مساحة العمل |
حدود الاستخدام والترقيم
الحد الافتراضي هو 120 طلباً في الدقيقة لكل مفتاح، ويظهر في ترويسات الاستجابة. القوائم الطويلة تُرقّم عبر معاملي cursor و limit.
X-RateLimit-LimitX-RateLimit-RemainingX-RateLimit-Reset
GET /v1/sources?limit=20&cursor=eyJpZCI6...
{
"data": [ { "id": "src_01", "name": "ERP" } ],
"next_cursor": "eyJpZCI6..."
}POST /v1/query
{
"question": "What changed in Q3 revenue?"
}
200 OK
{
"answer": "Q3 revenue grew 12% ...",
"sources": [
{ "type": "database", "ref": "finance.q3_summary" }
]
}مثال استعلام
كل إجابة تعود مرفقة بمصادرها الأصلية، لتبقى قابلة للتحقق دائماً.
أكواد الأخطاء
جميع الأخطاء تعود بجسم JSON موحّد يتضمن code و message.
| الرمز | الوصف |
|---|---|
| 400 | طلب غير صالح، تحقق من بنية الحمولة |
| 401 | مفتاح API مفقود أو غير صالح |
| 403 | النطاق الحالي لا يسمح بهذا الإجراء |
| 404 | المورد غير موجود |
| 429 | تم تجاوز حد الاستخدام |
| 500 | خطأ غير متوقع في الخادم |
الأحداث Webhooks
اشترك في أحداث مثل source.ingested و query.answered لاستقبال إشعار فوري إلى نقطة نهاية خادمكم.
POST https://yourapp.example.com/webhooks/data
{
"event": "source.ingested",
"source_id": "src_01",
"status": "completed"
}