SOAP Request

Connects Flowgear Workflows to WSDL-described SOAP services for template-driven request execution.

Revision History

0.0.0.1 - Initial release.
0.0.0.2 - Added annotation updates during the node major-version reset.
0.0.0.3 - Decoupled SOAP templates from node-owned runtime parameter names.
0.0.0.4 - Updated returned template metadata.
0.0.0.11 - Added tests to isolate SOAP request generation faults.
0.0.0.13 - Corrected SOAP body string serialization and expanded request diagnostics guidance.

Connection

Use this Connection to store the service endpoint, WSDL metadata source, and optional HTTP authentication settings used by the Node.

Property Type Description
URL String Service endpoint URL used for SOAP requests. When WSDL URL is empty, Flowgear also uses this value to fetch metadata.
WSDL URL String URL of the WSDL document used by Acquire Metadata to load services, bindings, and operation templates.
Don't Filter Properties by Attribute Boolean Preserves compatibility with services whose metadata does not annotate public properties consistently.
Service Name String Optional WSDL service name to use when the WSDL exposes more than one service.
Binding Name String Optional binding name to force a specific SOAP binding when the WSDL exposes multiple bindings.
Custom Binding Message Encoding SoapMessageEncoding Optional transport encoding override. Available values are Default, Binary, and Mtom.
Authentication Model SoapAuthenticationModel Optional HTTP authentication model. Available values are None, Basic, and Ntlm.
Username String Username used for Basic or Ntlm authentication. For Ntlm, enter the value as DOMAIN\Username.
Password Masked Password used for Basic or Ntlm authentication.
Schema String Cached WSDL content populated by Acquire Metadata and used to build templates at runtime.
Include Diagnostics Boolean Adds a redacted diagnostics block to responses so you can compare the generated request with provider examples without exposing secrets.

Setup Notes

  1. Enter the SOAP service URL.
  2. Enter the WSDL URL when the provider publishes metadata on a different URL than the runtime endpoint.
  3. Run Acquire Metadata on the Connection before selecting templates.
  4. Enter Service Name or Binding Name when the WSDL exposes multiple services or bindings and the default selection is not the one you need.
  5. Enter Username and Password only when the provider expects HTTP Basic or Ntlm authentication.
  6. Map provider-specific login fields in Body when the service expects credentials inside the SOAP envelope instead of, or in addition to, HTTP authentication.
  7. Enable Include Diagnostics when you need to compare the generated request binding, headers, and envelope against provider documentation or a working example from another client.

Methods

The Node exposes one template-driven invoke method that resolves the selected WSDL operation and posts the generated SOAP envelope to the configured endpoint.

Call

Calls the selected SOAP operation for each payload item and parses the SOAP response body back into JSON.

Parameter Type Description
Connection Connection SOAP Request Connection profile.
Action String Template-selected SOAP operation name.
Body Array Optional request payload stream. Each item is converted to the SOAP body expected by the selected operation.
Custom Headers Object Optional HTTP headers added to the outgoing request.
Return Type Description
Response Array Parsed SOAP response rows. When diagnostics are enabled, each row also includes a redacted FlowgearDiagnostics property.

Usage Notes

  • Flowgear resolves templates from the cached WSDL metadata stored in Schema, so refresh metadata after the provider changes its contract.
  • When a service publishes parallel SOAP 1.1 and SOAP 1.2 bindings for the same contract, the Node prefers SOAP 1.1 automatically. Set Binding Name when the provider requires a different binding.
  • Custom Headers are added alongside the SOAP transport headers generated from the selected binding.
  • Include Diagnostics returns the endpoint, resolved binding, content type, headers, and a redacted request envelope so you can compare Flowgear traffic with provider examples safely.

Known Issues

  • Request templates do not infer provider-specific credentials from the Connection profile. Services that expect login values inside the SOAP body still require those fields to be mapped in Body.
  • Only document/literal wrapped SOAP services are supported.