---
schema_version: "1"
id: 836ca23287cc06f86ccee8ce8bfe92e018bee3e9ff9710d70f24d3879d0804f8
title: HL7 EDI Connector 4.3 Reference
collection: mulesoft
version: current
locale: en-us
portal_url: https://docs.salesforce.com/mulesoft/current/en-us/hl7-connector/4.3/hl7-connector-reference.md
canonical_url: https://docs.mulesoft.com/hl7-connector/4.3/hl7-connector-reference
source_site: docs.mulesoft.com
content_type: documentation
content_hash: 5f0e90fc2eca36a2e9b0e3fa3a7009e5d1de8b5ad37f29afb90a33b114da1964
description: MuleSoft Documentation Site
release: "4.3"
latest: false
---
---
product: HL7 EDI Connector
version: 4.3
---

# HL7 EDI Connector 4.3 Reference

> For the full documentation index, see: https://docs.mulesoft.com/llms.txt

## Configurations

---

### Config

#### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Name</p></td><td><p>String</p></td><td><p>Name for this configuration. Connectors reference the configuration with this name.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Connection</p></td><td><div><div><p>Connection</p></div></div></td><td><p>Connection type for this configuration.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Expiration Policy</p></td><td><div><div><p>ExpirationPolicy</p></div></div></td><td><p>Configures the minimum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration. This does not mean that the instance expires at the exact moment that it becomes eligible. Mule purges the instances when appropriate.</p></td><td></td><td></td></tr><tr><td><p>Mule application namespace ID (MSH-3-1/MSH-5-1)</p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Application namespace ID for Mule in the message header (MSH segment). If set, this value affects both receive and send message handling:</p></div><div><ul><li><p>On the receive side, the MSH receiving application namespace ID must match this value.</p></li><li><p>On the send side, the connector uses this value as the MSH sending application namespace ID unless the send configuration or message parameters override it.</p></li></ul></div></div></td><td></td><td></td></tr><tr><td><p>Mule Application universal ID (MSH-3-2/MSH-5-2)</p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Application universal ID for Mule in the message header (MSH segment). If set, this value affects both receive and send message handling:</p></div><div><ul><li><p>On the receive side, the MSH receiving application universal ID must match this value.</p></li><li><p>On the send side, the connector uses this value as the MSH sending application universal ID unless it is overridden in the send configuration or message parameters.</p></li></ul></div></div></td><td></td><td></td></tr><tr><td><p>Mule Application universal ID Type (MSH-3-3/MSH-5-3)</p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Application universal ID type for Mule in the message header (MSH segment). If set, this value affects both receive and send message handling:</p></div><div><ul><li><p>On the receive side, the MSH receiving application universal ID type must match this value.</p></li><li><p>On the send side, the connector uses this value as the MSH sending application universal ID type unless it is overridden in the send configuration or message parameters.</p></li></ul></div></div></td><td></td><td></td></tr><tr><td><p>Partner Application Namespace ID (MSH-3-1/MSH-5-1)</p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Application namespace ID for the partner in the message header (MSH segment). If set, this value affects both receive and send message handling:</p></div><div><ul><li><p>On the receive side, the MSH sending application namespace ID must match this value.</p></li><li><p>On the send side, the connector uses this value as the MSH sending application namespace ID unless it is overridden in the send configuration or message parameters.</p></li></ul></div></div></td><td></td><td></td></tr><tr><td><p>Partner Application universal ID (MSH-3-2/MSH-5-2)</p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Application universal ID for the partner in the message header (MSH segment). If set, this value affects both receive and send message handling:</p></div><div><ul><li><p>On the receive side, the MSH sending application universal ID must match this value.</p></li><li><p>On the send side, the connector uses this value as the MSH sending application universal ID unless it is overridden in the send configuration or message parameters.</p></li></ul></div></div></td><td></td><td></td></tr><tr><td><p>Partner Application universal ID Type (MSH-3-3/MSH-5-3)</p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Application universal ID type for the partner in the message header (MSH segment). If set, this value affects both receive and send message handling:</p></div><div><ul><li><p>On the receive side, the MSH sending application universal ID type must match this value.</p></li><li><p>On the send side, the connector uses this value as the MSH sending application universal ID type unless it is overridden in the send configuration or message parameters.</p></li></ul></div></div></td><td></td><td></td></tr><tr><td><p>Schema definitions</p></td><td><div><div><p>Array of String</p></div></div></td><td><p>List of schema paths for the connector to use. The paths can be filesystem paths or classpaths.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Event and message to message structure map path</p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Path to a YAML file that defines the mapping of the event code and message code to the message structure ID:</p></div><div><ul><li><p>If working with multiple message structures, this mapping definition supports using MSH-9-1 and MSH-9-2 to determine the message structure when MSH-9-3 is not present in a message.</p></li><li><p>If only a single message structure is present in the schemas for which this message structure is used, the connector uses the message structure to parse all messages.</p></li><li><p>If MSH-9-3 is present in a message, the connector ignores the MSH-9-1 and MSH-9-2 values.</p></li></ul></div></div></td><td></td><td></td></tr><tr><td><p>HL7 Message character encoding</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>ASCII</p></li><li><p>BIG_5</p></li><li><p>EUC_KR</p></li><li><p>EUC_TW</p></li><li><p>GB_18030</p></li><li><p>ISO_8859_1</p></li><li><p>ISO_8859_15</p></li><li><p>ISO_8859_2</p></li><li><p>ISO_8859_3</p></li><li><p>ISO_8859_4</p></li><li><p>ISO_8859_5</p></li><li><p>ISO_8859_6</p></li><li><p>ISO_8859_7</p></li><li><p>ISO_8859_8</p></li><li><p>ISO_8859_9</p></li><li><p>JIS0208</p></li><li><p>JIS_X0201</p></li><li><p>JIS_X0212</p></li><li><p>UTF_16</p></li><li><p>UTF_32</p></li><li><p>UTF_8</p></li></ul></div></div></td><td><p>Character encoding for HL7 messages. This is the default for receive messages when MSH-18 is not present and for send messages when MSH-18 is not present in the send message data.</p></td><td><p>ASCII</p></td><td></td></tr><tr><td><p>Disable numeric prefixes for data keys</p></td><td><div><div><p>Boolean</p></div></div></td><td><p>Uses segment and group IDs directly as keys in the data, rather than prefixing the segment and group IDs with position values.</p></td><td><p>true</p></td><td></td></tr><tr><td><p>Required processing ID</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>DEBUGGING</p></li><li><p>PRODUCTION</p></li><li><p>TRAINING</p></li></ul></div></div></td><td><p>Value to match the MSH-11-1 processing ID. If set, only messages with the specified processing ID are accepted for processing. Messages with other processing ID values or with no processing ID specified are rejected with an exception.</p></td><td></td><td></td></tr><tr><td><p>Pattern for generic extension segment names</p></td><td><div><div><p>String</p></div></div></td><td><p>Java regular pattern for segment names to treat as generic extension segments. If specified, segment names matching this pattern are allowed anywhere in the message and are converted to maps of string values for elements and composites.</p></td><td></td><td></td></tr><tr><td><p>Fail when required value missing</p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>Whether to reject a message if a required value is missing:</p></div><div><ul><li><p>If <code>true</code>, a message with this error is rejected.</p></li><li><p>If <code>false</code>, the value is ignored and the message is accepted.</p></li></ul></div><div><p>In either case, the error is logged and reported in an ERR segment.</p></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>Fail when value length outside allowed range</p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>Whether to reject a message if the receive value length is outside of allowed the range:</p></div><div><ul><li><p>If <code>true</code>, a message with this error is rejected.</p></li><li><p>If <code>false</code>, the value is used and the message is accepted.</p></li></ul></div><div><p>In either case, the error is logged and reported in an ERR segment.</p></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>Fail when invalid character in value</p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>Whether to reject a message if the receive value contains an invalid character:</p></div><div><ul><li><p>If <code>true</code>, a message with this error is rejected.</p></li><li><p>If <code>false</code>, the character is either passed through or substituted, and the message is accepted.</p></li></ul></div><div><p>In either case the error is reported in an ERR segment.</p></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>Fail when too many repeats of value</p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>Whether to reject a message if the receive value is repeated too many times:</p></div><div><ul><li><p>If <code>true</code>, a message with this error is rejected.</p></li><li><p>If <code>false</code>, the value is accepted and the message is accepted.</p></li></ul></div><div><p>In either case the error is reported in an ERR segment.</p></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>Fail when unknown segment in message</p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>Whether to reject a message if it contains an unknown segment:</p></div><div><ul><li><p>If <code>true</code>, a message with this error is rejected.</p></li><li><p>If <code>false</code>, the segment is ignored and the message is accepted.</p></li></ul></div><div><p>In either case the error is reported in an ERR segment.</p></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>Fail when segment out of order in message set</p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>Whether to reject a message when a segment in a message set is out of order:</p></div><div><ul><li><p>If <code>true</code>, a message with this error is rejected.</p></li><li><p>If <code>false</code> and the segment can be reordered, the message is accepted.</p></li></ul></div><div><p>In either case the error is reported in an ERR segment.</p></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>Fail when unused segment included in message set</p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>Whether to reject a message when a segment marked as unused is included in a message set:</p></div><div><ul><li><p>If <code>true</code>, a message with this error is rejected.</p></li><li><p>If <code>false</code>, the message is accepted and the unused segment is ignored.</p></li></ul></div><div><p>In either case the error is reported in an ERR segment.</p></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>Fail when too many repeats of segment</p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>Whether to reject a message when a segment occurs too many times in a message set:</p></div><div><ul><li><p>If <code>true</code>, a message with this error is rejected.</p></li><li><p>If <code>false</code>, the message is accepted.</p></li></ul></div><div><p>In either case, the error is reported in an ERR segment.</p></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>HL7 Message segment terminator</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>CR</p></li><li><p>LF</p></li></ul></div></div></td><td><p>Value for the segment terminator.</p></td><td><p>CR</p></td><td></td></tr><tr><td><p>Handle empty arrays for fields in message</p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>When the incoming payload contains empty arrays and the parameter is set to <code>true</code>, the connector includes the field separation character for optional repeatable fields.</p></div></div></td><td><p>false</p></td><td></td></tr></tbody></table>

