---
schema_version: "1"
id: 79cee4d11574a9329e876e47f35ca7cbeadfdacbe4cb41bd096f1357af41c14a
title: APIkit for SOAP Module Reference
collection: mulesoft
version: current
locale: en-us
portal_url: https://docs.salesforce.com/mulesoft/current/en-us/apikit/latest/apikit-for-soap-module-reference.md
canonical_url: https://docs.mulesoft.com/apikit/latest/apikit-for-soap-module-reference
source_site: docs.mulesoft.com
content_type: documentation
content_hash: 20afa3f3e2d13b52c326751e44b9ecf0d547d7d8d9d6198db755f611169ebb6e
description: MuleSoft Documentation Site
release: 4.x
latest: true
---
---
product: APIkit
version: 4.x
is-latest-version: true
---

# APIkit for SOAP Module Reference

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

Configure the APIkit for SOAP module in Mule to route SOAP requests from your WSDL, validate inbound
XML when needed, and emit SOAP responses. This reference documents `soapkit:config`, router
behavior, operations, and related XML elements you use when you implement or troubleshoot SOAP APIs.

## Configurations

### Config

Configuration element for a **SOAP Router**

#### 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><div><div><p><code>Name</code></p></div></div></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Connectors use this configuration name to reference its configuration.</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>Yes</p></div></div></td></tr><tr><td><div><div><p>Soap Version</p></div></div></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>SOAP11</p></li><li><p>SOAP12</p></li></ul></div></div></td><td><div><div><p>SOAP version of the WSDL.</p></div></div></td><td><div><div><p>SOAP11</p></div></div></td><td><div><div><p>No</p></div></div></td></tr><tr><td><div><div><p><code>Address</code></p></div></div></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Address of the web service.</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>No</p></div></div></td></tr><tr><td><div><div><p><code>MTOM Enabled</code></p></div></div></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>Defines if the MTOM protocol manages the attachments.</p></div></div></td><td><div><div><p><code>false</code></p></div></div></td><td><div><div><p>No</p></div></div></td></tr><tr><td><div><div><p><code>Inbound Validation Enabled</code></p></div></div></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>Defines if the schema of the inbound request is validated.</p></div></div></td><td><div><div><p><code>false</code></p></div></div></td><td><div><div><p>No</p></div></div></td></tr><tr><td><div><div><p>Inbound Validation Message Level</p></div></div></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>WARN</p></li><li><p>ERROR</p></li></ul></div></div></td><td><div><div><p>Defines the validation level of the inbound requests. If set to <code>ERROR</code>, the validation fails and sends an error to the flow.</p></div></div></td><td><div><div><p>WARN</p></div></div></td><td><div><div><p>No</p></div></div></td></tr><tr><td><div><div><p><code>HTTP Status Var Name</code></p></div></div></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Variable name for the HTTP status.</p></div></div></td><td><div><div><p><code>httpStatus</code></p></div></div></td><td><div><div><p>No</p></div></div></td></tr><tr><td><div><div><p><code>Namespace Prefixes</code></p></div></div></td><td><div><div><p>Object</p></div></div></td><td><div><div><p>Map of custom namespaces prefixes to specify in response.</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>No</p></div></div></td></tr><tr><td><div><div><p><code>Expiration Policy</code></p></div></div></td><td><div><div><p><a href="#expiration-policy">Expiration Policy</a></p></div></div></td><td><div><div><p>Configures the minimum amount of time that a dynamic configuration instance can remain idle before the run-time considers it eligible for expiration. The platform does not necessarily expire the instance at the exact moment that it becomes eligible. The run-time purges the instances when it considers it appropriate.</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>No</p></div></div></td></tr><tr><td><div><div><p><code>WSDL Location</code></p></div></div></td><td><div><div><p>String</p></div></div></td><td><div><div><p>WSDL file URL, remote or local.</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>Yes</p></div></div></td></tr><tr><td><div><div><p><code>Service</code></p></div></div></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Name of the service.</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>Yes</p></div></div></td></tr><tr><td><div><div><p><code>Port</code></p></div></div></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Name of the port.</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>Yes</p></div></div></td></tr></tbody></table>

#### Associated Operations

