Fejlesztőknek

Laboratóriumi összekötő: hogyan lesz egy HL7 v2, CSV vagy JSON formátumú laboreredmény FHIR megfigyelés egyetlen kérésre

Hogyan csatlakoztathatunk egy laboratóriumot egy páciens rekordhoz: egyetlen POST kérés az egész jelentéssel (HL7 v2 ORU^R01, CSV vagy JSON), az eredmények LOINC-hoz rendelve egységekkel, referenciatartományokkal és a laboratórium mint teljesítő, a nem hozzárendelt markerek visszaküldve. Az Anpheros laboratóriumi összekötő, az általa alkalmazott szabályokkal.

Szerző: Megjelent: 4 perc olvasási idő

Egy laboratórium feladata az integráció során csupán annyi, hogy a leletet bekerüljön a páciens rekordjába anélkül, hogy át kellene gépelni, elveszne a referenciatartomány, vagy olyan formátumot találjanak ki, amit senki más nem olvas. Az Anpheros laboratóriumi összekötője a leletet úgy veszi át, ahogy a laboratórium azt már előállítja – HL7 v2, CSV vagy JSON formátumban –, és minden eredményt FHIR Observation objektummá alakít, LOINC kóddal, mértékegységgel, referenciatartománnyal, dátummal és a laboratórium nevével, mint szolgáltató. Ez az útmutató a szerződés.

Műszaki verzió fejlesztőknek: Laboratóriumi összekötő · Laboreredmények API a developers.anpheros.com oldalon, kérésekkel, válaszokkal és korlátokkal. Ez az oldal a köznyelvű változat.

Egy kérés

POST /v1/patients/{patient_id}/labs/import
Authorization: Bearer <project key>
Content-Type: text/csv | x-application/hl7-v2+er7 | application/json
X-Anpheros-Source-System: labx        (opcionális; a Provenance-ben rögzítve)
Idempotency-Key: <report id>          (opcionális; egy újrapróbálkozás ugyanazt a választ adja)

A válasz elmondja, mi történt:

{"created": 3, "skipped": 0, "unmapped": ["Marker foarte rar"], "warnings": [],
 "observations": [{"id": "…", "marker": "TSH", "code": "3016-3", "system": "http://loinc.org",
                   "value": 2.1, "unit": "mUI/L", "date": "2026-09-01"}]}

Formátumok

HL7 v2 ORU^R01, ER7 szövegként. Az OBX-3 az azonosító (code^text^LN a LOINC; egy helyi kód a labor saját kódjaként marad), az OBX-5 az érték, az OBX-6 a mértékegység, az OBX-7 a referenciatartomány, az OBX-8 a rendellenességet jelző zászló (ez lesz az interpretation), az OBX-11 az állapot, az OBX-14 vagy OBR-7 a dátum. Az MSH-4 nevezi meg a küldő intézményt, ami a szolgáltató lesz; az OBR-3 és az MSH-10 lesz a lelet azonosítója a Provenance-ben. A függőben lévő, törölt vagy hibás eredmények (I, X, D, W) és az érték nélküli OBX szegmensek nem válnak megfigyelésekké, és a warnings-ban jelennek meg.

CSV fejléc sorral; elválasztó karakterek: , ; vagy tabulátor, tizedesvessző elfogadott, dátumok ISO, DD.MM.YYYY vagy DD/MM/YYYY. Felismert oszlopok román vagy angol nyelven: marker, value, unit, reference range (70-100, <5, >3.5) vagy ref_low/ref_high, date, opcionális LOINC kód, megjegyzés. A CSV nem tartalmazza a laboratóriumot, így a szolgáltató hiányzik, hacsak nem küldöd az X-Anpheros-Acting-As paramétert.

Analiza;Rezultat;UM;Interval de referinta;Data
Hemoglobina glicozilata (HbA1c);6,4;%;4,0-5,6;01.09.2026
TSH;2,1;mUI/L;0,4-4,0;01.09.2026

JSON, ha már strukturált adatokkal rendelkezel: {"date": "2026-09-01", "origin": "report-77", "laboratory": "Synevo", "items": [{"marker": "TSH", "value": 2.1, "unit": "mUI/L", "ref_low": 0.4, "ref_high": 4.0, "code": "3016-3"}]}.

