Skip to content
Last updated

This page is a technical reference for your development team. It shows exactly what data JondaX sends back after processing your file. If you just want to see your results, visit the Transformed Files page in the portal.

JondaX POSTs processed results to the endpoint URL you configure on the Integration page. The output format you choose on the Integration page determines which payload structure your server receives.

Output format selector on Integration page

In the examples below, [api-header] and [api-key] are placeholders for the header name and value you configured — JondaX sends your chosen header on every callback.

All sample data is synthetic and does not represent real individuals.


JSON — Inline

Content-Type: application/json

POST /api/results HTTP/1.1
Host: api.example.com
Content-Type: application/json
[api-header]: [api-key]

{
  "customerId": 1,
  "uploadId": "16227c8c-aa20-443d-ad50-528034f54d7a",
  "fileName": "E20UNMDMCB_96dpi_1.png",
  "transactionId": 484,
  "outputFormat": "JSON",
  "totalTests": 3,
  "qaPassed": 3,
  "manualReview": 0,
  "Results": [
    {
      "Date": "2024-03-14 00:00:00",
      "LOINC-Code": "718-7",
      "Biomarker-Name": "Haemoglobin",
      "Result": "17.00",
      "Low-Ref-Range": "13.00",
      "High-Ref-Range": "17.50",
      "Unit-of-measurement": "g/dL",
      "Comment": ""
    },
    {
      "Date": "2024-03-14 00:00:00",
      "LOINC-Code": "4544-3",
      "Biomarker-Name": "Haematocrit",
      "Result": "0.52 H",
      "Low-Ref-Range": "0.38",
      "High-Ref-Range": "0.50",
      "Unit-of-measurement": "",
      "Comment": ""
    },
    {
      "Date": "2024-03-14 00:00:00",
      "LOINC-Code": "",
      "Biomarker-Name": "Basophils",
      "Result": "<0.1",
      "Low-Ref-Range": "",
      "High-Ref-Range": "<0.3",
      "Unit-of-measurement": "/nL",
      "Comment": ""
    }
  ]
}

JSON field reference

FieldTypeDescription
customerIdintegerYour account identifier
uploadIdstringUUID of the upload
fileNamestringOriginal uploaded filename
transactionIdintegerInternal transaction identifier
outputFormatstringAlways "JSON" for this format
totalTestsintegerTotal number of biomarkers in this result (across the entire upload, regardless of delivery stage)
qaPassedintegerNumber of biomarkers that passed automated quality checks
manualReviewintegerNumber of biomarkers that required manual review. totalTests = qaPassed + manualReview
ResultsarrayArray of extracted biomarker results. Empty ([]) only in error callbacks
Results[].DatestringTest date (YYYY-MM-DD HH:mm:ss). Can be empty string
Results[].LOINC-CodestringStandard LOINC code (e.g. "718-7") when matched to a clinical template; empty string if unmapped
Results[].Biomarker-NamestringStandardized biomarker name
Results[].ResultstringTest result value. May be numeric ("17.00"), qualitative ("NEGATIVE"), range ("1-3"), or flagged ("0.52 H"). Can be empty string
Results[].Low-Ref-RangestringLower reference range. Can be empty string
Results[].High-Ref-RangestringUpper reference range. May include comparator prefix e.g. "<0.3". Can be empty string
Results[].Unit-of-measurementstringMeasurement unit. Can be empty string
Results[].CommentstringAdditional notes. Can be empty string

With "Original results in output" enabled

When this toggle is on, each item in Results[] gains an Original field with the unprocessed source data:

{
  "customerId": 1,
  "uploadId": "16227c8c-aa20-443d-ad50-528034f54d7a",
  "fileName": "E20UNMDMCB_96dpi_1.png",
  "transactionId": 484,
  "outputFormat": "JSON",
  "totalTests": 1,
  "qaPassed": 1,
  "manualReview": 0,
  "Results": [
    {
      "Date": "2024-03-14 00:00:00",
      "Biomarker-Name": "Haemoglobin",
      "Result": "17.00",
      "Low-Ref-Range": "13.00",
      "High-Ref-Range": "17.50",
      "Unit-of-measurement": "g/dL",
      "Comment": "",
      "Original": {
        "Biomarker-Name": "HGB",
        "Result": "17.0",
        "Unit-of-measurement": "g/dL",
        "Low-Ref-Range": "13.0",
        "High-Ref-Range": "17.5"
      }
    }
  ]
}

