نظرة عامة على API
تتيح لك واجهة برمجة تطبيقات ArchiCore REST دمج تحليل الهندسة المعمارية في سير العمل الخاص بك.
عنوان URL الأساسي
https://api.archicore.io/api/v1
المصادقة
تتطلب جميع طلبات API المصادقة باستخدام رمز Bearer:
curl -H "Authorization: Bearer مفتاح_API_الخاص_بك" \
https://api.archicore.io/api/v1/projects
راجع المصادقة للحصول على تفاصيل حول الحصول على مفاتيح API.
تنسيق الاستجابة
جميع الاستجابات بتنسيق JSON:
{
"success": true,
"data": { ... }
}
استجابات الخطأ:
{
"success": false,
"error": "رسالة الخطأ",
"code": "رمز_الخطأ"
}
رموز حالة HTTP
| الرمز | الوصف |
|---|---|
200 | نجاح |
201 | تم الإنشاء |
400 | طلب غير صالح - معلمات غير صالحة |
401 | غير مصرح - رمز غير صالح أو مفقود |
403 | محظور - صلاحيات غير كافية |
404 | غير موجود |
429 | طلبات كثيرة جداً - تم تجاوز حد المعدل |
500 | خطأ داخلي في الخادم |
حدود المعدل
| المستوى | طلبات/يوم | طلبات/دقيقة |
|---|---|---|
| مجاني | 100 | 10 |
| Pro | 10,000 | 100 |
| Enterprise | غير محدود | 1,000 |
يتم تضمين رؤوس حد المعدل في ج ميع الاستجابات:
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 95
X-RateLimit-Reset: 1640000000
ملخص نقاط النهاية
المشاريع
| الطريقة | نقطة النهاية | الوصف |
|---|---|---|
GET | /projects | عرض جميع المشاريع |
POST | /projects | إنشاء مشروع |
GET | /projects/:id | الحصول على تفاصيل المشروع |
DELETE | /projects/:id | حذف مشروع |
POST | /projects/:id/index | بد ء الفهرسة |
التحليل
| الطريقة | نقطة النهاية | الوصف |
|---|---|---|
POST | /projects/:id/search | البحث الدلالي |
POST | /projects/:id/ask | سؤال مساعد الذكاء الاصطناعي |
GET | /projects/:id/metrics | الحصول على مقاييس الكود |
GET | /projects/:id/security | نتائج فحص الأمان |
POST | /projects/:id/analyze | تحليل التأثير |
Webhooks
| الطريقة | نقطة النهاية | الوصف |
|---|---|---|
GET | /webhooks | عرض webhooks |
POST | /webhooks | إنشاء webhook |
DELETE | /webhooks/:id | حذف webhook |
حزم SDK
حزم SDK الرسمية متاحة لـ:
- JavaScript/TypeScript:
npm install @archicore/sdk - Python:
pip install archicore
مثال سريع
import { ArchiCore } from '@archicore/sdk';
const client = new ArchiCore({ apiKey: 'مفتاح_API_الخاص_بك' });
// البحث في الكود
const results = await client.projects.search('project-id', {
query: 'منطق المصادقة'
});
// سؤال الذكاء الاصطناعي
const answer = await client.projects.ask('project-id', {
question: 'كيف يعمل نظام المصادقة؟'
});