Fontos megfeleltetési szabályok

  • LOINC, ha meg van adva, egyébként név alapján. A neveket a LOINC neveivel és szinonimáival hasonlítjuk össze román és angol nyelven. Egy név, amely több fogalommal is megegyezik, vagy olyan minősítőt tartalmaz, amivel a fogalom nem rendelkezik (vizelet, nem-HDL, szabad, arány), nem kerül kitalálásra: a labor saját kódját tartja meg urn:anpheros:lab-code alatt, és az unmapped listában jelenik meg, így te javíthatod a megfeleltetést az oldaladon. Küldj LOINC kódokat, ha rendelkezel velük.
  • Az értékeket soha nem alakítjuk át. A karbamid és a karbamid-nitrogén különböző kódok; az LDL közvetlen és az LDL számított különböző kódok; a szérumból származó glükóz és a kapilláris vérből származó glükóz különböző kódok. Az összekötő a név és a módszer alapján választja ki a megfelelőt, és az számot érintetlenül hagyja.
  • Az időzónákat megtartjuk. Egy eltolással rendelkező v2 idő megmarad; nélküle az MSH-7 eltolását használjuk figyelmeztetéssel; ha sehol sincs, csak a dátum kerül tárolásra. A CSV időzónát nem tartalmaz, és dátumként tárolódik.
  • Idempotens. Ugyanazt a leletet kétszer küldve ugyanazzal az Idempotency-Key-vel, ugyanazt a választ kapod, és nem keletkeznek duplikátumok.
  • Provenance minden eredményen: a forrásrendszer, a lelet azonosítója és a szolgáltató, ahogy az HL7 Europe Laboratory Report előírja.

Amit a páciens lát

Az eredmények megjelennek a személy rekordjában, és ha Anpheros Daily-t használ, akkor telefonján is, ahogy megérkeznek, a referenciatartománnyal és az előző leletekhez képesti trenddel. Nincs mit beolvasni, nincs mit átgépelni. Ha egy eredmény rendellenes, a személy látja a jelzést; az alkalmazás nem értelmezi azt.

Tesztelés

A sandbox ingyenes, és a szintetikus páciensek már rendelkeznek laboratóriumi előzménnyel. Küldj egy leletet valamelyiküknek, majd olvasd vissza:

curl -X POST "$BASE/v1/patients/$PID/labs/import" -H "Authorization: Bearer $KEY" \
     -H "Content-Type: text/csv" --data-binary @report.csv
curl "$BASE/fhir/R4/Observation?patient=$PID&category=laboratory&_sort=-date" -H "Authorization: Bearer $KEY"

A teljes specifikáció, beleértve az HL7 Europe megfelelőségi jegyzeteket is, a developers.anpheros.com/guides/lab-connector címen található.

Gyakori kérdések

Változtatnunk kell a LIS által előállított adatokon?

Nem. Küldd el az ORU^R01 üzenetet vagy a CSV exportot úgy, ahogy van. Ha tudsz LOINC kódokat hozzáadni, tedd meg; egyébként az összekötő név alapján megfeleltet, és tájékoztat arról, amit nem tudott megfeleltetni.

Mi történik azokkal az eredményekkel, amelyeket nem tudtok megfeleltetni?

Ezek a labor saját kódjával és a lelet pontos szövegével kerülnek tárolásra, így semmi sem vész el, és az unmapped listában szerepelnek, így legközelebb hozzáadhatsz LOINC kódot.

Megtartásra kerülnek a referenciatartományok és a rendellenességet jelző zászlók?

Igen: a tartomány a referenceRange-be, a zászló az interpretation-be kerül, a mértékegység UCUM-ként tárolódik, és az érték soha nem kerül átalakításra.

Küldhet-e egy laboratórium eredményeket egy olyan páciensnek, akit nem ő hozott létre?

Csak a személy beleegyezésével, vagy mint az a szervezet, amelyért a projekt működik az X-Anpheros-Acting-As paraméterrel. Egy projekt látja az általa létrehozott pácienseket; minden más engedélyt igényel.

Van-e költsége az integrációnak?

A sandbox ingyenes. A termelés havi 49 eurótól indul szervezetként, az első hónap ingyenes; lásd a díjszabást.

Ez az útmutató tájékoztató jellegű, és nem helyettesíti az orvosi tanácsot. Az egészségeddel kapcsolatos döntésekhez beszélj az orvosoddal. Vészhelyzet esetén hívd a 112-t.
A szerzőról
Adrian Kereky

Founder of Anpheros. An electronics engineer, he spent six years in autonomous driving, on automotive projects run in partnership with Samsung and NVIDIA, designing the architecture of driver-assistance and AI systems that run on NVIDIA chips with CUDA. He then built Anpheros: the patient-controlled medical record and the HL7 FHIR R4 platform it runs on.

Többet az Anpherosról és a szerzőről →

Tartsd magadnál az egészségügyi dokumentációdat

Az Anpheros Daily egy helyen tárolja a tüneteket, leleteket, gyógyszereket és dokumentumokat, szabványos formátumban, az irányításod alatt. Az Alap csomag ingyenes.

Szerezd meg az Anpheros Daily-t