Skip to main content
Every code uses real reference datasets — ICD-10, LOINC, NDC, SNOMED CT, CVX, RxNorm, HCPCS — so generated messages pass downstream validation the same way production data would.

Supported Standards

HL7 v2 and FHIR R4 generation are free. NCPDP SCRIPT generation is closed by default: it requires confirming NCPDP membership and installing the licensed standards package (pidgeon data install ncpdp-script --accept-license). Until then the CLI and apps report NCPDP as license-required rather than emitting a message.

HL7 v2 Coverage

Post’s HL7 v2 parsing and generation is structurally broad, but the number that matters is what’s proven end-to-end: generate → validate → round-trip against the published spec. That verified set is 279 HL7 message-type × version combinations — 38 message types, each across some or all of HL7 v2.3 through v2.8 — from the engine’s own runtime capability matrix, not a hand-maintained table:
ADT^A01 Admission, ADT^A02 Transfer, ADT^A03 Discharge, ADT^A04 Registration, ADT^A05 Pre-admit, ADT^A08 Update patient info, ADT^A11 Cancel admit, ADT^A12 Cancel transfer, ADT^A13 Cancel discharge
ORM^O01 General order, ORU^R01 Observation result, OML^O21 Lab order (multi-order), RSP^K11/K21/K22 Query responses, QBP^Q11/Q21/Q22 Query by parameter
RDE^O11 Pharmacy/treatment encoded order, RDE^O25 Pharmacy/treatment refill authorization, RGV^O15 Pharmacy/treatment give, RAS^O17 Pharmacy/treatment administration
SIU^S12 New appointment, SIU^S13 Request rescheduling, SIU^S14 Modification notification, SIU^S15 Cancellation notification, SIU^S17 Deletion notification
MDM^T02 Original with content, MDM^T04/T06/T08/T10 document addenda, status changes, and replacements
BAR^P01 Add patient account, BAR^P02 Purge patient account, BAR^P05 Update account, DFT^P03 Post detail financial transaction
VXU^V04 Unsolicited vaccination update
ACK general acknowledgment
Shell-safe syntax is supported: ADT-A01, ADT_A01, and ADT.A01 all work as alternatives to ADT^A01.
This list is the current spec-validated set, not a ceiling — Post’s parser handles a broader range of HL7 v2 structurally. Run pidgeon capabilities for the live matrix rather than trusting this page to stay current.

FHIR R4 Resources

24 resource types at spec-validated level, spanning clinical, administrative, and financial domains:
Patient, RelatedPerson
Observation, DiagnosticReport, Condition, AllergyIntolerance, Immunization
Medication, MedicationRequest, MedicationAdministration, MedicationDispense, Procedure, ServiceRequest
Encounter, CareTeam, CarePlan
Organization, Location, Practitioner, PractitionerRole
Bundle, DocumentReference
Coverage, Claim

NCPDP SCRIPT 2017071

NCPDP SCRIPT generation is closed by default and license-gated. NCPDP’s SCRIPT XSDs are member-only, so the standards material is not shipped: confirm your NCPDP membership, then run pidgeon data install ncpdp-script --accept-license to enable generation. Until the package is installed, NCPDP is reported as license-required.
Once enabled, the SCRIPT transaction set spans the prescription workflow with XML serialization and structural validation:
NewRx, RxChangeRequest, RxChangeResponse, RefillRequest, RefillResponse, CancelRx, CancelRxResponse
RxFill, RxHistoryRequest, RxHistoryResponse, ResupplyRequest, ResupplyResponse
PriorAuth, PriorAuthResponse, Predetermination, Eligibility, BenefitsCoordination
Formulary, DUR, DrugAlert, Interaction, Allergy, ClinicalInfo, Verify, Status, Error, Acknowledgment, and more
Run pidgeon --output-format json capabilities --standard ncpdp for the exact enabled set on your machine — it reports the license-required state until the ncpdp-script package is installed.

Generation Modes

Deterministic generation using reference datasets (ICD-10, LOINC, NDC, SNOMED). Fast and reproducible. Available to all users.
Uses a local AI model for enhanced clinical narratives and realistic note text.
Cloud AI provider for highest quality clinical narratives. Requires BYOK configuration.

Reproducibility

Use --seed for deterministic output. The same seed always produces the same message, making tests repeatable across machines and CI runs:

Vendor-Specific Generation

See Vendor Profiles for creating and managing vendor configurations.

Output Options