belbo
  • Overview
  • API-Referenz
      • Abfrage der Standorte
      • Abfrage der Leistungen und Gruppen
      • Berechnung der Mitarbeiter zu Leistungen
      • Abfrage des Warenkorbs
      • Zusatzdienstleistungen für gewählte Leistungen abfragen
      • Abfrage von zusätzlichen Feldern (deprecated)
      • Mitarbeiterinformationsabfrage
      • Mitarbeitersuche mit Namen
      • Preisdetails für Leistung
      • Schrittweisen Buchungsprozess abfragen
      • Verfügbare Termine
      • Verfügbare Termine (JSON-Body)
      • Terminzeiten (auch bereits belegte)
      • Buchung starten (alt)
      • Buchung starten
      • Buchungsstatus abfragen
      • Abfrage des Warenkorbs für eine Buchung
      • Kundendaten zur Buchung hinzufügen
      • Abfrage Termin-spezifischer Felder
      • Terminspezifische Informationen speichern
      • Buchungsabschluss
      • Newsletterregistrierung
      • Gutscheinrestwertabfrage
      • Bewertungsabfrage
      • Abfrage der verkaufbaren Gutscheine
      • Token erhalten
      • Token auslesen
      • Sprache ändern
      • News
      • Standorte
      • Login
      • Login SHA-2
      • Logout
      • Fragenkatalog auslesen
      • Fragenkatalog auslesen mit Infos
      • Übergreifenden Fragenkatalog auslesen
      • Simple Registrierung
      • Registrierung
      • Registrierung bestätigen (optional)
      • Passwort vergessen
      • Passwort neu setzen (optional)
      • Push ID speichern
      • Passwort ändern
      • Benachrichtigungseinstellungen abfragen
      • Benachrichtigungseinstellungen ändern
      • Zukünftige Terminliste
      • Vergangene Termine
      • Termin absagen
      • Account löschen
      • Profilabfrage
      • Profiländerung
      • Mitarbeiter für Leistungen (deprecated)
      • Mitarbeiter für Leistungen
      • Verfügbare Tage
      • Tagesabfrage
      • Terminzeiten für einen Tag (deprecated)
      • Terminzeiten für einen Tag
      • Uhrzeit reservieren
      • Buchung abschließen
      • Arbeitszeiten abfragen
      • Arbeitszeiten erstellen
      • Arbeitszeiten ändern
      • Arbeitszeiten löschen
      • Arbeitszeiten, Abwesenheiten und Notizen eines Mitarbeiters abrufen
      • Mitarbeiter mit Pause blockieren
      • Terminänderung eines Tages abfragen
      • Termine für einen Tag abfragen
      • Daten für einen einzelnen Termin abfragen
      • Termine für einen Kunden abfragen
      • Kundentermin absagen
      • Mitarbeiter eines Termins ändern
      • Kundendaten zur Buchung hinzufügen (Geschützte API)
      • Rechnungen abfragen
      • Produktauflistung VK
      • Produktsuche
      • Leistungsauflistung gruppiert nach Produktgruppe
      • Leistungsauflistung
      • Gutscheinauflistung
      • Kassenstandsabfrage
      • Bestand an einem Verkaufsprodukt ändern
      • Kundensuche nach Mobilnummer
      • Kundenliste mit Mobilnummer
      • Kundenabfrage
      • Mitarbeiter
      • Kundendaten ändern
      • Zusatzfelder abfragen
Skip to content

API-Referenz › Public API › Abfrage verfügbarer Uhrzeiten

Verfügbare Termine (JSON-Body)

POST https://…/externalBooking/calcAvailableAppointments2
Diese Schnittstelle gehört zur Public API und liefert öffentlich sichtbare Daten – ein API-Schlüssel ist nicht nötig.

Diese Schnittstelle liefert genau dasselbe Ergebnis wie Verfügbare Termine (calcAvailableAppointments): alle verfügbaren Uhrzeiten für den angegebenen Zeitraum. Der einzige Unterschied liegt in der Übergabe der Daten.

calcAvailableAppointments erwartet die Felder als Formulardaten (application/x-www-form-urlencoded), Listen und Zuordnungen also in der Schreibweise bookingGroups[0]. calcAvailableAppointments2 erwartet stattdessen einen JSON-Body mit Content-Type: application/json. Verschachtelte Werte wie selectedProducts und bookingGroups stehen damit als echte JSON-Liste beziehungsweise als JSON-Objekt im Body und müssen nicht mehr in Feldnamen kodiert werden.

Welche der beiden Varianten Sie verwenden, ist Ihnen überlassen: Antwortformat, Rechte und Verhalten sind identisch. Für neue Anbindungen empfiehlt sich calcAvailableAppointments2, weil der Body derselben Schreibweise folgt wie bei Buchung starten und die Felder dadurch unverändert weitergereicht werden können.

Header

NameWert
Content-Type application/json

Request-Body (JSON)

Pflichtfelder

FeldTyp
servicerGroupId Zahl
Beispiel16 ID des Standorts, für den die freien Uhrzeiten berechnet werden.
selectedProducts Liste
Beispiel[180612] IDs der gewünschten Leistungen als Liste, aus der Leistungsabfrage (calcGroups).
numberOfDays Zahl
Beispiel1 Anzahl der Tage ab "offset", für die verfügbare Uhrzeiten berechnet werden.
bookingGroups Objekt
Beispiel{"0":-1} Ordnet jeder gewünschten Position einen Mitarbeiter zu.
bookingGroups.0 Zahl
Beispiel-1 Mitarbeiter-ID für die erste Position; -1 steht für "beliebiger Mitarbeiter".
offset Text
Beispiel02.01.2019 Erster Tag des abgefragten Zeitraums im Format TT.MM.JJJJ. Die Antwort ist nach genau diesen Tagesdaten gegliedert.

Optionale Felder

FeldTyp
bookingSource Text
BeispielYour API Freier Text, der die Herkunft der Anfrage kennzeichnet – zum Beispiel der Name Ihrer Anwendung. Sinnvollerweise derselbe Wert, der später bei der eigentlichen Buchung mitgeschickt wird.
Vollständiger Beispiel-Body
{
    "servicerGroupId": 16,
    "selectedProducts": [
        180612
    ],
    "numberOfDays": 1,
    "bookingGroups": {
        "0": -1
    },
    "offset": "02.01.2019",
    "bookingSource": "Your API"
}

Beispielantwort

200 Verfügbare Termine
{
    "generalAvailabilities": {
        "02.01.2019": [
            {
                "startDate": "09:00",
                "realDate": "02.01.201909:00",
                "differentServicers": [
                    7473
                ],
                "hightlightClass": null,
                "possibleServicers": null,
                "filtered": false,
                "rating": 0
            },
            {
                "startDate": "16:00",
                "realDate": "02.01.201916:00",
                "differentServicers": [
                    7473
                ],
                "hightlightClass": null,
                "possibleServicers": null,
                "filtered": false,
                "rating": 0
            }
        ]
    }
}

Have a question? Ask it here.

This manual is a service by belbo. Legal notice