مرجع API
واجهة REST API كاملة لدمج جميع وظائف SalonBookIt في تطبيقك.
مقدمة
تتيح لك واجهة SalonBookIt API:
- استعلام معلومات النشاط التجاري والخدمات والمحترفين
- التحقق من توفر المواعيد
- إنشاء وإدارة الحجوزات
- إدارة العملاء وبرنامج نقاطهم
- معالجة المدفوعات باستخدام Stripe
عنوان URL الأساسي
https://app.salonbookit.com/api/v1
تنسيق الاستجابة
جميع الردود تتبع نفس التنسيق:
JSON (نجاح)
{
"success": true,
"data": {
// بيانات الاستجابة
}
}
JSON (خطأ)
{
"success": false,
"error": {
"code": "ERROR_CODE",
"message": "وصف الخطأ"
}
}
المصادقة
تستخدم الواجهة طريقتين للمصادقة:
مفتاح API (مطلوب دائماً)
يحدد نشاطك التجاري. يُرسل في الرأس X-API-Key.
X-API-Key: hh_pub_live_abc123...
رمز JWT (نقاط النهاية الخاصة)
يصادق على العميل. يُرسل في الرأس Authorization.
Authorization: Bearer eyJhbG...
راجع دليل المصادقة الكامل.
نقاط النهاية المتاحة
الكتالوج (عام)
| الطريقة | Endpoint | الوصف |
|---|---|---|
| GET | /negocio/ |
معلومات النشاط التجاري |
| GET | /servicios/ |
قائمة الخدمات |
| GET | /servicios/{id}/ |
تفاصيل الخدمة |
| GET | /peluqueros/ |
قائمة المهنيين |
| GET | /peluqueros/{id}/ |
تفاصيل المحترف |
| GET | /disponibilidad/{peluquero}/{fecha}/ |
المواعيد المتاحة |
| GET | /categorias/ |
فئات الخدمات |
| GET | /productos/ |
منتجات المتجر |
المصادقة
| الطريقة | Endpoint | الوصف |
|---|---|---|
| POST | /auth/registro/ |
تسجيل عميل جديد |
| POST | /auth/login/ |
تسجيل الدخول |
| POST | /auth/verify-otp/ |
التحقق من OTP |
| POST | /auth/refresh/ |
تجديد رمز JWT |
الحجوزات (مصادق)
| الطريقة | Endpoint | الوصف |
|---|---|---|
| POST | /reservas/crear/ |
إنشاء حجز |
| GET | /cliente/reservas/ |
حجوزاتي |
| GET | /reservas/{id}/ |
تفاصيل الحجز |
| POST | /reservas/{id}/cancelar/ |
إلغاء الحجز |
المدفوعات
| الطريقة | Endpoint | الوصف |
|---|---|---|
| POST | /pagos/intent/ |
إنشاء PaymentIntent |
| POST | /pagos/confirmar/ |
تأكيد الدفع |
العميل (مصادق)
| الطريقة | Endpoint | الوصف |
|---|---|---|
| GET | /cliente/perfil/ |
ملفي الشخصي |
| PUT | /cliente/perfil/ |
تحديث الملف الشخصي |
| GET | /cliente/puntos/ |
نقاطي |
الترقيم
نقاط النهاية التي تُرجع قوائم تدعم الترقيم:
معلمات الاستعلام
| المعامل | النوع | الافتراضي | الوصف |
|---|---|---|---|
page |
integer | 1 | رقم الصفحة |
page_size |
integer | 20 | عناصر لكل صفحة (الحد الأقصى 100) |
استجابة مرقمة
JSON
{
"success": true,
"data": {
"items": [...],
"pagination": {
"page": 1,
"page_size": 20,
"total_items": 45,
"total_pages": 3,
"has_next": true,
"has_prev": false
}
}
}
الفلاتر
تدعم العديد من نقاط النهاية الفلاتر عبر معلمات الاستعلام. راجع وثائق كل نقطة نهاية لمعرفة الفلاتر المتاحة.
مثال
HTTP
GET /api/v1/servicios/?categoria=1&activo=true&lang=es
رموز HTTP
| الرمز | المعنى |
|---|---|
200 OK |
طلب ناجح |
201 Created |
تم إنشاء المورد بنجاح |
400 Bad Request |
خطأ في المعلمات المرسلة |
401 Unauthorized |
المصادقة مطلوبة أو غير صالحة |
403 Forbidden |
لا توجد صلاحيات لهذا الإجراء |
404 Not Found |
المورد غير موجود |
429 Too Many Requests |
تم تجاوز حد الطلبات |
500 Internal Server Error |
خطأ في الخادم |
راجع مرجع الأخطاء الكامل.