MLLP operations that work like the built-in HTTP ones
MLLP (Minimal Lower Layer Protocol) is how most HL7 v2 systems exchange messages: a TCP connection, each message wrapped in start and end block characters, and an acknowledgement (ACK) back for every message. The connector gives Logic Apps a trigger and actions for it that mirror the HTTP operations you already know.
| Operation | Operation ID | What it does | HTTP equivalent |
|---|---|---|---|
| When a message is received | receiveMessage | Trigger. Listens on a TCP port and starts a run for each HL7 message or batch. | When an HTTP request is received |
| Send acknowledgement | sendAcknowledgement | Returns the ACK on the sender's open connection (Workflow acknowledgement mode). | Response |
| Send message | sendMessage | Connects, sends, waits for the ACK and returns it. | HTTP |
| Create acknowledgement | createAcknowledgement | Builds an ACK (or batch ACK) for a message without sending it. | — |
Pair it with the HL7 v2 Codec to decode received messages into XML or JSON and to encode outgoing ones. Both connectors can sit in the same Logic App.
Choose a deployment model
The connector ships in two forms that share one MLLP engine. Sending works the same in both. What differs is where the listening TCP port lives.
| MLLP gateway | Built-in trigger | |
|---|---|---|
| Works with | Any Logic App: Standard on App Service (WS1–WS3), Consumption, hybrid | Logic Apps Standard where the runtime can accept inbound TCP: hybrid deployment, your own container, or local development |
| How messages arrive | A small container listens for MLLP and posts each message as JSON to the workflow's “When an HTTP request is received” trigger | The “When a message is received” trigger listens inside the Logic Apps runtime |
| Where it runs | Azure Container Apps (Bicep provided), AKS, or a VM next to your HL7 systems | In the Logic App |
| Sending | Standard: the built-in Send message action. Consumption: a custom connector over the gateway's send API | The built-in Send message action |
MLLP needs raw TCP ports, and Logic Apps on App Service only accept HTTP and HTTPS on ports 80 and 443. That's why Microsoft's own MLLP connector, in preview, runs only on the Logic Apps hybrid deployment model, on a Kubernetes cluster you operate. The gateway receives MLLP elsewhere and turns each message into an HTTPS call, so your Logic Apps stay on the plan they use today. The connector uses its own service provider ID, so it can coexist with Microsoft's.
Not sure? If your Logic App runs on a Workflow Standard plan (WS1–WS3) or Consumption, start with the gateway quick start. If it runs on hybrid deployment or in your own container, start with the built-in quick start.