JSON — File Upload

Content-Type: multipart/form-data. Filename uses the pattern report-{transactionId}-{timestamp}.json.

The request has two parts: the result file and a metadata JSON field.

POST /api/results HTTP/1.1
Host: api.example.com
Content-Type: multipart/form-data;
[api-header]: [api-key]

------------------------------
Content-Disposition: form-data; name="metadata"
Content-Type: application/json

{
  "customerId": 1,
  "uploadId": "16227c8c-aa20-443d-ad50-528034f54d7a",
  "fileName": "E20UNMDMCB_96dpi_1.png",
  "transactionId": 484,
  "outputFormat": "JSON",
  "totalTests": 10,
  "qaPassed": 10,
  "manualReview": 0
}
------------------------------
Content-Disposition: form-data; name="file"; filename="report-491-1783326841635.json"
Content-Type: application/json

(JSON results body — same structure as inline format)
------------------------------

Metadata field reference

FieldTypeDescription
customerIdintegerYour account identifier
uploadIdstringUUID of the upload
fileNamestringResult filename (pattern: report-{transactionId}-{timestamp}.{ext})
transactionIdintegerInternal transaction identifier
outputFormatstringFormat used — JSON, HL7, FHIR_JSON, FHIR_XML, CSV, or PARQUET
totalTestsintegerTotal number of biomarkers in this result
qaPassedintegerNumber of biomarkers that passed automated quality checks
manualReviewintegerNumber of biomarkers that required manual review

This metadata part is included on all File-type callbacks (HL7, FHIR JSON, FHIR XML, CSV, Parquet).


HL7 — File Upload

Content-Type: multipart/form-data. File part content-type: application/hl7-v2. Filename uses the pattern report-{transactionId}-{timestamp}.hl7.

HL7 version: v2.3

HL7 segments

SegmentNamePresence
MSHMessage HeaderAlways
PIDPatient IdentificationAlways
PV1Patient VisitAlways
ORCCommon OrderAlways
OBRObservation RequestAlways
OBXObservation ResultAlways (one per biomarker)
NTENotes and CommentsOptional

OBX value types

Each OBX segment uses value type NM (numeric) when the result is a pure number, and ST (string) for qualitative results such as "Positive" or "Negative".

OBX-3 (observation identifier) follows the standard HL7 Coded Element (CE) format <Identifier>^<Text>^<Name of Coding System>:

  • Mapped LOINC: {loincCode}^{transformedTestName}^LN (e.g., 718-7^Hemoglobin^LN).
  • Unmapped LOINC: ^{transformedTestName}^ (e.g., ^Custom Analyte^).

Units containing ^ are escaped as \S\ per HL7 encoding rules (e.g. 10^6/uL → 10\S\6/uL).

Example

POST /api/hl7/results HTTP/1.1
Host: api.example.com
Content-Type: multipart/form-data;
[api-header]: [api-key]

------------------------------
Content-Disposition: form-data; name="metadata"
Content-Type: application/json

{
  "customerId": 1,
  "uploadId": "16227c8c-aa20-443d-ad50-528034f54d7a",
  "fileName": "E20UNMDMCB_96dpi_1.png",
  "transactionId": 484,
  "outputFormat": "HL7",
  "totalTests": 10,
  "qaPassed": 10,
  "manualReview": 0
}
------------------------------
Content-Disposition: form-data; name="file"; filename="report-488-1783326903921.hl7"
Content-Type: application/hl7-v2

MSH|^~\&|JONDAHEALTH|||||||||ORU^R01|||2.3
PID|||||
PV1||||||||||||||||||||
ORC|1||||||||||||||||||||||||||||LAB
OBR|||||||||||||||||20240129000000
OBX|1|NM|718-7^Hemoglobin^LN||14.5|g/dL|12.00-15.50||||F|||20240129000000
OBX|2|NM|2345-7^Glucose^LN||95|mg/dL|70.00-100.00||||F|||20240129000000
------------------------------

FHIR JSON — File Upload

Content-Type: multipart/form-data. File part content-type: application/json. File part name: file. Filename uses the pattern report-{transactionId}-{timestamp}.json.

FHIR version: R4

The bundle is a collection type. Resources in order: Organization, Patient, DiagnosticReport, followed by one Observation per biomarker.

