# लैब कनेक्टर

> एक पूरा प्रयोगशाला रिपोर्ट CSV, HL7 v2 ORU^R01 या JSON के रूप में भेजें और LOINC कोड और संदर्भ श्रेणियों के साथ प्रयोगशाला अवलोकन प्राप्त करें।

Source: https://developers.anpheros.com/hi/guides/lab-connector

एक प्रयोगशाला (या कोई भी जो लैब रिपोर्ट रखता है) एक अनुरोध में पूरी रिपोर्ट भेजता है और
प्लेटफ़ॉर्म हर परिणाम को रोगी के एक प्रयोगशाला `Observation` में बदल देता है:

```
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        (optional; recorded in Provenance)
Idempotency-Key: <report id>          (optional; a retry returns the same answer)
```

## प्रारूप (Formats)

**CSV** हेडर पंक्ति के साथ; विभाजक `,` `;` या टैब, दशमलव अल्पविराम स्वीकृत, तिथियां ISO,
`DD.MM.YYYY` या `DD/MM/YYYY`। पहचानी गई कॉलम (रोमानियाई या अंग्रेजी): मार्कर
(`analiza`, `test`, `marker`, `name`) — या केवल एक LOINC `code` कॉलम, इस मामले में LOINC नाम मार्कर बन जाता है —
मान (`rezultat`, `valoare`, `value`, `result`), इकाई (`um`, `unitate`, `unit`),
संदर्भ सीमा (`interval`, `referinta`: `70-100`, `<5`, `>3.5`) या `ref_low`/`ref_high`,
तिथि (`data`, `recoltare`), वैकल्पिक LOINC (`loinc`, `code`), नोट।

```
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
```

**HL7 v2 ORU^R01** (ER7 टेक्स्ट, सेगमेंट CR या LF द्वारा अलग किए गए): `OBX-3` पहचानकर्ता (`code^text^LN`
LOINC है; एक स्थानीय कोड (`^L`, `^99zzz`) या कोई अन्य कोडिंग सिस्टम लैब के अपने कोड के रूप में रखा जाता है
`urn:anpheros:lab-code`), `OBX-5` मान (`NM`, `SN`, या टेक्स्ट),
`OBX-6` इकाई, `OBX-7` संदर्भ सीमा, `OBX-8` असामान्य ध्वज → `interpretation`, `OBX-11` स्थिति,
`OBX-14` या `OBR-7` तिथि; `OBR-3`/`MSH-10` Provenance में रिपोर्ट आईडी बन जाते हैं।

**प्रयोगशाला।** प्रत्येक परिणाम बताता है कि इसे किसने उत्पन्न किया `performer` में, जैसा कि HL7 Europe Laboratory Report 2.1.0
आवश्यकता है: वह संगठन जिसके लिए आप कार्य कर रहे हैं (`X-Anpheros-Acting-As`), अन्यथा `MSH-4` (भेजने वाली सुविधा) HL7 के लिए, या
JSON में `laboratory` (शीर्ष स्तर या प्रति आइटम)। एक CSV में कोई प्रयोगशाला नहीं होती है; ऐसे परिणाम एक गुम
निष्पादक के साथ मान्य होते हैं, जो सत्य है।

**पाठ रिपोर्ट, दस्तावेज़ और गुम तिथियां।** एक पाठ रिपोर्ट प्रति पंक्ति OBX (`TX`/`FT`, वही `OBX-3`) भेजी जाती है
पंक्तियों को जोड़कर एक परिणाम बन जाती है। `OBX-5` में एक पूरा दस्तावेज़ (`ED`, या कोई भी मान एन्कोड किया गया `Base64`)
परिणाम के रूप में संग्रहीत नहीं किया जाता है; प्रतिक्रिया चेतावनी देती है और दस्तावेज़ `/documents` से संबंधित है। `OBR-7` के बिना, परिणाम द्वारा दिनांकित होते हैं
`OBR-14` (नमूना प्राप्त हुआ), चेतावनी के साथ।

**समय और समय क्षेत्र।** समय क्षेत्र के बिना v2 समय प्रेषक का स्थानीय समय है, UTC नहीं। के साथ भेजा गया ऑफ़सेट
`OBX-14`/`OBR-7` (`20260901081000+0300`) रखा जाता है (`2026-09-01T08:10:00+03:00`)। एक के बिना, `MSH-7` का ऑफ़सेट
उपयोग किया जाता है और एक चेतावनी ऐसा कहती है; कहीं भी ऑफ़सेट के बिना, परिणाम केवल अपनी तिथि रखता है, यह भी चेतावनी के साथ। CSV समय
(`01.09.2026 08:10`) कोई समय क्षेत्र नहीं ले जाते हैं, इसलिए उन्हें केवल तिथियों के रूप में संग्रहीत किया जाता है। 17 अक्टूबर 2026 तक ऐसे समय थे
UTC के रूप में लेबल किया गया; तब आयातित परिणाम अपनी पहचान बनाए रखते हैं और जब कोई रिपोर्ट फिर से भेजी जाती है तो उन्हें पहचाना जाता है।

HL7 परिणाम जो अभी भी लंबित हैं (OBX-11 `I`), अप्राप्य (`X`), हटाए गए (`D`) या गलत (`W`), और OBX सेगमेंट
बिना मान के, अवलोकन नहीं बनते हैं; प्रत्येक को `warnings` में नामित किया गया है।

**JSON**: `{"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, "date": "2026-09-01", "code": "3016-3"}]}`।

