hl7apy – Python HL7 v2 Library

1.3.5 · maintenance · verified Tue Mar 17

Python library for parsing, creating, and manipulating HL7 v2.x messages. Supports HL7 versions 2.1 through 2.7, provides both high-level and low-level APIs for message construction, validation against HL7 schemas, and MLLP (Minimal Lower Layer Protocol) transport support.

Warnings

Install

Imports

Quickstart

Create and parse HL7 v2.5 messages using hl7apy.

from hl7apy.core import Message
from hl7apy.parser import parse_message

# Create a new ADT^A01 message
m = Message('ADT_A01')
m.msh.msh_9.msh_9_1 = 'ADT'
m.msh.msh_9.msh_9_2 = 'A01'
m.msh.msh_10 = 'MSG00001'
m.msh.msh_11.msh_11_1 = 'P'
m.msh.msh_12 = '2.5'
print(m.to_er7())

# Parse an existing HL7 message
raw = 'MSH|^~\\&|SENDING|FACILITY|RECEIVING|FACILITY|20230101120000||ADT^A01|MSG00001|P|2.5\rPID|||12345||Doe^John'
parsed = parse_message(raw)
print(parsed.pid.pid_5.pid_5_1.value)

view raw JSON →