All resource IDs use deterministic UUIDv5 (urn:uuid:<uuidv5>), ensuring idempotency and preventing duplicate entries when results are ingested repeatedly. Organization.name is populated from the detected laboratory name (falling back to "Jonda Health" if unavailable), and DiagnosticReport.performer references this organization with a matching display. Patient and organization headers contain no PII.

Numeric results use valueQuantity (with numeric value and human-readable unit). Qualitative results use valueString. Biomarkers matched to standard templates include official LOINC codes under http://loinc.org; unmatched biomarkers include only the human-readable display name.

POST /api/fhir/json/results HTTP/1.1
Host: api.example.com
Content-Type: multipart/form-data;
[api-header]: [api-key]

------------------------------
Content-Disposition: form-data; name="metadata"
Content-Type: application/json

{
  "customerId": 1,
  "uploadId": "16227c8c-aa20-443d-ad50-528034f54d7a",
  "fileName": "E20UNMDMCB_96dpi_1.png",
  "transactionId": 484,
  "outputFormat": "FHIR_JSON",
  "totalTests": 2,
  "qaPassed": 2,
  "manualReview": 0
}
------------------------------
Content-Disposition: form-data; name="file"; filename="report-484-1783330402859.json"
Content-Type: application/json

{
  "resourceType": "Bundle",
  "type": "collection",
  "id": "e3bfec7c-e4e7-5735-97e2-76ebfe9ea081",
  "entry": [
    {
      "fullUrl": "urn:uuid:29cc71ae-5f55-5565-b326-1f79673db842",
      "resource": {
        "resourceType": "Organization",
        "id": "29cc71ae-5f55-5565-b326-1f79673db842",
        "identifier": [
          {
            "system": "https://jonda.health/identifiers/orgs",
            "value": "jonda-health"
          }
        ],
        "name": "Jonda Health"
      }
    },
    {
      "fullUrl": "urn:uuid:3ba008a8-c1f4-5477-bb42-0650b4919d6c",
      "resource": {
        "resourceType": "Patient",
        "id": "3ba008a8-c1f4-5477-bb42-0650b4919d6c",
        "managingOrganization": {
          "reference": "urn:uuid:29cc71ae-5f55-5565-b326-1f79673db842"
        }
      }
    },
    {
      "fullUrl": "urn:uuid:72a029b1-e791-5902-b910-89fa8f645144",
      "resource": {
        "resourceType": "DiagnosticReport",
        "id": "72a029b1-e791-5902-b910-89fa8f645144",
        "status": "final",
        "category": [
          {
            "coding": [
              {
                "system": "http://terminology.hl7.org/CodeSystem/v2-0074",
                "code": "LAB",
                "display": "Laboratory"
              }
            ],
            "text": "Laboratory"
          }
        ],
        "code": {
          "coding": [
            {
              "system": "http://loinc.org",
              "code": "11502-2",
              "display": "Laboratory report"
            }
          ],
          "text": "Laboratory Report"
        },
        "subject": {
          "reference": "urn:uuid:3ba008a8-c1f4-5477-bb42-0650b4919d6c"
        },
        "effectiveDateTime": "2026-04-23T00:00:00.000Z",
        "performer": [
          {
            "reference": "urn:uuid:29cc71ae-5f55-5565-b326-1f79673db842",
            "display": "Jonda Health"
          }
        ],
        "result": [
          { "reference": "urn:uuid:cafb97f0-2e91-56ac-921a-d35d5311c77b" },
          { "reference": "urn:uuid:05cc70ae-9be6-5f8f-a7d4-1fd11d410a87" }
        ]
      }
    },
    {
      "fullUrl": "urn:uuid:cafb97f0-2e91-56ac-921a-d35d5311c77b",
      "resource": {
        "resourceType": "Observation",
        "id": "cafb97f0-2e91-56ac-921a-d35d5311c77b",
        "status": "final",
        "identifier": [
          {
            "system": "https://jonda.health/identifiers/observations",
            "value": "report-484-test-1"
          }
        ],
        "category": [
          {
            "coding": [
              {
                "system": "http://terminology.hl7.org/CodeSystem/observation-category",
                "code": "laboratory",
                "display": "Laboratory"
              }
            ],
            "text": "Laboratory"
          }
        ],
        "code": {
          "coding": [
            {
              "display": "Color"
            }
          ],
          "text": "Color"
        },
        "subject": {
          "reference": "urn:uuid:3ba008a8-c1f4-5477-bb42-0650b4919d6c"
        },
        "effectiveDateTime": "2026-04-23T00:00:00.000Z",
        "valueString": "YELLOW"
      }
    },
    {
      "fullUrl": "urn:uuid:05cc70ae-9be6-5f8f-a7d4-1fd11d410a87",
      "resource": {
        "resourceType": "Observation",
        "id": "05cc70ae-9be6-5f8f-a7d4-1fd11d410a87",
        "status": "final",
        "identifier": [
          {
            "system": "https://jonda.health/identifiers/observations",
            "value": "report-484-test-2"
          }
        ],
        "category": [
          {
            "coding": [
              {
                "system": "http://terminology.hl7.org/CodeSystem/observation-category",
                "code": "laboratory",
                "display": "Laboratory"
              }
            ],
            "text": "Laboratory"
          }
        ],
        "code": {
          "coding": [
            {
              "system": "http://loinc.org",
              "code": "4548-4",
              "display": "Haemoglobin A1c"
            }
          ],
          "text": "Haemoglobin A1c"
        },
        "subject": {
          "reference": "urn:uuid:3ba008a8-c1f4-5477-bb42-0650b4919d6c"
        },
        "effectiveDateTime": "2026-04-23T00:00:00.000Z",
        "valueQuantity": {
          "value": 5.6,
          "unit": "%"
        },
        "referenceRange": [
          {
            "low": { "value": 4.5, "unit": "%" },
            "high": { "value": 5.7, "unit": "%" },
            "text": "4.50-5.70"
          }
        ]
      }
    }
  ]
}
------------------------------