- [Fault](#soap-fault)

- [Router](#soap-router)

## Operations

### SOAP Fault

`<apikit-soap:fault>`

APIkit for SOAP Fault

#### 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><div><div><p><code>Configuration</code></p></div></div></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Name of the configuration.</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>Yes</p></div></div></td></tr><tr><td><div><div><p><code>Payload</code></p></div></div></td><td><div><div><p>Binary</p></div></div></td><td><div><div><p>Mule payload.</p></div></div></td><td><div><div><p>#[payload]</p></div></div></td><td><div><div><p>No</p></div></div></td></tr><tr><td><div><div><p>Streaming Strategy</p></div></div></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>Non repeatable stream</p></li></ul></div></div></td><td><div><div><p>Configure if repeatable streams and their behavior are used.</p></div></div></td><td><div><div><p>Non repeatable stream</p></div></div></td><td><div><div><p>No</p></div></div></td></tr><tr><td><div><div><p><code>Operation</code></p></div></div></td><td><div><div><p>String</p></div></div></td><td><div><div><p>An operation defined in the WSDL.</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>Yes</p></div></div></td></tr><tr><td><div><div><p><code>Fault</code></p></div></div></td><td><div><div><p>String</p></div></div></td><td><div><div><p>A fault defined in the selected operation.</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>Yes</p></div></div></td></tr><tr><td><div><div><p><code>Target Variable</code></p></div></div></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Name of a variable on which the operation output is placed.</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>No</p></div></div></td></tr><tr><td><div><div><p><code>Target Value</code></p></div></div></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Expression that is evaluated against the operation output. The effect of the expression is stored in the target variable.</p></div></div></td><td><div><div><p>#[payload]</p></div></div></td><td><div><div><p>No</p></div></div></td></tr></tbody></table>

#### Output

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

#### For Configurations

- [Config](#config)

#### Throws

- APIKIT-SOAP:FAULT

- APIKIT-SOAP:ROUTER

### SOAP Router

`<apikit-soap:router>`

APIkit for SOAP Router

#### 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><div><div><p><code>Configuration</code></p></div></div></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Name of the configuration.</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>Yes</p></div></div></td></tr><tr><td><div><div><p><code>Message</code></p></div></div></td><td><div><div><p>Binary</p></div></div></td><td><div><div><p>Mule payload.</p></div></div></td><td><div><div><p>#[payload]</p></div></div></td><td><div></div></td></tr><tr><td><div><div><p><code>Attributes</code></p></div></div></td><td><div><div><p>Object</p></div></div></td><td><div><div><p>Map of Mule message attributes.</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>Yes</p></div></div></td></tr><tr><td><div><div><p><code>Output Mime Type</code></p></div></div></td><td><div><div><p>String</p></div></div></td><td><div><div><p>MIME type of the payload that this operation outputs.</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>No</p></div></div></td></tr><tr><td><div><div><p><code>Output Encoding</code></p></div></div></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Encoding of the payload that this operation outputs.</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>No</p></div></div></td></tr><tr><td><div><div><p>Streaming Strategy</p></div></div></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>Non repeatable stream</p></li></ul></div></div></td><td><div><div><p>Configure if repeatable streams and their behavior are used.</p></div></div></td><td><div><div><p>Non repeatable stream</p></div></div></td><td><div><div><p>No</p></div></div></td></tr><tr><td><div><div><p><code>Target Variable</code></p></div></div></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Name of a variable on which the operation output is placed.</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>No</p></div></div></td></tr><tr><td><div><div><p><code>Target Value</code></p></div></div></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Expression that is evaluated against the operation output. The outcome of the expression is stored in the target variable.</p></div></div></td><td><div><div><p>#[payload]</p></div></div></td><td><div><div><p>No</p></div></div></td></tr></tbody></table>

#### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p><strong>Type</strong></p></td><td><p>Binary</p></td></tr><tr><td><p><strong>Attributes Type</strong></p></td><td><p><a href="#soap-attributes">SOAP Attributes</a></p></td></tr></tbody></table>

#### For Configurations

- [Config](#config)

#### Throws

- APIKIT-SOAP:FAULT

- APIKIT-SOAP:ROUTER

## Types

### Expiration Policy

<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><div><div><p><code>Max Idle Time</code></p></div></div></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>A scalar time value for the maximum amount of time a dynamic configuration instance is allowed to be idle before it’s considered eligible for expiration</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>No</p></div></div></td></tr><tr><td><div><div><p>Time Unit</p></div></div></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><div><div><p>A time unit that qualifies the <code>maxIdleTime</code> attribute</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>No</p></div></div></td></tr></tbody></table>

### Repeatable in Memory Stream

<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><div><div><p><code>Initial Buffer Size</code></p></div></div></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>Amount of memory that is allocated to consume the stream and provide random access to it. If the stream contains more data than buffer capacity, then it’s expanded according to the <code>bufferSizeIncrement</code> attribute, with an upper limit of <code>maxInMemorySize</code>.</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>No</p></div></div></td></tr><tr><td><div><div><p><code>Buffer Size Increment</code></p></div></div></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>Amount the buffer size expands if it exceeds its initial size. A value of zero or lower specifies that the buffer doesn’t expand. When the buffer is full, a <code>STREAM_MAXIMUM_SIZE_EXCEEDED</code> error occurs.</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>No</p></div></div></td></tr><tr><td><div><div><p><code>Max Buffer Size</code></p></div></div></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>Maximum amount of memory used. If more is used, a <code>STREAM_MAXIMUM_SIZE_EXCEEDED</code> error is raised. A value lower or equal to zero means no limit.</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>No</p></div></div></td></tr><tr><td><div><div><p>Buffer Unit</p></div></div></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><div><div><p>The unit in which all these attributes are expressed.</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>No</p></div></div></td></tr></tbody></table>

### Repeatable File Store Stream

<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><div><div><p><code>In Memory Size</code></p></div></div></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>Defines the maximum memory that the stream uses to keep data in memory. If it consumes more, the stream buffers the content on disk.</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>No</p></div></div></td></tr><tr><td><div><div><p>Buffer Unit</p></div></div></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><div><div><p>The unit in which <code>maxInMemorySize</code> is expressed.</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>No</p></div></div></td></tr></tbody></table>

### SOAP Attributes

<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><div><div><p><code>Protocol Headers</code></p></div></div></td><td><div><div><p>Object</p></div></div></td><td><div><div><p>Protocol headers bundled in the response</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>No</p></div></div></td></tr><tr><td><div><div><p><code>Additional Transport Data</code></p></div></div></td><td><div><div><p>Object</p></div></div></td><td><div><div><p>Additional transport data bundled in the response</p></div></div></td><td><div><div><p>None</p></div></div></td><td><div><div><p>No</p></div></div></td></tr></tbody></table>

### APIkit for SOAP System Properties

<table><colgroup><col> <col> <col> <col></colgroup><thead><tr><th>System Property</th><th>Default</th><th>Description</th><th>Since</th></tr></thead><tbody><tr><td><div><div><p><code>mule.soapkit.allowControlCharacters</code></p></div></div></td><td><div><div><p>false</p></div></div></td><td><div><div><p>Enables the use of XML 1.1 C0 characters.</p></div></div></td><td><div><div><p>1.3.0</p></div></div></td></tr></tbody></table>
