belbo
  • Vue d'ensemble
  • 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 › Geschützte API › Sonstiges

Zusatzfelder abfragen

GET https://…/office/api/additionalCustomerFields
Diese Schnittstelle gehört zur Geschützten API und benötigt einen API-Schlüssel. Den Token erstellen Sie in Ihrem Kalender unter den globalen Einstellungen als API Zugang – siehe API-Schnittstellen.

Diese Schnittstelle liefert die Konfiguration aller aktiven Zusatzfelder des Standorts, zu dem der API-Schlüssel gehört – Kundenfelder (Stammdaten) ebenso wie terminbezogene Felder, Felder, die nur im Kalender oder am Termin angezeigt werden, ausgeblendete Felder und die standortspezifischen Felder dieses Standorts. Archivierte (gelöschte) Felder sind nicht enthalten. Mit dem zurückgegebenen keyName lassen sich die Zusatzfelder eines Kunden anschließend über Kundendaten ändern setzen.

Authentifizierung

Der API-Token wird als URL-Parameter token übergeben. Sie erzeugen ihn im Office unter Module › API-Zugang; ein Token kann ein Ablaufdatum haben. Die Felder werden immer für den Standort geliefert, zu dem der Token gehört.

Beispielaufruf

curl -s 'https://demo.belbo.com/office/api/additionalCustomerFields?token=IHR_TOKEN&locale=de'

Ersetzen Sie demo durch Ihre Kundenkennung, also https://<kundenkennung>.belbo.com.

Antwort

Die Antwort ist ein JSON-Array mit einem Objekt je Zusatzfeld, sortiert nach listOrder. Die Beispielantwort zeigt drei typische Fälle: ein Kundenfeld mit Auswahlliste, ein terminbezogenes Textfeld, das nur im Kalender erscheint, und ein ausgeblendetes Datumsfeld.

NameTypBeschreibung
idnumberInterne ID des Feldes.
keyNamestringTechnischer Schlüssel. Er erscheint als key in den additionalFields der Kunden-Endpunkte (customers, customerForMobile) und wird bei updateCustomer zum Setzen von Werten verwendet.
namestringAnzeigename, bei gesetztem locale gegebenenfalls übersetzt.
typestringFeldtyp, einer von: text, date, textArea, selection, checkbox, checkbox_group, birthday, image, link, multipleImages, document, multipleDocuments, multipleProducts, rating, servicer, customer, member, card, iban, bic, pictureMarking, directDebitMandateDate, recipes, contractOverview, language, other.
descriptionstring | nullBeschreibung. Bei selection und checkbox_group steht hier die zeilengetrennte Auswahlliste.
selectItemsstring[] | nullAuswahlwerte – nur bei selection und checkbox_group, sonst null.
valueRequiredbooleanPflichtfeld.
validatorRegexpstring | nullRegulärer Ausdruck zur Validierung des Werts.
errorMessagestring | nullFehlermeldung bei ungültigem Wert, bei gesetztem locale gegebenenfalls übersetzt.
iconstring | nullName des Icons.
tabobject | nullReiter in der Kundenkartei, als {id, name}.
appointmentSpecificbooleanDer Wert gehört zum Termin statt zum Kunden.
specificForLocationIdnumber | nullDas Feld gilt nur für diesen Standort; null bedeutet: alle Standorte.
hiddenbooleanIm Office ausgeblendet.
visibleForCustomerbooleanFür Endkunden bei der Online-Buchung bzw. Registrierung sichtbar.
showInCalendarbooleanWird in den Termindetails im Kalender angezeigt.
showInAppointmentbooleanWird in der Kalendervorschau des Termins angezeigt.
showInAppointmentEntrybooleanWird bei der Terminerfassung abgefragt.
showInDetailScreenbooleanWird in der Kundendetailansicht angezeigt.
showInCustomerSearchPreviewbooleanWird in der Kundensuche angezeigt.
privacyConfidentialbooleanDatenschutzsensibles Feld.
listOrdernumberSortierreihenfolge in der Kundenkartei. Nach diesem Wert ist die Antwort sortiert.
listOrderOnlinenumberSortierreihenfolge im Online-Formular.
listOrderAppointmentnumberSortierreihenfolge am Termin.