FHIR JSON — Inline

Content-Type: application/fhir+json

The raw FHIR R4 Bundle is POSTed directly as the request body — no multipart wrapper, no metadata field. The bundle structure is identical to the File format (collection type with deterministic UUIDv5 identifiers).

Because the FHIR Bundle body must remain R4-compliant, envelope fields (customerId, uploadId, etc.) cannot be added inside the body without breaking the standard. Instead, JondaX delivers this metadata as custom X-JondaX-* HTTP request headers on every inline FHIR JSON callback.

POST /api/results HTTP/1.1
Host: api.example.com
Content-Type: application/fhir+json
[api-header]: [api-key]
X-JondaX-Customer-Id: 11
X-JondaX-Upload-Id: 16227c8c-aa20-443d-ad50-528034f54d7a
X-JondaX-File-Name: E20UNMDMCB_96dpi_1.png
X-JondaX-Transaction-Id: 484
X-JondaX-Output-Format: FHIR_JSON
X-JondaX-Total-Tests: 2
X-JondaX-Qa-Passed-Count: 2
X-JondaX-Manual-Review-Count: 0

{
  "resourceType": "Bundle",
  "type": "collection",
  "id": "e3bfec7c-e4e7-5735-97e2-76ebfe9ea081",
  "entry": [
    {
      "fullUrl": "urn:uuid:29cc71ae-5f55-5565-b326-1f79673db842",
      "resource": {
        "resourceType": "Organization",
        "id": "29cc71ae-5f55-5565-b326-1f79673db842",
        "identifier": [
          {
            "system": "https://jonda.health/identifiers/orgs",
            "value": "jonda-health"
          }
        ],
        "name": "Jonda Health"
      }
    },
    {
      "fullUrl": "urn:uuid:3ba008a8-c1f4-5477-bb42-0650b4919d6c",
      "resource": {
        "resourceType": "Patient",
        "id": "3ba008a8-c1f4-5477-bb42-0650b4919d6c",
        "managingOrganization": {
          "reference": "urn:uuid:29cc71ae-5f55-5565-b326-1f79673db842"
        }
      }
    },
    {
      "fullUrl": "urn:uuid:72a029b1-e791-5902-b910-89fa8f645144",
      "resource": {
        "resourceType": "DiagnosticReport",
        "id": "72a029b1-e791-5902-b910-89fa8f645144",
        "status": "final",
        "category": [
          {
            "coding": [
              {
                "system": "http://terminology.hl7.org/CodeSystem/v2-0074",
                "code": "LAB",
                "display": "Laboratory"
              }
            ],
            "text": "Laboratory"
          }
        ],
        "code": {
          "coding": [
            {
              "system": "http://loinc.org",
              "code": "11502-2",
              "display": "Laboratory report"
            }
          ],
          "text": "Laboratory Report"
        },
        "subject": {
          "reference": "urn:uuid:3ba008a8-c1f4-5477-bb42-0650b4919d6c"
        },
        "effectiveDateTime": "2026-04-23T00:00:00.000Z",
        "performer": [
          {
            "reference": "urn:uuid:29cc71ae-5f55-5565-b326-1f79673db842",
            "display": "Jonda Health"
          }
        ],
        "result": [
          { "reference": "urn:uuid:f5864374-eeb9-4c01-935b-5028b7d7fdd7" }
        ]
      }
    },
    {
      "fullUrl": "urn:uuid:f5864374-eeb9-4c01-935b-5028b7d7fdd7",
      "resource": {
        "resourceType": "Observation",
        "id": "f5864374-eeb9-4c01-935b-5028b7d7fdd7",
        "status": "final",
        "identifier": [
          {
            "system": "https://jonda.health/identifiers/observations",
            "value": "report-484-test-1"
          }
        ],
        "category": [
          {
            "coding": [
              {
                "system": "http://terminology.hl7.org/CodeSystem/observation-category",
                "code": "laboratory",
                "display": "Laboratory"
              }
            ],
            "text": "Laboratory"
          }
        ],
        "code": {
          "coding": [
            {
              "system": "http://loinc.org",
              "code": "15074-8",
              "display": "Glucose Fasting"
            }
          ],
          "text": "Glucose Fasting"
        },
        "subject": {
          "reference": "urn:uuid:3ba008a8-c1f4-5477-bb42-0650b4919d6c"
        },
        "effectiveDateTime": "2026-04-23T00:00:00.000Z",
        "valueQuantity": {
          "value": 5,
          "unit": "mmol/l"
        },
        "referenceRange": [
          {
            "low": { "value": 4.11, "unit": "mmol/l" },
            "high": { "value": 6.05, "unit": "mmol/l" },
            "text": "4.11-6.05"
          }
        ]
      }
    }
  ]
}

