Table of Contents


Overview

SOAP (Simple Object Access Protocol) is an older XML-based remote procedure call standard, still common in enterprise middleware, telecoms provisioning systems, HR and finance suites and VMware’s legacy management APIs. A SOAP request is an XML envelope POSTed to a single service endpoint, with the operation name and its arguments carried inside the envelope body rather than in the URL.

This connector is a build-your-own integration for those services. You give it the service domain and, per job, the endpoint path and the XML envelope to send. It runs the soap.php driver, posts the envelope, and parses the XML response into a staging table in the ReadyWorks estate. The XML Envelope Payload field on the job form is where the operation and its arguments go.

Compared with the Generic Rest JSON API connector, this one trades the REST-shaped controls for envelope handling. There is no pagination group at all on the job form, because SOAP services do not page over a URL query string, and no API Data Parameters or Raw JSON Body, because the envelope carries everything. What it keeps is the enumeration machinery: three levels are available, so a job can read a list of identifiers from one call and issue a per-identifier envelope for each. Use the JSON or XML REST connectors for anything that answers on a REST-style URL, and this one only when the service genuinely speaks SOAP.

The connector is declared as bidirectional and a small outbound job form is exposed, but see the issue below: the outbound form is missing the fields an outbound SOAP call needs, and no outbound template ships.

NOTE: The one shipped inbound template points at the literal placeholder path /api/endpoint and is enabled. Change the endpoint or disable the job before saving a connection, or you will schedule a daily job that cannot succeed.

Connector Properties

PropertyValue
IdentifierSOAP
NameSimple Object Access Protocol (SOAP)
DescriptionAccess an API using the Simple Object Access Protocol (SOAP)
Job TypesBoth Inbound and Outbound
Order80
EnabledYes
LockedYes
Block UpdateNo
Single AuthenticationNo
Windows OnlyNo
Connector Version2025-03-12
HooksNone
Additional Job FieldsNone
Image

Authentication Methods

Two authentication methods are shipped: one for services that need no credential, and one modelled on VMware’s session-token exchange.

MethodIdentifierBase MethodScriptOrderEnabledConfig Fields
No AuthenticationSOAP_0ae9e4263cSOAP_0ae9e4263csoap.php10Yes4
VMWARE SOAP: username / password – return authorization tokenSOAP_4d5eceffd4SOAP_4d5eceffd4soap.php20Yes9

NOTE: Neither method implements WS-Security. If your service expects a UsernameToken or a signed security header, put it in the Soap Envelope field on the connection or in the per-job XML Envelope Payload.

NOTE: Both methods set SSL_VERIFYHOST and SSL_VERIFYPEER to false, so the service certificate is not validated.

Method 1: No Authentication (SOAP_0ae9e4263c)

Connect to a SOAP API with no authentication

Posts the envelope with no credential attached. Use it for services open to the collector’s network, or as the base when the credential travels inside the envelope body itself, which is how most WS-Security and custom SOAP logins work.

Connection Configuration Fields (4)

OrderLabelTypeRequiredDefaultMax LenTooltip
10API DomaintextYes255Enter API domain of the Connection
30Server Temporary Working PathtextYesstorage/etl5255Enter path where temporary files are stored during data processing (exclude starting and ending backslash)
240Single AuthenticationradioYes0Choose if authentication is only to be done once and not on each enumeration or pagination loop
250Additional Job Fieldsfields_listNoEnter list of additional fields to add to staging data for all jobs

Authentication Configuration

cURL options:

OptionAuthentication CallData Calls
USERAGENTMozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0Same
SSL_VERIFYHOSTfalseSame
SSL_VERIFYPEERfalseSame
RETURNTRANSFERtrueSame
FOLLOWLOCATIONtrueSame
FAILONERRORtrueSame

Method 2: VMWARE SOAP: username / password – return authorization token (SOAP_4d5eceffd4)

Connect to a SOAP method API with a username / password retrieving value for authorization token

A two-step exchange shaped for VMware. It posts the Soap Envelope you supply to the Authentication Token End Point, pulls the token out of the response at the node you name in Authentication Token JSON Node, and then sends that value on every data call as a vmware-api-session-id header while carrying the session cookie forward. The cookie handling makes it usable against other session-based SOAP services, but the header name is fixed to VMware’s.

Connection Configuration Fields (9)

OrderLabelTypeRequiredDefaultMax LenTooltip
10API DomaintextYes255Enter API domain of the Connection
30Server Temporary Working PathtextYesstorage/etl5255Enter path where temporary files are stored during data processing (exclude starting and ending backslash)
40UsernametextNo1024Tooltip for Username
50PasswordpasswordNo64000Tooltip for Password
180Soap EnvelopetextareaNoEnter the SOAP Envelope for the authentication call
190Authentication Token End PointtextNo500Tooltip for Authentication End Point
200Authentication Token JSON NodetextNo255Tooltip for Authentication Data Node
240Single AuthenticationradioYes0Choose if authentication is only to be done once and not on each enumeration or pagination loop
250Additional Job Fieldsfields_listNoEnter list of additional fields to add to staging data for all jobs

Authentication Configuration

Headers sent on the authentication call:

HeaderValueBase64
>SetCookieOff

Headers sent on the data calls:

HeaderValueBase64
>GetCookieOff
vmware-api-session-id:%auth_data%Off

cURL options:

