Friendlier SOAP Pass-through with Logic App designer UX

When using SOAP Pass-through custom connector in Logic App, I previously provided steps to switch to code view to add required headers Content-Type and SOAP Action such as:

  "actions": {
     "SoapPassThrough": {
         "inputs": {
             "body": "<Envelope xmlns=\"https://schemas.xmlsoap.org/soap/envelope/\"><Body><GetOrder xmlns:xsi=\"https://www.w3.org/2001/XMLSchema-instance\" xmlns=\"https://tempuri.org/\"><orderId>2468</orderId></GetOrder></Body></Envelope>",
             "headers": {
                 "Content-Type": "text/xml",
                 "SOAPAction": "https://tempuri.org/IFazioService/GetOrder"
             },

Now if you are used to the Logic App designer UX this can be a bit uncomfortable, so here are steps from our support engineer Xuehong Gan to populate these from UX instead:

  • Use “Import from sample” and do add Operation Id to the end of URI.   Set headers and an empty body.

  • Once imported, click on ContentType and SoapAction buttons to add their values into the default value field.

  • When you use the custom connector, the two headers will show up automatically with the default values.

  • Create a string variable xmldata and set the XML request to it.   Then in the custom connector, you can use xmldata variable as the body.

  • Here is a sample test run of the resulting Logic App.

Comments

  • Anonymous
    May 16, 2019
    Hi David, I'm trying to implement this, but I'm running into an issue. My web server is telling me that the number of header request fields exceeds the server's limit. Was able to do some tracing, and the request had 41(!!!) different headers. Is there any way I can manage this and reduce it down some?
    • Anonymous
      May 16, 2019
      For a granular control of the formulated request sent to the Web Server and tweaking it, API Management is your friend.https://azure.microsoft.com/en-us/services/api-management/They have SOAP to REST support as well, we are actually sharing a common engine for it.
  • 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.