Metadata headers reference

HeaderTypeDescription
X-JondaX-Customer-IdintegerYour account identifier
X-JondaX-Upload-IdstringUUID of the upload
X-JondaX-File-NamestringOriginal uploaded filename
X-JondaX-Transaction-IdintegerInternal transaction identifier
X-JondaX-Output-FormatstringAlways FHIR_JSON for this format
X-JondaX-Total-TestsintegerTotal number of biomarkers in this result
X-JondaX-Qa-Passed-CountintegerNumber of biomarkers that passed automated quality checks
X-JondaX-Manual-Review-CountintegerNumber of biomarkers that required manual review

FHIR XML — File Upload

Content-Type: multipart/form-data. File part content-type: application/fhir+xml. File part name: file. Filename uses the pattern report-{transactionId}-{timestamp}.xml.

FHIR version: R4

Structure mirrors the FHIR JSON bundle exactly — a collection Bundle containing Organization, Patient, DiagnosticReport, and one Observation per biomarker, serialized as XML. All IDs use deterministic UUIDv5.

POST /api/fhir/xml/results HTTP/1.1
Host: api.example.com
Content-Type: multipart/form-data;
[api-header]: [api-key]

------------------------------
Content-Disposition: form-data; name="metadata"
Content-Type: application/json

{
  "customerId": 1,
  "uploadId": "adbd198e-75c5-4a4b-9285-b3debb538091",
  "fileName": "report-478-1783389535381.xml",
  "transactionId": 478,
  "outputFormat": "FHIR_XML",
  "totalTests": 2,
  "qaPassed": 2,
  "manualReview": 0
}
------------------------------
Content-Disposition: form-data; name="file"; filename="report-478-1783389535381.xml"
Content-Type: application/fhir+xml

