API Reference

Integration endpoints for connecting external systems to Path.systems. This reference covers the REST webhook endpoint, HL7 MLLP connection details, and CSV billing export.

REST Webhook Inbound Endpoint

External systems can push data into Path.systems by posting JSON payloads to your organization's inbound webhook endpoint.

Endpoint

URL
POST https://api.path.systems/api/webhook/inbound/:orgId

Authentication

Requests must include a valid API key in the Authorization header. Generate API keys in Settings → Integrations when configuring a webhook integration.

Headers
Authorization: Bearer <integration-api-key>
Content-Type: application/json

Request Body

The request body should be a JSON object. The expected structure depends on the type of data being sent (results, orders, etc.). Contact Path.systems support for payload format documentation specific to your integration use case.

Example Request
POST /api/webhook/inbound/org_abc123
Authorization: Bearer wh_key_xxxxxxxx
Content-Type: application/json

{
  "type": "result",
  "lab_reference": "LR-00142",
  "patient_id": "8801015800082",
  "tests": [
    {
      "code": "FBC",
      "name": "Full Blood Count",
      "results": [
        {
          "component": "WBC",
          "value": "8.4",
          "unit": "10^3/uL",
          "reference_range": "4.0-11.0",
          "flag": "N"
        }
      ]
    }
  ]
}

Response

StatusDescription
200 OKPayload received and queued for processing
401 UnauthorizedMissing or invalid API key
400 Bad RequestMalformed JSON or missing required fields
404 Not FoundOrganization ID not found
500 Internal Server ErrorUnexpected server error — retry the request
Success Response
{
  "status": "ok",
  "message_id": "msg_01HXYZ..."
}

HL7 MLLP Connection

Path.systems operates an MLLP server for receiving HL7 v2.x messages (typically ORU^R01 results) and can send HL7 messages (typically ORM^O01 orders) to external MLLP listeners.

Inbound Connection Details

Provide these details to systems that need to send HL7 messages to Path.systems:

ParameterValue
Hosthl7.path.systems
Port2575
ProtocolMLLP
TLSSupported (optional)
RoutingMessages are routed by the Receiving Facility in the MSH segment

IP Allowlist

When the IP allowlist is enabled for your organization, only connections from allowlisted IP addresses will be accepted. Configure this in Settings → Integrations.

Outbound Connection

To send HL7 orders to an external system, configure an outbound HL7 MLLP integration in Settings → Integrations with the remote host, port, and TLS settings. Path.systems will parse the ACK response (AA = accepted, AE = error, AR = rejected) and update the message status accordingly.

Supported Message Types

Message TypeDirectionDescription
ORM^O01OutboundOrder message — sent to reference labs when a lab request is created
ORU^R01InboundUnsolicited result — received from reference labs or instruments
ACKBothAcknowledgement — sent/received to confirm message receipt

CSV Billing Export

Billing data can be exported as CSV from the Billing section of the application. The export includes all billing-relevant fields for the selected requests.

How to Export

Navigate to Billing, filter requests by date range, status, or payment type, then click Export CSV to download the file.

Included Fields

FieldDescriptionExample
patient_namePatient full nameJohn Smith
patient_idSA ID number8801015800082
account_numberPatient account numberMAN1SG5
medical_aidMedical aid scheme nameDiscovery Health
medical_aid_numberMembership number12345678
medical_aid_planPlan / optionKeyCare Plus
referring_doctorReferring doctor nameDr A. Patel
practice_numberHPCSA practice numberMP0123456
icd10_codeICD-10 diagnosis codeD50.9
tariff_codeGEMS tariff code3755
test_descriptionTest nameFull Blood Count
amountAmount in Rands350.00
service_dateDate of specimen collection2026-03-21
lab_referenceLab reference numberLR-00142
payment_typeCash or Medical Aidmedical_aid
statusRequest statuscompleted

A JSON billing payload with the same field set can also be generated for API-based billing integrations. See the Integrations documentation for configuration details.