ما هي بوابة الـ API؟
طبقة REST آمنة لأنظمة الخلفية. تطبيقات الموبايل والمواقع وبوابات الشركاء والخدمات الخلفية تتصل عبر HTTPS وJSON وJWT - بدون الوصول مباشرة لقاعدة البيانات.
ما الذي نتحقق منه
- بيانات التطبيق
- هوية المستخدم (JWT)
- الصلاحيات (موديلات / حقول)
- حدود الطلبات وسجل المراجعة
لمن هذه الصفحة؟
مسؤولو البوابة (الإعداد) والمبرمجون الذين يبنون أي عميل: موبايل أو ويب أو أنظمة شركاء.
بيانات الربط
لربط تطبيقك أو نظامك، تواصل معنا. نزوّدك ببيانات البيئة — لا توجد بيانات عامة افتراضيًا.
| البند | ما نزوّده |
|---|---|
| base_url | رابط السيرفر (بدون / في النهاية) |
| قاعدة البيانات | اسم قاعدة البيانات (للمرجع والدعم) |
| login / password | يوزر وباسورد مستخدم الـ API |
| client_id / client_secret | من Credentials التطبيق (بعد إعداد البوابة) |
واجهة الويب:
{{base_url}}/web/login
تسجيل دخول API:
POST {{base_url}}/api/v1/auth/login
إعداد البوابة - إنشاء تطبيق
نفّذ هذا أولًا قبل أي برمجة للعميل.
تبويب Credentials
| الحقل | المطلوب |
|---|---|
| client_id | انسخه - معرّف التطبيق العام |
| client_secret | انسخه بأمان - يُستخدم في تسجيل الدخول فقط |
| access_token_ttl_minutes | الافتراضي 15 دقيقة |
| refresh_token_ttl_days | الافتراضي 14 يومًا |
الصلاحيات والحقول
بدون Scopes يمكن تسجيل الدخول، لكن طلبات البيانات ترجع أخطاء صلاحيات.
إعدادات إضافية
استدعاءات مخصصة
سجّل slugs للدوال عبر /call/{slug}.
الشاشات والمستخدمون
اربط مفاتيح الشاشات بالمستخدمين لـ menu-access.
مستخدمون محظورون
المحظورون لا يسجّلون دخولًا ولا يستدعون هذا التطبيق.
سجلات المراجعة
API Gateway ← Audit Logs للتتبع والتشخيص.
مسار الربط
المصادقة
تسجيل الدخول
{
"client_id": "YOUR_CLIENT_ID",
"client_secret": "YOUR_CLIENT_SECRET",
"login": "user@company.com",
"password": "******"
}
تجديد التوكن
{
"client_id": "YOUR_CLIENT_ID",
"refresh_token": "CURRENT_REFRESH_TOKEN"
}
إلغاء الجلسة
هيدرز الطلب
| Header | القيمة |
|---|---|
| Authorization | Bearer |
| X-Client-Id | |
| Content-Type | application/json |
استكشاف الصلاحيات
قراءة وكتابة البيانات
المسار الأساسي: /api/v1/data/{model}
{
"values": {
"name": "New Customer",
"email": "new@example.com"
}
}
مرجع النقاط
| Method | Path | الغرض |
|---|---|---|
| POST | /api/v1/auth/login | دخول |
| POST | /api/v1/auth/refresh | تجديد |
| POST | /api/v1/auth/revoke | إلغاء |
| GET | /api/v1/info/models | الموديلات |
| GET | /api/v1/info/models/{model}/fields | الحقول |
| GET | /api/v1/data/{model} | قائمة |
| GET | /api/v1/data/{model}/{id} | قراءة |
| POST | /api/v1/data/{model} | إنشاء |
| PATCH | /api/v1/data/{model}/{id} | تعديل |
| DELETE | /api/v1/data/{model}/{id} | حذف |
كولكشن Postman (كامل)
كولكشن كامل: 4 مجلدات و 34 طلبًا: 1. Authentication (Login, Refresh, Revoke + أمثلة أخطاء)، 2. Metadata & Discovery (models, fields, methods, menu-access)، 3. Generic CRUD (partners, products, sale orders)، 4. Sale Order - Business Automation (confirm, picking, invoice, payment, process_operations). سكربت Login يحفظ التوكنات تلقائيًا.
| المتغير | الغرض |
|---|---|
| base_url | نزوّدك برابط السيرفر |
| client_id / client_secret | من Credentials التطبيق |
| login / password | مستخدم النظام |
| model / record_id | أهداف CRUD |
| method_slug / menu_key | استدعاء مخصص و menu-access |
قائمة التحقق قبل الإطلاق
- تم إنشاء Application في إعدادات البوابة
- تمت تهيئة Scopes (موديل + حقول + عمليات)
- تمت مشاركة base_url و client_id و client_secret
- Login يرجع التوكنات والمستخدم
- الطلبات المحمية ترسل Authorization و X-Client-Id
- عند 401 يتم Refresh ثم إعادة المحاولة مرة واحدة
تحتاج صلاحية؟
نزوّدك بـ base_url وقاعدة البيانات واليوزر والباسورد وبيانات الـ API — تواصل معنا للبدء.