<?xml version="1.0" encoding="UTF-8"?>
<Bundle xmlns="http://hl7.org/fhir">
  <id value="e3bfec7c-e4e7-5735-97e2-76ebfe9ea081"/>
  <type value="collection"/>
  <entry>
    <fullUrl value="urn:uuid:29cc71ae-5f55-5565-b326-1f79673db842"/>
    <resource>
      <Organization>
        <id value="29cc71ae-5f55-5565-b326-1f79673db842"/>
        <identifier>
          <system value="https://jonda.health/identifiers/orgs"/>
          <value value="jonda-health"/>
        </identifier>
        <name value="Jonda Health"/>
      </Organization>
    </resource>
  </entry>
  <entry>
    <fullUrl value="urn:uuid:3ba008a8-c1f4-5477-bb42-0650b4919d6c"/>
    <resource>
      <Patient>
        <id value="3ba008a8-c1f4-5477-bb42-0650b4919d6c"/>
        <managingOrganization>
          <reference value="urn:uuid:29cc71ae-5f55-5565-b326-1f79673db842"/>
        </managingOrganization>
      </Patient>
    </resource>
  </entry>
  <entry>
    <fullUrl value="urn:uuid:72a029b1-e791-5902-b910-89fa8f645144"/>
    <resource>
      <DiagnosticReport>
        <id value="72a029b1-e791-5902-b910-89fa8f645144"/>
        <status value="final"/>
        <category>
          <coding>
            <system value="http://terminology.hl7.org/CodeSystem/v2-0074"/>
            <code value="LAB"/>
            <display value="Laboratory"/>
          </coding>
          <text value="Laboratory"/>
        </category>
        <code>
          <coding>
            <system value="http://loinc.org"/>
            <code value="11502-2"/>
            <display value="Laboratory report"/>
          </coding>
          <text value="Laboratory Report"/>
        </code>
        <subject>
          <reference value="urn:uuid:3ba008a8-c1f4-5477-bb42-0650b4919d6c"/>
        </subject>
        <effectiveDateTime value="2024-03-27T00:00:00.000Z"/>
        <performer>
          <reference value="urn:uuid:29cc71ae-5f55-5565-b326-1f79673db842"/>
          <display value="Jonda Health"/>
        </performer>
        <result>
          <reference value="urn:uuid:cafb97f0-2e91-56ac-921a-d35d5311c77b"/>
        </result>
        <result>
          <reference value="urn:uuid:05cc70ae-9be6-5f8f-a7d4-1fd11d410a87"/>
        </result>
      </DiagnosticReport>
    </resource>
  </entry>
  <entry>
    <fullUrl value="urn:uuid:cafb97f0-2e91-56ac-921a-d35d5311c77b"/>
    <resource>
      <Observation>
        <id value="cafb97f0-2e91-56ac-921a-d35d5311c77b"/>
        <status value="final"/>
        <identifier>
          <system value="https://jonda.health/identifiers/observations"/>
          <value value="report-478-test-1"/>
        </identifier>
        <category>
          <coding>
            <system value="http://terminology.hl7.org/CodeSystem/observation-category"/>
            <code value="laboratory"/>
            <display value="Laboratory"/>
          </coding>
          <text value="Laboratory"/>
        </category>
        <code>
          <coding>
            <display value="Color"/>
          </coding>
          <text value="Color"/>
        </code>
        <subject>
          <reference value="urn:uuid:3ba008a8-c1f4-5477-bb42-0650b4919d6c"/>
        </subject>
        <effectiveDateTime value="2024-03-27T00:00:00.000Z"/>
        <valueString value="YELLOW"/>
      </Observation>
    </resource>
  </entry>
  <entry>
    <fullUrl value="urn:uuid:05cc70ae-9be6-5f8f-a7d4-1fd11d410a87"/>
    <resource>
      <Observation>
        <id value="05cc70ae-9be6-5f8f-a7d4-1fd11d410a87"/>
        <status value="final"/>
        <identifier>
          <system value="https://jonda.health/identifiers/observations"/>
          <value value="report-478-test-2"/>
        </identifier>
        <category>
          <coding>
            <system value="http://terminology.hl7.org/CodeSystem/observation-category"/>
            <code value="laboratory"/>
            <display value="Laboratory"/>
          </coding>
          <text value="Laboratory"/>
        </category>
        <code>
          <coding>
            <system value="http://loinc.org"/>
            <code value="2744-1"/>
            <display value="pH"/>
          </coding>
          <text value="pH"/>
        </code>
        <subject>
          <reference value="urn:uuid:3ba008a8-c1f4-5477-bb42-0650b4919d6c"/>
        </subject>
        <effectiveDateTime value="2024-03-27T00:00:00.000Z"/>
        <valueQuantity>
          <value value="6"/>
        </valueQuantity>
      </Observation>
    </resource>
  </entry>
</Bundle>
------------------------------

CSV — File Upload

Content-Type: multipart/form-data. File part content-type: text/csv. Filename uses the pattern report-{transactionId}-{timestamp}.csv.

The file is UTF-8 encoded with a BOM (\uFEFF) prepended so Excel renders special characters correctly. Line endings are CRLF (\r\n) per RFC 4180.

