التوفر

نقاط النهاية للاستعلام عن المواعيد المتاحة للحجوزات.

GET /api/v1/disponibilidad/{peluquero_id}/{fecha}/

يحصل على الفترات الزمنية المتاحة لمحترف في تاريخ محدد.

معلمات المسار

المعامل النوع الوصف
peluquero_id integer معرف المحترف
fecha string التاريخ بتنسيق YYYY-MM-DD

معلمات الاستعلام

المعامل النوع الوصف
servicio_id integer معرف الخدمة (لحساب المدة)
servicios string معرفات الخدمات مفصولة بفاصلة (للمتعددة)
duracion integer مدة مخصصة بالدقائق

مثال على الطلب

cURL
curl -X GET "https://app.salonbookit.com/api/v1/disponibilidad/5/2024-01-20/?servicio_id=15" \
  -H "X-API-Key: hh_pub_live_abc123..."

الاستجابة (200 OK)

JSON
{
    "success": true,
    "data": {
        "fecha": "2024-01-20",
        "profesional": {
            "id": 5,
            "nombre": "Carlos García"
        },
        "duracion_solicitada": 30,
        "slots": [
            {
                "hora_inicio": "09:00",
                "hora_fin": "09:30",
                "disponible": true
            },
            {
                "hora_inicio": "09:30",
                "hora_fin": "10:00",
                "disponible": true
            },
            {
                "hora_inicio": "10:00",
                "hora_fin": "10:30",
                "disponible": false,
                "motivo": "ocupado"
            },
            {
                "hora_inicio": "10:30",
                "hora_fin": "11:00",
                "disponible": false,
                "motivo": "ocupado"
            },
            {
                "hora_inicio": "11:00",
                "hora_fin": "11:30",
                "disponible": true
            }
            // ... بقية فترات اليوم
        ],
        "slots_disponibles_count": 18,
        "proximo_disponible": "09:00",
        "ultimo_disponible": "19:30"
    }
}

حقول الاستجابة

الحقل النوع الوصف
fecha string التاريخ المستعلم عنه
profesional object معلومات المحترف
duracion_solicitada integer المدة المستخدمة لحساب الفترات
slots array قائمة الفترات الزمنية
slots[].hora_inicio string وقت البدء (HH:MM)
slots[].hora_fin string وقت الانتهاء (HH:MM)
slots[].disponible boolean إذا كان متاحاً للحجز
slots[].motivo string السبب إذا لم يكن متاحاً
فاصل الفترات

يتم إنشاء الفترات بفواصل 15 أو 30 دقيقة حسب إعدادات النشاط التجاري.

GET /api/v1/disponibilidad/dias/

يحصل على الأيام المتاحة في نطاق تواريخ.

معلمات الاستعلام

المعامل النوع الوصف
peluquero_id integer معرف المحترف (اختياري)
servicio_id integer معرف الخدمة
desde string تاريخ البدء (YYYY-MM-DD). الافتراضي: اليوم
hasta string تاريخ الانتهاء (YYYY-MM-DD). الافتراضي: +30 يوم

مثال على الطلب

cURL
curl -X GET "https://app.salonbookit.com/api/v1/disponibilidad/dias/?peluquero_id=5&servicio_id=15&desde=2024-01-15&hasta=2024-02-15" \
  -H "X-API-Key: hh_pub_live_abc123..."

الاستجابة (200 OK)

JSON
{
    "success": true,
    "data": {
        "desde": "2024-01-15",
        "hasta": "2024-02-15",
        "dias": [
            {
                "fecha": "2024-01-15",
                "disponible": true,
                "slots_libres": 12,
                "primer_slot": "09:00",
                "ultimo_slot": "18:30"
            },
            {
                "fecha": "2024-01-16",
                "disponible": true,
                "slots_libres": 8,
                "primer_slot": "11:00",
                "ultimo_slot": "19:00"
            },
            {
                "fecha": "2024-01-17",
                "disponible": false,
                "slots_libres": 0,
                "motivo": "completo"
            },
            {
                "fecha": "2024-01-18",
                "disponible": false,
                "slots_libres": 0,
                "motivo": "festivo"
            }
            // ... بقية الأيام
        ],
        "dias_disponibles_count": 22
    }
}

هذه نقطة النهاية مفيدة لعرض تقويم حيث تظهر الأيام بدون توفر معطلة.

الأخطاء الشائعة

الرمز HTTP الوصف
PROFESSIONAL_NOT_FOUND 404 المحترف غير موجود
INVALID_DATE 400 تنسيق تاريخ غير صالح (يجب أن يكون YYYY-MM-DD)
DATE_IN_PAST 400 التاريخ قبل اليوم
DATE_TOO_FAR 400 التاريخ يتجاوز حد الحجز المسبق
PROFESSIONAL_NOT_WORKING 200 المحترف لا يعمل في هذا اليوم (فترات فارغة)