Zum Hauptinhalt springen

Laborwerte (Ergebnisse) einer Bestellung abrufen

Dieser Endpoint liefert alle Laborwerte (Analyseergebnisse) für eine spezifische Bestellung eines Kunden. Die Ergebnisse beinhalten die gemessenen Werte, Referenzbereiche und Zielwerte.

Endpoint-Details

HTTP-Methode: GET

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

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)

{
"resultValues": [
{
"id": 200103,
"value": "24.00",
"name": "Eisen",
"unit": "µmol/l",
"targetRange": "7.00 - 26.00",
"ranges": {
"diffN2": 1,
"diffN1": 3,
"normMin": 7,
"normMax": 26,
"diffP1": 30,
"diffP2": 34
}
},
{
"id": 200132,
"value": "65.00",
"name": "Glomeruläre Filtrationsrate, eGFR",
"unit": "ml/mi",
"targetRange": "> 90.00",
"ranges": {
"diffN2": 120,
"diffN1": 90,
"normMin": 90,
"normMax": 0
}
},
{
"id": 200140,
"value": "0.83",
"name": "CRP hs",
"unit": "mg/l",
"targetRange": "< 2.00",
"ranges": {
"normMin": 0,
"normMax": 2,
"diffP1": 2
}
}
],
"success": true,
"errorMessage": null
}

Response bei warten auf Laborwerte (202 Accepted)

{
"resultValues": [],
"success": false,
"errorMessage": "LabAnalyses for Order with Id '67890' are not finished yet. Please check back later for the results."
}

Fehlerhafte Response (404 Not Found)

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

Response-Felder

FeldTypBeschreibung
resultValuesarrayListe aller Laborwerte/Ergebnisse
successbooleanGibt an, ob die Anfrage erfolgreich war
errorMessagestring?Fehlermeldung, falls ein Fehler aufgetreten ist (ansonsten null)

ResultValue-Felder

FeldTypBeschreibung
idlongEindeutige ID des Parameters/Laborwerts
valuestring?Gemessener Wert (formatiert als String)
namestring?Name des Parameters (z.B. "Vitamin D3", "Eisen")
unitstring?Einheit des Werts (z.B. "ng/ml", "µg/l")
targetRangestring?Zielbereich als formatierter String (z.B. "30 - 100")
rangesobject?Detaillierte Referenzbereiche für farbliche Bewertung

EntryRanges-Felder (ranges)

Die Referenzbereiche definieren verschiedene Zonen für die farbliche Bewertung der Laborwerte. Dabei sind die Werte von diffN2 bis diffP2 optional und können je nach Parameter unterschiedlich definiert sein. normMin und normMax sind immer definiert und geben den Normalbereich an.

Für die Anzeige von (z.B. 7.00 - 26.00 oder < 2.00), sind die Werte diffN2 bis diffP2 aufsteigend.

Falls der Zielbereich über einem bestimmten Grenzwert liegt (z.B. > 90.00), sind die Werte von diffN2 bis diffP2 absteigend.

FeldTypBewertungBeschreibung
diffN2double?Stark erniedrigtUntere kritische Grenze
diffN1double?Leicht erniedrigtUntere Warngrenze
normMindoubleNormalUntere Grenze des Normalbereichs
normMaxdoubleNormalObere Grenze des Normalbereichs
diffP1double?Leicht erhöhtObere Warngrenze
diffP2double?Stark erhöhtObere kritische Grenze

Werteinterpretation:

Wert liegt inFarbe
< diffN2Rot
diffN2 - diffN1Gelb
diffN1 - normMinHellgrün
normMin - normMaxGrün
normMax - diffP1Hellgrün
diffP1 - diffP2Gelb
> diffP2Rot

Status-Codes

CodeBeschreibung
200OK - Ergebnisse sind verfügbar (prüfe success-Feld)
202Accepted - Berechnung läuft noch, Ergebnisse sind noch nicht verfügbar
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 enthält keine Laborpositionen

Funktionsweise

  1. Authentifizierung über API-Schlüssel
  2. Validierung der Zugriffsberechtigung auf den angegebenen Kunden
  3. Abruf der Bestellung und zugehörigen Laboranalysen
  4. Überprüfung der Laboranalysen:
    • Wenn nicht abgeschlossen → Status 202 (Accepted)
    • Wenn abgeschlossen → Weiter mit Schritt 5
  5. Extraktion aller Laboranalyse-Werte aus den abgeschlossenen Laboranalysen
  6. Sortierung der Ergebnisse nach Parameter-ID
  7. Rückgabe aller Laborwerte mit vollständigen Referenzbereichen

Wichtige Hinweise

  • Die Bestellung muss Laborpositionen enthalten, sonst wird ein 404-Fehler zurückgegeben
  • Wenn die Laboranalysen noch nicht abgeschlossen sind, wird Status 202 zurückgegeben
  • Die Ergebnisse werden erst verfügbar, wenn alle Laboranalysen abgeschlossen sind
  • Die ranges-Werte können zur farblichen Darstellung verwendet werden (grün/hellgrün/gelb/rot)
  • Die Formatierung der Werte berücksichtigt die Spracheinstellung des Kunden
  • Nur Parameter mit tatsächlichen Werten (nicht null/leer) werden zurückgegeben
  • Die Ergebnisliste ist nach Parameter-ID sortiert