Column order

Date, LOINC-Code, Biomarker-Name, Result, Low-Ref-Range, High-Ref-Range, Unit-of-measurement, Comment

Columns are identical to the JSON format fields — one biomarker per row, with a header row as the first line.

CSV field reference

ColumnDescription
DateTest date (YYYY-MM-DD). Can be empty
LOINC-CodeStandard LOINC code (e.g. 6690-2). Can be empty
Biomarker-NameStandardized (transformed) biomarker name
ResultTest result value — translated/converted value when available, otherwise original
Low-Ref-RangeLower reference range — translated value when available, otherwise original. Can be empty
High-Ref-RangeUpper reference range — translated value when available, otherwise original. Can be empty
Unit-of-measurementMeasurement unit — transformed unit when available, otherwise original. Can be empty
CommentAdditional notes. Can be empty

Values containing commas, quotes, or newlines are wrapped in double quotes per RFC 4180. Embedded double quotes are doubled ("").

Example

POST /api/results HTTP/1.1
Host: api.example.com
Content-Type: multipart/form-data;
[api-header]: [api-key]

------------------------------
Content-Disposition: form-data; name="metadata"
Content-Type: application/json

{
  "customerId": 1,
  "uploadId": "16227c8c-aa20-443d-ad50-528034f54d7a",
  "fileName": "E20UNMDMCB_96dpi_1.png",
  "transactionId": 484,
  "outputFormat": "CSV",
  "totalTests": 10,
  "qaPassed": 10,
  "manualReview": 0
}
------------------------------
Content-Disposition: form-data; name="file"; filename="report-487-1783327368748.csv"
Content-Type: text/csv

Date,LOINC-Code,Biomarker-Name,Result,Low-Ref-Range,High-Ref-Range,Unit-of-measurement,Comment
2022-03-16,6690-2,WBC,6.30,4.00,10.00,10^3/uL,
2022-03-16,718-7,HGB,14.5,12.00,15.50,g/dL,
2022-03-16,777-3,PLT,250,150.00,400.00,10^3/uL,
------------------------------

The CSV file always includes the header row as the first line. Empty values appear as empty fields between delimiters (e.g. ,,).


Parquet — File Upload

Content-Type: multipart/form-data. File part content-type: application/octet-stream. Filename uses the pattern report-{transactionId}-{timestamp}.parquet.

The Parquet file contains the same columns as the CSV format in the same order. All columns are typed as UTF8 (string) in the Parquet schema.

Schema

ColumnParquet typeDescription
DateUTF8Test date (YYYY-MM-DD). Can be empty string
LOINC-CodeUTF8Standard LOINC code (e.g. 6690-2). Can be empty string
Biomarker-NameUTF8Standardized (transformed) biomarker name
ResultUTF8Test result value
Low-Ref-RangeUTF8Lower reference range. Can be empty string
High-Ref-RangeUTF8Upper reference range. Can be empty string
Unit-of-measurementUTF8Measurement unit. Can be empty string
CommentUTF8Additional notes. Can be empty string

Example request

POST /api/results HTTP/1.1
Host: api.example.com
Content-Type: multipart/form-data;
[api-header]: [api-key]

------------------------------
Content-Disposition: form-data; name="metadata"
Content-Type: application/json

{
  "customerId": 1,
  "uploadId": "16227c8c-aa20-443d-ad50-528034f54d7a",
  "fileName": "E20UNMDMCB_96dpi_1.png",
  "transactionId": 484,
  "outputFormat": "PARQUET",
  "totalTests": 100,
  "qaPassed": 100,
  "manualReview": 0
}
------------------------------
Content-Disposition: form-data; name="file"; filename="report-708-1783326991576.parquet"
Content-Type: application/octet-stream

(binary Parquet data)
------------------------------

Reading Parquet in common languages

# Python — pandas
import pandas as pd
df = pd.read_parquet("report-231-1777433560479.parquet")
print(df)
// Node.js — @dsnp/parquetjs
const { ParquetReader } = require('@dsnp/parquetjs');
const reader = await ParquetReader.openBuffer(buffer);
const cursor = reader.getCursor();
let record;
while ((record = await cursor.next()) !== null) {
  console.log(record);
}
await reader.close();

Parquet is recommended for large result sets or data pipeline integrations. For simpler integrations, CSV carries the same data with no binary parsing required.