Advanced types in Logic App SOAP Custom Connectors
Please be aware of the following limitation:
- Only the (base) type directly referred by a SOAP operation’s message will be used to generate JSON to XML translation. Even if the type is declared as abstract. If that base type is derived in one or more sub-types, sub-types that are not referred by the SOAP action directly, the sub-types will not be translated between JSON and XML.
E.g.:
<wsdl:operation name="query">
<wsdl:input message="tns:querySoapIn"/>
<wsdl:output message="tns:querySoapOut"/>
</wsdl:operation>
<wsdl:message name="querySoapOut">
<wsdl:part name="parameters" element="tns:Entity"/>
</wsdl:message>
<s:complexType name="Entity" abstract="true">
<s:sequence>
<s:element name="Fields" type="tns:ArrayOfField" maxOccurs="1" minOccurs="0"/>
<s:element name="id" type="s:long" maxOccurs="1" minOccurs="1"/>
<s:element name="UserDefinedFields" type="tns:ArrayOfUserDefinedField" maxOccurs="1" minOccurs="0"/>
</s:sequence>
</s:complexType>
<s:complexType name="Skill">
<s:complexContent mixed="false">
<s:extension base="tns:Entity">
<s:sequence>
<s:element name="Active" maxOccurs="1" minOccurs="0"/>
<s:element name="CategoryID" maxOccurs="1" minOccurs="0"/>
<s:element name="Description" maxOccurs="1" minOccurs="0"/>
<s:element name="Name" maxOccurs="1" minOccurs="0"/>
</s:sequence>
</s:extension>
</s:complexContent>
</s:complexType>
SOAP operation “query” has output message “querySoapOut” directly referring type “Entity”. XML to JSON translation will be generated for “Entity” type and all its members (“Fields”, “id” and “UserDefinedFields”). No translation will be generated for derived type “Skill”.
This is a simplified example based on the real-world WSDL at https://webservices4.autotask.net/atservices/1.5/atws.wsdl
If you do need support for implicit derived types, consider voting for such idea at the Logic Apps uservoice.
Comments
- Anonymous
June 20, 2019
This blog has been moved off the MSDN platform. Find further content and update at https://www.linkedin.com/today/author/daviburgComments are locked as part of the blog migration, so please reach out to your customer support contact for assistance with Microsoft products and services.