Zum Hauptinhalt springen

Bestellinformationen und Status abrufen

Dieser Endpoint liefert detaillierte Informationen zu einer spezifischen Bestellung eines Kunden, einschließlich Status, Adressen, Preisen und zugehörigen Dokumenten.

Endpoint-Details

HTTP-Methode: GET

URL: /external/v1/customers/{customer_id}/orders/{order_id}

Authentifizierung: API-Schlüssel (erforderlich)

Parameter

URL-Parameter

ParameterTypErforderlichBeschreibung
customer_idlongJaDie eindeutige ID des Kunden
order_idlongJaDie eindeutige ID der Bestellung
HeaderTypErforderlichBeschreibung
X-Api-KeystringJaAPI-Schlüssel für die Authentifizierung

Response

Erfolgreiche Response (200 OK)

{
"creationDate": "2026-05-15T10:30:00Z",
"lastUpdatedDate": "2026-05-16T14:20:00Z",
"purchaser": "Max Mustermann",
"customerName": "Max Mustermann",
"shippingCostGross": 9.90,
"totalPriceGross": 159.80,
"currencyName": "CHF",
"status": 60,
"type": 2,
"deliveryType": 1,
"note": "Notiz zur Bestellung",
"deliveryAddress": {
"firstname": "Max",
"lastname": "Mustermann",
"street": "Musterstrasse",
"streetNumber": "42",
"additional": "3. Stock",
"zip": "8000",
"city": "Zürich",
"country": "276",
"phone": "+41 44 123 45 67",
"mobilePhone": "+41 79 123 45 67",
"email": "max.mustermann@example.com",
"salutation": 10
},
"billingAddress": {
"firstname": "Max",
"lastname": "Mustermann",
"street": "Rechnungsstrasse",
"streetNumber": "10",
"zip": "8001",
"city": "Zürich",
"country": "276",
"email": "max.mustermann@example.com",
"salutation": 10
},
"documents": [
"https://s3.example.com/lab-request-12345.pdf?presigned=xyz",
"https://s3.example.com/lab-request-12346.pdf?presigned=abc"
],
"success": true,
"errorMessage": null
}

Fehlerhafte Response (404 Not Found)

{
"success": false,
"errorMessage": "Order with Id '99999' not found for Customer with Id '12345'"
}

Response-Felder

FeldTypBeschreibung
creationDateDateTime?Erstellungsdatum der Bestellung
lastUpdatedDateDateTime?Datum der letzten Aktualisierung
purchaserstring?Name des Käufers
customerNamestring?Primärer Kundenname
shippingCostGrossdoubleVersandkosten (brutto)
totalPriceGrossdoubleGesamtpreis (brutto) inkl. Versandkosten
currencyNamestring?Währungsbezeichnung (CHF, EUR)
statusint?Bestellstatus (siehe Tabelle unten)
typeint?Bestelltyp: 2 (Kundenbestellung)
deliveryTypeint?Lieferart: 1 (Normale Lieferung)
notestring?Notiz zur Bestellung
deliveryAddressobject?Lieferadresse
billingAddressobject?Rechnungsadresse
documentsarray?Liste von presigned URLs zu Labordokumenten (PDFs)
successbooleanGibt an, ob die Anfrage erfolgreich war
errorMessagestring?Fehlermeldung, falls ein Fehler aufgetreten ist (ansonsten null)

Address-Felder (deliveryAddress / billingAddress)

FeldTypBeschreibung
firstnamestring?Vorname
lastnamestring?Nachname
salutationint?Anrede: 10 (Herr), 20 (Frau), 30 (Dr.)
streetstring?Straße
streetNumberstring?Hausnummer
additionalstring?Adresszusatz
zipstring?Postleitzahl
citystring?Stadt
countrystring?Land
phonestring?Telefonnummer
mobilePhonestring?Mobiltelefonnummer
emailstring?E-Mail-Adresse

Status-Codes

CodeBeschreibung
200OK - Anfrage wurde verarbeitet (prüfe success-Feld)
400Bad Request - Anfrage ist ungültig
401Unauthorized - API-Schlüssel ist ungültig oder fehlt
403Forbidden - Keine Zugriffsberechtigung auf den Kunden
404Not Found - Bestellung existiert nicht oder gehört nicht zum angegebenen Kunden

Bestellstatus-Werte

WertBezeichnungBeschreibung
1InProcessingNeue Bestellung ist in Bearbeitung
7WaitingForPaymentZahlung steht noch aus
10VerifiedBestellung wurde überprüft
20ProducingBestellung wird jetzt produziert
50ProducedBestellung wurde produziert
60CompletedBestellung verschickt, d.h. abgeschlossen
80LabAnalysisCompletedLabordaten vollständig und validiert
90CanceledBestellung wurde storniert

Funktionsweise

  1. Authentifizierung über API-Schlüssel
  2. Validierung der Zugriffsberechtigung auf den angegebenen Kunden
  3. Abruf der Bestellung aus der Datenbank
  4. Überprüfung, ob die Bestellung zum angegebenen Kunden gehört
  5. Berechnung des Gesamtpreises (brutto) inkl. Versandkosten
  6. Generierung von presigned URLs für Labordokumente
  7. Rückgabe aller Bestellinformationen

Wichtige Hinweise

  • Die Bestellung muss zum angegebenen Kunden gehören, sonst wird ein 404-Fehler zurückgegeben
  • Alle Preisangaben sind Brutto-Preise (inkl. MwSt.)
  • Die documents-Liste enthält nur Labordokumente (Lab Request PDFs) und sind nur temorär gültig (30 Minuten)
  • Liefer- und Rechnungsadresse können identisch sein
  • Die Währung wird aus der Bestellung übernommen und basiert auf dem Verkaufsmarkt