Verfügbarkeit
Endpoints zur Abfrage verfügbarer Zeiten für Buchungen.
GET
/api/v1/disponibilidad/{peluquero_id}/{fecha}/
Ruft die verfügbaren Zeitfenster für einen Fachmann an einem bestimmten Datum ab.
Pfad-Parameter
| Parameter | Typ | Beschreibung |
|---|---|---|
peluquero_id |
integer | ID des Fachmanns |
fecha |
string | Datum im Format JJJJ-MM-TT |
Query-Parameter
| Parameter | Typ | Beschreibung |
|---|---|---|
servicio_id |
integer | Service-ID (zur Berechnung der Dauer) |
servicios |
string | Service-IDs durch Komma getrennt (für mehrere) |
duracion |
integer | Benutzerdefinierte Dauer in Minuten |
Anfrage-Beispiel
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..."
Antwort (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
}
// ... restliche Zeitfenster des Tages
],
"slots_disponibles_count": 18,
"proximo_disponible": "09:00",
"ultimo_disponible": "19:30"
}
}
Antwortfelder
| Feld | Typ | Beschreibung |
|---|---|---|
fecha |
string | Abgefragtes Datum |
profesional |
object | Info des Fachmanns |
duracion_solicitada |
integer | Dauer zur Berechnung der Zeitfenster |
slots |
array | Liste der Zeitfenster |
slots[].hora_inicio |
string | Startzeit (HH:MM) |
slots[].hora_fin |
string | Endzeit (HH:MM) |
slots[].disponible |
boolean | Ob es für Buchung verfügbar ist |
slots[].motivo |
string | Grund wenn nicht verfügbar |
Zeitfenster-Intervall
Zeitfenster werden in 15- oder 30-Minuten-Intervallen gemäß der Geschäftskonfiguration erstellt.
GET
/api/v1/disponibilidad/dias/
Ruft die Tage mit Verfügbarkeit in einem Datumsbereich ab.
Query-Parameter
| Parameter | Typ | Beschreibung |
|---|---|---|
peluquero_id |
integer | ID des Fachmanns (optional) |
servicio_id |
integer | Service-ID |
desde |
string | Startdatum (JJJJ-MM-TT). Standard: heute |
hasta |
string | Enddatum (JJJJ-MM-TT). Standard: +30 Tage |
Anfrage-Beispiel
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..."
Antwort (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"
}
// ... restliche Tage
],
"dias_disponibles_count": 22
}
}
Dieser Endpoint ist nützlich, um einen Kalender anzuzeigen, in dem Tage ohne Verfügbarkeit deaktiviert erscheinen.
Häufige Fehler
| Code | HTTP | Beschreibung |
|---|---|---|
PROFESSIONAL_NOT_FOUND |
404 | Der Fachmann existiert nicht |
INVALID_DATE |
400 | Ungültiges Datumsformat (muss JJJJ-MM-TT sein) |
DATE_IN_PAST |
400 | Das Datum liegt vor heute |
DATE_TOO_FAR |
400 | Das Datum überschreitet das Vorausbuchungslimit |
PROFESSIONAL_NOT_WORKING |
200 | Der Fachmann arbeitet an diesem Tag nicht (leere Zeitfenster) |