## Connection Type

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Reconnection</p></td><td><div><div><p><a href="#reconnection">Reconnection</a></p></div></div></td><td><p>Configures a reconnection strategy to use when a connector operation fails to connect to an external server.</p></td><td></td><td></td></tr></tbody></table>

## Operations

- [Read](#read)

- [Write](#write)

### Read

`<hl7:read>`

#### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>Name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Read Content</p></td><td><div><div><p>Binary</p></div></div></td><td><p>Input payload.</p></td><td><p><code>#[payload]</code></p></td><td></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that stores the operation’s output.</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>Expression that evaluates the operation’s output. The outcome of the expression is stored in the <strong>Target Variable</strong> field.</p></td><td><p><code>#[payload]</code></p></td><td></td></tr><tr><td><p>Reconnection Strategy</p></td><td><div><div><ul><li><p>None</p></li><li><p><a href="#standard">Standard</a></p></li><li><p><a href="#forever">Forever</a></p></li></ul></div></div></td><td><p>Reconnection strategy to use.</p></td><td></td><td></td></tr></tbody></table>

#### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><div><div><p>Object</p></div></div></td></tr></tbody></table>

#### For Configurations

- config

#### Throws

- HL7:RETRY\_EXHAUSTED

- HL7:UNKNOWN

- HL7:PARSE

- HL7:SCHEMA

- HL7:CONNECTIVITY

- HL7:WRITE

### Write

`<hl7:write>`

#### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>Name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Write Content</p></td><td><div><div><p>Object</p></div></div></td><td><p>Output payload.</p></td><td><p><code>#[payload]</code></p></td><td></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#repeatable-in-memory-stream">Repeatable In Memory Stream</a></p></li><li><p><a href="#repeatable-file-store-stream">Repeatable File Store Stream</a></p></li><li><p><a href="#non-repeatable-stream">Non-Repeatable Stream</a></p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>The name of a variable that stores the output of the operation.</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>Expression that evaluates the operation’s output. The outcome of the expression is stored in the <strong>Target Variable</strong> field.</p></td><td><p><code>#[payload]</code></p></td><td></td></tr><tr><td><p>Reconnection Strategy</p></td><td><div><div><ul><li><p>None</p></li><li><p><a href="#standard">Standard</a></p></li><li><p><a href="#forever">Forever</a></p></li></ul></div></div></td><td><p>Reconnection strategy to use.</p></td><td></td><td></td></tr></tbody></table>

#### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><div><div><p>Binary</p></div></div></td></tr></tbody></table>

#### For Configurations

- config

#### Throws

- HL7:RETRY\_EXHAUSTED

- HL7:UNKNOWN

- HL7:PARSE

- HL7:SCHEMA

- HL7:CONNECTIVITY

- HL7:WRITE

## Types

### Expiration Policy

Configures the maximum amount of time that a dynamic configuration instance can remain idle before
Mule considers it eligible for expiration.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Max Idle Time</p></td><td><div><div><p>Number</p></div></div></td><td><p>Maximum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration.</p></td><td></td><td></td></tr><tr><td><p>Time Unit</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>NANOSECONDS</p></li><li><p>MICROSECONDS</p></li><li><p>MILLISECONDS</p></li><li><p>SECONDS</p></li><li><p>MINUTES</p></li><li><p>HOURS</p></li><li><p>DAYS</p></li></ul></div></div></td><td><p>A time unit that qualifies the <strong>Max Idle Time</strong> field.</p></td><td></td><td></td></tr></tbody></table>

### Forever

Configures a forever reconnection strategy by which the connector operation attempts to reconnect at
a specified frequency for as long as the Mule app runs.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Frequency</p></td><td><p>Number</p></td><td><p>How often to attempt to reconnect, in milliseconds.</p></td><td></td><td></td></tr></tbody></table>

### Non-Repeatable Stream

Disables the repeatable stream functionality and uses non-repeatable streams to have lower
performance overhead, memory use, and cost.

### Reconnection

Configures reconnection options.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Fails deployment when test connection fails</p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>What to do if, when an app is deployed, a connectivity test does not pass after exhausting the associated reconnection strategy:</p></div><div><ul><li><p>true</p><div><p>Allow the deployment to fail.</p></div></li><li><p>false</p><div><p>Ignore the results of the connectivity test.</p></div></li></ul></div></div></td><td></td><td></td></tr><tr><td><p>Reconnection Strategy</p></td><td><div><div><ul><li><p>None</p></li><li><p><a href="#standard">Standard</a></p></li><li><p><a href="#forever">Forever</a></p></li></ul></div></div></td><td><p>Reconnection strategy to use.</p></td><td></td><td></td></tr></tbody></table>

### Repeatable File Store Stream

Configures the repeatable file store streaming strategy by which Mule keeps a portion of the stream
content in memory. If the stream content is larger than the configured buffer size, Mule backs up
the buffer’s content to disk and then clears the memory.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Max In Memory Size</p></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>Maximum amount of memory that the stream can use for data. If the amount of memory exceeds this value, Mule buffers the content to disk. To optimize performance:</p></div><div><ul><li><p>Configure a larger buffer size to avoid the number of times Mule needs to write the buffer on disk. This increases performance, but it also limits the number of concurrent requests your application can process, because it requires additional memory.</p></li><li><p>Configure a smaller buffer size to decrease memory load at the expense of response time.</p></li></ul></div></div></td><td></td><td></td></tr><tr><td><p>Buffer Unit</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>BYTE</p></li><li><p>KB</p></li><li><p>MB</p></li><li><p>GB</p></li></ul></div></div></td><td><p>Unit for the <strong>Max In Memory Size</strong> field.</p></td><td></td><td></td></tr></tbody></table>

### Repeatable In Memory Stream

Configures the in-memory streaming strategy by which the request fails if the data exceeds the
maximum buffer size. Always run performance tests to find the optimal buffer size for your specific
use case.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Initial Buffer Size</p></td><td><div><div><p>Number</p></div></div></td><td><p>Initial amount of memory to allocate to the data stream. If the streamed data exceeds this value, the buffer expands by the <strong>Buffer Size Increment</strong>, with an upper limit of the <strong>Max Buffer Size</strong> value.</p></td><td></td><td></td></tr><tr><td><p>Buffer Size Increment</p></td><td><div><div><p>Number</p></div></div></td><td><p>Amount by which the buffer size expands if it exceeds its initial size. Setting a value of <code>0</code> or lower specifies that the buffer can’t expand.</p></td><td></td><td></td></tr><tr><td><p>Max Buffer Size</p></td><td><div><div><p>Number</p></div></div></td><td><p>Maximum size of the buffer. If the buffer size exceeds this value, Mule raises a <code>STREAM_MAXIMUM_SIZE_EXCEEDED</code> error. A value of less than or equal to <code>0</code> means no limit.</p></td><td></td><td></td></tr><tr><td><p>Buffer Unit</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>BYTE</p></li><li><p>KB</p></li><li><p>MB</p></li><li><p>GB</p></li></ul></div></div></td><td><p>Unit for the <strong>Initial Buffer Size</strong>, <strong>Buffer Size Increment</strong>, and <strong>Max Buffer Size</strong> fields.</p></td><td></td><td></td></tr></tbody></table>

### Standard

Configures a standard reconnection strategy, which specifies how often to reconnect and how many
reconnection attempts the connector operation can make.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Frequency</p></td><td><div><div><p>Number</p></div></div></td><td><p>How often to attempt to reconnect, in milliseconds.</p></td><td></td><td></td></tr><tr><td><p>Reconnection Attempts</p></td><td><div><div><p>Number</p></div></div></td><td><p>How many reconnection attempts the Mule app can make.</p></td><td></td><td></td></tr></tbody></table>

## See Also

- [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors)

- [Salesforce Help](https://help.salesforce.com)
