- Description
- Core Concepts: Server vs Client
- Requirements
- How it Works
- Credentials
- Triggers
- Actions
- Known Limitations
- API and Documentation links
- License
The SOAP Component enables seamless integration with SOAP-based Web Services. It supports both consuming external services and exposing your own SOAP endpoints.
Understanding how to use this component depends on whether you want to call a service or provide a service.
| Feature | Role | Purpose | Typical Usage |
|---|---|---|---|
| Trigger: Receive SOAP Request | Server | Exposes a Webhook URL that accepts SOAP XML. | Acting as a SOAP endpoint for external systems. |
| Action: Call | Client | Sends a SOAP request to an external WSDL URI. | Fetching data from a 3rd party SOAP service. |
| Action: Soap Reply | Responder | Sends the HTTP response back to the Trigger caller. | Returning a "Result" to the system that called your flow. |
The component supports the following SOAP protocol versions:
- SOAP 1.1
- SOAP 1.2
The component supports the following WSDL styles:
- RPC/Literal
- Document/Encoded
- Document/Literal
EIO_REQUIRED_RAM_MB- The recommended value for allocated memory is2048MB.
- Locate and select the SOAP component and choose the Call action.
- Provide the WSDL URL (e.g.,
http://dneonline.com/calculator.asmx?WSDL). - Select the Binding and Operation in that exact order.
- Map your JSON data to the generated input fields.
- The component converts your JSON to XML, sends it to the server, and returns the response as JSON.
- Use the Receive SOAP Request trigger. This provides a Webhook URL for your flow.
- Provide a WSDL. The trigger uses this as a Contract to know what XML structure to expect.
- Select the Binding and Operation in that exact order.
- When an external system sends XML to your Webhook, the trigger validates it and converts it to JSON.
- Use the Soap Reply action at the end of your flow to return a response to the original caller.
The component functionally supports:
- No Auth
- Basic Auth
The username required for the Basic authorization header in the SOAP request.
The password required for the Basic authorization header in the SOAP request.
Important
Although the UI may display additional authentication types such as API Key or HMAC, these are not supported for outgoing calls in the current version.
A webhook trigger that receives SOAP requests and validates the message body against the provided WSDL.
- WSDL URI - Publicly accessible URL of the WSDL.
- Binding - Select one of the bindings described in the WSDL.
- Operation - Select an operation available for the chosen binding.
- Validation - If
Enabled, the SOAP body is validated against the WSDL schema.
WSDL URI: http://www.dneonline.com/calculator.asmx?wsdl | Operation: Add
Incoming XML from User:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<Add xmlns="http://tempuri.org/">
<intA>10</intA>
<intB>20</intB>
</Add>
</soap:Body>
</soap:Envelope>Trigger Output (JSON):
{
"Add": {
"intA": 10,
"intB": 20
}
}Executes a call to an external SOAP service over HTTP.
- WSDL URI - Publicly accessible URL of the WSDL.
- Binding - Select one of the bindings described in the WSDL.
- Operation - Select an operation available for the chosen binding.
- Request Timeout - The timeout period in milliseconds (1-1,140,000). Defaults to
60,000.
If the server returns a SOAP Fault, the component emits a platform exception by default. Example of a SOAP 1.2 Fault converted to JSON:
{
"Fault": {
"faultcode": "S:Server",
"reason": "Server error java.lang.NullPointerException"
}
}Sends an HTTP response back to the original caller of the Receive SOAP Request trigger.
If your flow calculated a sum of 30, you would map it to the Soap Reply input:
{
"AddResponse": {
"AddResult": 30
}
}<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<AddResponse xmlns="http://tempuri.org/">
<AddResult>30</AddResult>
</AddResponse>
</soap:Body>
</soap:Envelope>- WSDL Support: This version includes improved support for complex WSDLs and external XSD schemas via network-based fetching.
- Unsupported Styles: RPC/SOAP-Encoded styles are not supported.
- Namespaces: Namespaces are currently ignored during JSON conversion.
- SOAP Headers: Custom SOAP headers are not yet supported.
- Message Format: Multipart message formats are not supported; only the first part is processed.
- Sample Retrieval: The "Retrieve Sample" feature may not always represent actual runtime behavior.