OptionAuthentication CallData Calls
USERAGENTMozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0Same
SSL_VERIFYHOSTfalseSame
SSL_VERIFYPEERfalseSame
RETURNTRANSFERtrueSame
FOLLOWLOCATIONtrueSame
FAILONERRORtrueSame

NOTE: The Soap Envelope, Authentication Token End Point and Authentication Token JSON Node fields are all optional on the form, yet the method cannot work without all three. Fill in every one.

Inbound Job Fields Enabled (32)

The inbound job form carries the envelope and XML parsing controls, the three enumeration levels and Maximum API Calls, and omits the whole pagination group.

OrderLabelTypeRequiredDefaultTooltip
10Job DescriptiontextYesEnter description of the Job
20Job SchedulelookupYesDailySelect frequency Job should run
30EnabledradioYesYesChoose if Job is enabled
40Use Unparsed DataradioNoNoChoose if you wish to parse the incoming data, or leave it in its raw format
50Log Raw API CallsradioYesNoChoose if raw API calls are logged
70Destination TabletextYesEnter name of the destination table
80Data IdentitytextNoEnter identity of the Job
100XML Envelope PayloadtextareaNoEnter job XML envelope payload for the SOAP call
120Append New Data to Existing TablesradioNoNoChoose if new data will append to the existing destination table, or will create a new destination table
130Fields to IndextextNoEnter fields to index
170Method TypeselectYesGETSelect method type of the Job
190API End PointtextNoEnter API end point of the Job
230API Return Data NodetextNoEnter API return data node of the Job
240Ignore XML AttributesradioNoNoWhen parsing XML ignore field attributes and do not include them in the data
310Maximum API CallstextNoEnter maximum number of API calls for the Job to make
320Enumeration 1 TypeselectNoNoneEnter enumeration level 1 type
330Enumeration 1 ETL JoblookupNoSelect ETL job for the enumeration 1 values
340Enumeration 1 Data Typedata_typeNoSelect the data type and fields for enumeration 1 values
370Enumeration 1 Fieldsfields_listNoEnter enumeration 1 fields of the Job
380Enumeration 2 TypeselectNoNoneEnter enumeration level 2 type
390Enumeration 2 ETL JoblookupNoSelect ETL job for the enumeration 2 values
400Enumeration 2 Data Typedata_typeNoSelect the data type and fields for enumeration 2 values
430Enumeration 2 Fieldsfields_listNoEnter enumeration 2 fields of the Job
440Enumeration 3 TypeselectNoNoneEnter enumeration level 3 type
450Enumeration 3 ETL JoblookupNoSelect ETL job for the enumeration 3 values
460Enumeration 3 Data Typedata_typeNoSelect the data type and fields for enumeration 3 values
490Enumeration 3 Fieldsfields_listNoEnter enumeration 3 fields of the Job
500Pause EnumerationtextNoEnter values for pausing enumeration every X calls for Y seconds
510Kill Enumeration on ErrorradioNoNoChoose to stop the enumeration loop on an error or continue processing the loop
520Additional Fieldsfields_listNoEnter list of additional fields to add to staging data
550Retry PausetextNoEnter values for retrying a failed API connection. Retry X times, waiting Y seconds between each try, with an API timeout of Z seconds.
560OrdertextYesEnter order of the Job

NOTE: XML Envelope Payload is the SOAP body for the job. It accepts %token% substitution, so an enumeration field named enum_id_1 can be referenced as %enum_id_1% inside the envelope to build one call per identifier.

NOTE: With no pagination controls available, Maximum API Calls and the enumeration settings are the only limits on how many requests a job makes. Set Maximum API Calls on anything that enumerates.

Outbound Job Fields Enabled (7)

Seven outbound job fields are exposed, covering the job identity, the outbound and body sending methods and the outbound and return field lists.

OrderLabelTypeRequiredDefaultTooltip
10Job DescriptiontextYesEnter description of the Job
30EnabledradioYesYesChoose if Job is enabled
180Data Sending MethodselectYesJSON Encoded DataSelect method for sending the outbound data
210Body Data Sending MethodselectYesJSON Encoded DataSelect method for sending the body data
260Return Data Fields Listfields_listYesEnter return data fields of the Job
530Outbound Fields Listfields_listYesEnter outbound fields of the Job
560OrdertextYesEnter order of the Job

Inbound Job Templates (1)

One inbound template ships. It is a skeleton, and it is enabled with a placeholder endpoint.

#Job DescriptionDestination TableAPI End PointEnabledWhat It Pulls
1Sample Jobsoap_data/api/endpointYesA GET against the placeholder path /api/endpoint, writing to a staging table called soap_data. Nothing real is retrieved. It exists to be copied: set the endpoint to your service path, switch Method Type to POST, and put the operation envelope in XML Envelope Payload.

Job Template Configuration

Settings

SettingValue
Order10
EnabledYes
Job ScheduleDaily (15 1 * * *)
Destination Tablesoap_data
Data Identity
Allow Empty TableYes
Append Files to Same Destination TableNo
Append New Data to Existing TablesNo
Use Unparsed DataNo
Convert UUID-Keyed Objects to RowsNo
Ignore XML AttributesNo
Log Raw API CallsNo
Method TypeGET
API End Point/api/endpoint
Body Data Sending MethodJSON Encoded Data

NOTE: This template is the one shipped job in this set that is enabled by default. Disable or configure it before the first daily run.

Outbound Job Templates (0)

No outbound templates are shipped, and the outbound job form as configured cannot express a complete SOAP call. Treat the connector as inbound in practice.

Last updated on 11/4/2026

Attachments