SOAP component
A component that enables seamless integration with SOAP-based Web Services.
Table of Contents
Description
The SOAP Component enables seamless integration with SOAP-based Web Services. It supports both consuming external services and exposing your own SOAP endpoints.
Core Concepts: Server vs Client
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. |
Requirements
The platform supports the following SOAP protocol versions:
Component supports the following WSDL styles:
- RPC/Literal
- Document/Encoded
- Document/Literal
Environment variables
EIO_REQUIRED_RAM_MB - The recommended value for allocated memory is 2048MB.
How it Works
Acting as a SOAP Client (Calling an external service)
- 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.
Acting as a SOAP Server (Exposing your own endpoint)
- 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.
Credentials
The component functionally supports:
Username (Basic Auth)
The username required for the Basic authorization header in the SOAP request.
Password (Basic Auth)
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.
Triggers
- Receive SOAP Request
A webhook trigger that receives SOAP requests and validates the message body against the provided WSDL.
Actions
-
Call
Executes a call to an external SOAP service over HTTP.
-
Soap Reply
Sends an HTTP response back to the original caller of the Receive SOAP Request trigger.
Known limitations
- 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.
- All major frameworks for web services support Document/literal messages. Most of the popular frameworks also have some support for rpc/encoded, so developers can still use it to create encoded-only services. As a result it is hard to estimate the number of web services, in production use, work only with SOAP encoded messages. However, there is a tendency to move away from RPC/encoded towards Document/literal. Since the SOAP encoding specification does not guarantee 100% inter-operability and there are vendor deviations in the implementation of RPC/encoded.
- 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.
API and Documentation links