Recursive types declaration in WSDL and Logic Apps SOAP Custom Connector


As you upload WSDL document for the creation of a Logic Apps SOAP Custom Connector you may encounter the following error:

'The translation of the WSDL document to an Open API definition failed with error 'Element named 'https://foobar' has a recursive definition. Recusive types are not supported.'.'. Status code: 'BadRequest'.

(Yes there is a typo in the last sentence which I will get fixed.)

You may notice in the Azure API Management documentation that Recursion types are not supported for SOAP to REST - https://docs.microsoft.com/fi-fi/azure/api-management/api-management-api-import-restrictions This because we haven't found a way to express recursion in the underlying Liquid template used for transforming XML to Json and back.

There are a couple of workarounds you may consider:

  • If the type with recursion is only used in SOAP actions you are not using, remove both action and type declaration from the WSDL.
  • If the type is used in an action you need but the payloads of use to you don't actually have the recursion, remove the recursive reference in the type declaration.
Comments (0)

Skip to main content