Fehlerfälle

StatusMeldungUrsache
200 Access denied Der Token ist ungültig oder abgelaufen. Die Antwort ist reiner Text, kein JSON – so antworten alle Endpunkte der Geschützten API.

Hinweise zur Verwendung

  • keyName für updateCustomer: Um den Wert eines Zusatzfelds bei einem Kunden zu setzen, übergeben Sie bei Kundendaten ändern den keyName aus dieser Antwort, zum Beispiel {"additionalFields":{"hauttyp":"trocken"}}.
  • Binärfelder: Felder der Typen image, multipleImages, document, multipleDocuments und pictureMarking werden zwar aufgelistet, können aber nicht per updateCustomer gesetzt werden.
  • Terminbezogene Felder: Bei appointmentSpecific = true gehört der Wert zum Termin, nicht zum Kunden.

Parameter

NameÜbergabe
token URL-Parameter Pflicht
BeispielIHR_TOKEN string – API-Token, erzeugt im Office unter Module › API-Zugang. Er legt zugleich den Standort fest, dessen Zusatzfelder geliefert werden.
locale URL-Parameter Optional
Beispielde string – Sprache, z. B. "de", "en", "nl" oder "fr". Liefert name, description und errorMessage übersetzt, sofern eine Übersetzung existiert, sonst den Standardtext.

Struktur zuletzt mit der Postman-Collection abgeglichen: 01.10.2026

Beispielantwort

200 Zusatzfelder des Standorts
[
    {
        "id": 4711,
        "keyName": "hauttyp",
        "name": "Hauttyp",
        "type": "selection",
        "description": "normal\ntrocken\nfettig\nMischhaut",
        "selectItems": [
            "normal",
            "trocken",
            "fettig",
            "Mischhaut"
        ],
        "valueRequired": false,
        "validatorRegexp": null,
        "errorMessage": null,
        "icon": "face",
        "tab": {
            "id": 12,
            "name": "Kosmetik"
        },
        "appointmentSpecific": false,
        "specificForLocationId": null,
        "hidden": false,
        "visibleForCustomer": true,
        "showInCalendar": false,
        "showInAppointment": false,
        "showInAppointmentEntry": false,
        "showInDetailScreen": true,
        "showInCustomerSearchPreview": true,
        "privacyConfidential": false,
        "listOrder": 1,
        "listOrderOnline": 1,
        "listOrderAppointment": 0
    },
    {
        "id": 4712,
        "keyName": "behandlungsnotiz",
        "name": "Behandlungsnotiz",
        "type": "text",
        "description": null,
        "selectItems": null,
        "valueRequired": false,
        "validatorRegexp": null,
        "errorMessage": null,
        "icon": null,
        "tab": null,
        "appointmentSpecific": true,
        "specificForLocationId": null,
        "hidden": false,
        "visibleForCustomer": false,
        "showInCalendar": true,
        "showInAppointment": false,
        "showInAppointmentEntry": false,
        "showInDetailScreen": false,
        "showInCustomerSearchPreview": false,
        "privacyConfidential": false,
        "listOrder": 2,
        "listOrderOnline": 0,
        "listOrderAppointment": 1
    },
    {
        "id": 4713,
        "keyName": "letzteHautanalyse",
        "name": "Letzte Hautanalyse",
        "type": "date",
        "description": null,
        "selectItems": null,
        "valueRequired": false,
        "validatorRegexp": null,
        "errorMessage": null,
        "icon": null,
        "tab": {
            "id": 12,
            "name": "Kosmetik"
        },
        "appointmentSpecific": false,
        "specificForLocationId": null,
        "hidden": true,
        "visibleForCustomer": false,
        "showInCalendar": false,
        "showInAppointment": false,
        "showInAppointmentEntry": false,
        "showInDetailScreen": false,
        "showInCustomerSearchPreview": false,
        "privacyConfidential": false,
        "listOrder": 3,
        "listOrderOnline": 0,
        "listOrderAppointment": 0
    }
]

Vous avez une question ? Posez-la ici.

Ce manuel est un service de belbo. Mentions légales