## आपको क्या वापस मिलता है

```json
{"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"}]}
```

- मार्कर **LOINC** से मैप किए जाते हैं जब रिपोर्ट LOINC कोड देती है या नाम प्लेटफ़ॉर्म की शब्दावली से मेल खाता है (रोमानियाई और अंग्रेजी नाम और सामान्य उपनाम)। अन्य लैब के कोड को `urn:anpheros:lab-code` के तहत रिपोर्ट से सटीक टेक्स्ट के साथ रखते हैं, और `unmapped` में सूचीबद्ध होते हैं ताकि आप अपने तरफ से मैपिंग में सुधार कर सकें। लैब का अपना कोड केवल उसके प्रयोगशाला के साथ मिलकर अद्वितीय होता है: स्रोत सिस्टम प्रत्येक Observation's Provenance (`X-Anpheros-Source-System`) में दर्ज किया जाता है।
- नामों को LOINC नामों और समानार्थक शब्दों से मिलाया जाता है (उदाहरण के लिए *Hemoglobin A1c*, *Glycated hemoglobin*, *HDL cholesterol*, *LDL-C*)। एक नाम जो कई अवधारणाओं से मेल खाता है, या जिसमें एक क्वालिफायर होता है जो अवधारणा के पास नहीं होता है (*मूत्र*, *गैर-एचडीएल*, *मुक्त*, *अनुपात*…), का अनुमान नहीं लगाया जाता है: यह लैब के कोड को रखता है और `unmapped` में सूचीबद्ध होता है। जब भी आपके सिस्टम में LOINC कोड हों तो उन्हें भेजें।
- यूरिया और यूरिया नाइट्रोजन (BUN) अलग-अलग माप हैं: *Uree* / *Urea* यूरिया (LOINC `3091-6`, या mmol/L में `22664-7`) से मैप होता है, *BUN* / *Urea nitrogen* / *Azot ureic* यूरिया नाइट्रोजन (`3094-0`, या mmol/L में `14937-7`) से मैप होता है। मान कभी भी परिवर्तित नहीं होते हैं।
- LDL कोलेस्ट्रॉल: एक विधि के बिना एक नाम `2089-1` से मैप होता है; *calculated* / *calculat* / *Friedewald* गणना किए गए LDL (`13457-7`) से; *direct* प्रत्यक्ष परख (`18262-6`) से। विधि एक क्वालिफायर है, जैसे *Bilirubina directa* में *direct*, जो कुल बिलीरुबिन नहीं है और लैब के कोड को रखता है।
- ग्लूकोज: एक लैब रिपोर्ट पर एक नग्न "Glicemie" / "Glucose" सीरम या प्लाज्मा (LOINC `2345-7`) से मैप होता है; एक नाम जो कैपिलरी, फिंगर-प्रिक या होल ब्लड ("capilar", "sânge integral") कहता है, होल ब्लड (`2339-0`) से मैप होता है। रिपोर्ट में एक LOINC कोड हमेशा प्राथमिकता लेता है।
- प्रत्येक पंक्ति को एक स्थिर पहचानकर्ता (`urn:anpheros:lab-import:v2`) मिलता है जो रिपोर्ट क्या कहती है - रिपोर्ट आईडी, रिपोर्ट पर नाम और कोड, तिथि, मान और इकाई - कभी भी प्लेटफ़ॉर्म द्वारा चुने गए LOINC कोड से नहीं, इसलिए **एक ही रिपोर्ट को फिर से भेजने पर पहले से आयात की गई पंक्तियाँ छोड़ दी जाती हैं** (`skipped`), मैपिंग में सुधार के बाद भी। जो पंक्तियाँ इनमें से किसी भी चीज़ में भिन्न होती हैं (एक अलग रिपोर्ट, संग्रह का एक अलग समय, एक अलग मान) उन्हें अलग रखा जाता है। 14 अक्टूबर 2026 से पहले आयात किए गए परिणाम अपनी मूल पहचानकर्ता रखते हैं और नाम, तिथि, मान, इकाई और रिपोर्ट आईडी द्वारा पहचाने जाते हैं। रिपोर्ट आईडी के बिना (CSV) ऐसा मिलान `warnings` में रिपोर्ट किया जाता है; अलग-अलग रिपोर्टों को अलग रखने के लिए एक रिपोर्ट आईडी (HL7 `OBR-3`/`MSH-10`, JSON `origin`) भेजें।
- प्रत्येक Observation में `author_type = import`, आपकी स्रोत प्रणाली और रिपोर्ट आईडी के साथ Provenance होता है; वेबहुक प्रति Observation `resource.created` फायर होते हैं; रोगी अपने ऐप में परिणाम देखता है और किसी भी ऐप को जिसे उसने सहमति दी है, वह उन्हें पढ़ सकता है।
- प्रति अनुरोध 500 पंक्तियों तक।

दोनों SDKs: `labs.importCsv`, `labs.importHl7`, `labs.importItems`।

CSV और HL7 v2 रिपोर्ट से FHIR Observations तक एक काम का उदाहरण, बिना मैप किए गए मार्कर और फिर से भेजी गई रिपोर्ट के साथ: [How to import laboratory results into a FHIR record](https://developers.anpheros.com/hi/guides/import-lab-results-fhir)।

लैब डेटा प्रयोगशालाओं, क्लीनिकों, ऐप्स और AI के बीच कैसे चलता है, और लैब परिणाम API में क्या देखना है: [Laboratory results API](https://developers.anpheros.com/hi/guides/lab-results-api)।
