Neuen Kunden erstellen
Dieser Endpoint erstellt einen neuen Kunden mit allen erforderlichen Daten. Der Kunde wird automatisch mit der Identität aus dem API-Schlüssel verknüpft.
Endpoint-Details
HTTP-Methode: POST
URL: /external/v1/customers
Authentifizierung: API-Schlüssel (erforderlich)
Parameter
Header
| Header | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
X-Api-Key | string | Ja | API-Schlüssel für die Authentifizierung |
Request Body
{
"birthday": "1990-05-15",
"gender": 0,
"bodyWeight": 75.5,
"bodySize": 180,
"bodyFat": 18.5,
"hipCircumference": 95,
"neckCircumference": 38,
"waistCircumference": 85,
"language": "de-CH",
"note": "Kundennotiz",
"address": {
"firstname": "Max",
"lastname": "Mustermann",
"email": "max.mustermann@example.com",
"street": "Musterstrasse",
"streetNumber": "42",
"additional": "3. Stock",
"zip": "8000",
"city": "Zürich",
"country": "756",
"phone": "+41 44 123 45 67",
"mobilePhone": "+41 79 123 45 67",
"salutation": 10
}
}
Request-Felder
Customer-Felder
| Feld | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
birthday | DateTime? | Nein | Geburtsdatum des Kunden |
gender | int | Ja | Geschlecht: 0 (männlich) oder 1 (weiblich) |
bodyWeight | double | Nein | Körpergewicht in kg |
bodySize | int | Nein | Körpergröße in cm |
bodyFat | double | Nein | Körperfettanteil in % |
hipCircumference | int | Nein | Hüftumfang in cm |
neckCircumference | int | Nein | Nackenumfang in cm |
waistCircumference | int | Nein | Bauchumfang in cm |
language | string? | Nein | Sprache (de-CH, de-DE, en-US) |
note | string? | Nein | Kundennotiz |
address | object | Ja | Hauptadresse des Kunden |
Address-Felder
| Feld | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
firstname | string | Ja | Vorname |
lastname | string | Ja | Nachname |
email | string? | Nein | E-Mail-Adresse |
street | string? | Nein | Straße |
streetNumber | string? | Nein | Hausnummer |
additional | string? | Nein | Adresszusatz |
zip | string? | Nein | Postleitzahl |
city | string? | Nein | Stadt |
country | string | Ja | Land (ISO-3166-Code, z.B. 756 für Schweiz) |
phone | string? | Nein | Telefonnummer |
mobilePhone | string? | Nein | Mobiltelefonnummer |
salutation | int | Ja | Anrede: 10 (Herr), 20 (Frau), 30 (Dr.) |
Response
Erfolgreiche Response (200 OK)
{
"id": 12345,
"success": true,
"errorMessage": null
}
Fehlerhafte Response (400 Bad Request)
{
"id": 0,
"success": false,
"errorMessage": "Firstname is required"
}
Response-Felder
| Feld | Typ | Beschreibung |
|---|---|---|
id | long | Die ID des neu erstellten Kunden (bei Erfolg) |
success | boolean | Gibt an, ob der Kunde erfolgreich erstellt wurde |
errorMessage | string? | Fehlermeldung, falls ein Fehler aufgetreten ist (ansonsten null) |
Status-Codes
| Code | Beschreibung |
|---|---|
200 | OK - Anfrage wurde verarbeitet (prüfe success-Feld) |
400 | Bad Request - Anfragedaten sind ungültig oder unvollständig |
401 | Unauthorized - API-Schlüssel ist ungültig oder fehlt |
500 | Internal Server Error - Interner Serverfehler |
Validierungsregeln
Pflichtfelder
genderaddress.firstnameaddress.lastnameaddress.countryaddress.salutation
Wertebereich
gender: Muss0(männlich) oder1(weiblich) seinlanguage: Muss ein gültiger Kultur-Code sein (de-CH,de-DE,en-US)address.salutation: Muss10(Herr),20(Frau) oder30(Dr.) sein
Funktionsweise
- Authentifizierung über API-Schlüssel
- Validierung der Request-Daten (Pflichtfelder, Wertebereiche)
- Erstellung des Kunden in der Datenbank
- Verknüpfung des Kunden mit der Identität
- Rückgabe der Kunden-ID
Wichtige Hinweise
- Der Kunde wird automatisch mit der Identität aus dem API-Schlüssel verknüpft
- Die Hauptadresse wird als primäre Adresse des Kunden gespeichert
- Wenn kein
birthdayangegeben wird, wird1900-01-01als Standardwert verwendet