Skip to main content

SOAP 1.2 web service

Overview

SOAP (Simple Object Access Protocol) is an XML-based protocol for accessing web services over HTTP.

SOAP allows applications running on different operating systems to communicate using different technologies and programming languages. You can use SOAP APIs to create, retrieve, update or delete records, such as passwords, accounts, leads, and custom objects, from a server.

tip

The SOAP 1.2 Web Service source supports batch syncs.

\

Info tab

You can find the parameters in the Info tab below (Image 1).

Values

ParameterDescriptionExample
TitleMandatory. Input a name for your data syncSOAP 1.2 to Cinchy
DescriptionOptional. Add in a description for your sync. There is a 500 character limit in thie field.
VariablesOptional. Review our documentation on Variables here for more information about this field.
PermissionsData syncs are role based access systems where you can give specific groups read, write, execute, and/or all of the above with admin access. Inputting at least an Admin Group is mandatory.

Source tab

The following table outlines the mandatory and optional parameters you will find on the Source tab (Image 2).

Namespaces

You are required to define every Namespace present in your SOAP request, or in the SOAP response. You must define an envelope schema in the Namespace section. Use the following schema as a default:

ParameterDescriptionExample
Namespaces - NameName of your SOAP namespace tags in request and response."soapenv"
Namespaces - ValueURL describing this namespace in the response."http://schemas.xmlsoap.org/soap/envelope/"

Example

In the below example, the namespace name is soap, and the namespace value is http://schemas.xmlsoap.org/soap/envelope/.

<?xml version="1.0" encoding="utf-8"?>
<soapenv:Envelope
\\ The namespace name is soap, and the namespace value is the below URL
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<m:NumberToWordsResponse
xmlns:m="http://www.dataaccess.com/webservicesserver/">
<m:NumberToWordsResult>four million four hundred and seventy three thousand two hundred and thirty nine </m:NumberToWordsResult>
</m:NumberToWordsResponse>
</soap:Body>
</soap:Envelope>

SOAP 1.2 parameters

ParameterDescriptionExample
authTypeMandatory. Select the type of authentication you wish to use in this sync: None, WSSE, Basic.Basic
Use Password DigestUse only with WSSE authType and when Password Type is PasswordDigest. Otherwise, leave unchecked.
Request TimeoutMandatory. Set a timeout in milliseconds. The minum value is 0, and there is no maximum value. The default value is 100 milliseconds.2000
EndpointMandatory. Your SOAP 1.2 Web Service API endpoint.
Has Mtom ResponseRequired to be true if your SOAP API response contains an attachment outside the message.
Record XpathMandatory. The Xpath to select records to extract from the SOAP response. XPath stands for XML Path Language. It uses a non-XML syntax to provide a flexible way of addressing (pointing to) different parts of an XML document. It can also be used to test addressed nodes within a document to determine whether they match a pattern or not. Record XPath should start with ‘//’ and followed by the tag name of the data. You can refer http://xpather.com/ to find out Xpath
Envelope NamespaceThe namespace prefix for SOAP request elements. It should match one of the Name values listed in the Namespaces section above."soapenv"

SOAP Body

The SOAP Body can be found under Add A Property > SOAP Body. Use this XML section to specify the SOAP body for your request.

Example:

\\ If your SOAP xml is the following:

<?xml version="1.0" encoding="utf-8"?>
<soapenv:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<m:NumberToWordsResponse
xmlns:m="http://www.dataaccess.com/webservicesserver/">
<m:NumberToWordsResult>four million four hundred and seventy three thousand two hundred and thirty nine </m:NumberToWordsResult>
</m:NumberToWordsResponse>
</soap:Body>
</soap:Envelope>

\\ Then you would input the below in the SOAP Body XML section. Note that it does not include the "NumberToWordsResult" lines.
<NumberToWords xmlns="http://www.dataaccess.com/webservicesserver/">
<ubiNum>4473239</ubiNum>
</NumberToWords>

\

# Next steps

Example

The below example uses the following SOAP data as a source.

SOAP Source Example

Info Tab Configuration

This example is configured with the following set of variables:

LabelValue
numeric_valueSOAPNumericValue
nsSOAPns
endpointSOAPEndpoint
calcCredential

SOAP Info Tab Example

Source Tab Configuration

This example is configured with the following values in the Source Tab:

Namespaces

NameValue
mhttp://www.dataaccess.com/webservicesserver/
soap12http://schemas.xmlsoap.org/soap/envelope/

SOAP Namespace Example

Connection

ParameterValue
Auth TypeNone
Request Timeout100
Endpoint@Endpoint
Has Mtom ResponseFalse
Record Xpath//m:NumberToWordsResponse
Envelope Namespacesoap12

SOAP Connection Condig Example

Schema

This example uses a range of column types.

Column 1

ParameterValue
Name./m:NumberToWordsResult
AliasText Value
Data TypeText
Content TypeText

SOAP Example Column 1

Column 2

ParameterValue
NameNumeric Value
Formula@Numeric_Value
Data TypeNumber

SOAP Example Column 2

Column 3

ParameterValue
NameCalculated Column
Formula@calc
Data TypeText

SOAP Example Column 3

Column 4

ParameterValue
NameConditional Calculated Column
Data TypeText
If./m:NumberToWordsResult is NOT NULL
Then./m:NumberToWordsResult
Default Expression[Numeric Value]

SOAP Example Column 4

Column 5

ParameterValue
NameJS Calculated Column
Data TypeText
ScriptSee code block below
function calc(currentRecord) {
if (currentRecord['Numeric Value'] ==300) {
return currentRecord['Numeric Value'];
} else {
return 'No numeric value';
}
}

SOAP Example Column 5

SOAP Body

    <NumberToWords xmlns="http://www.dataaccess.com/webservicesserver/">
<ubiNum>@numeric_value</ubiNum>
</NumberToWords>

SOAP Body Example