How can you call a SOAP svc API using logic app or Azure Data Factory?

Catameo, Fred (Taguig City 1634) 236 Reputation points
2021-02-24T13:45:51.32+00:00

I am able to call a SOAP API using SoapUI or Postman:

POST https://xxxxxxxxxxxxxx/ExternalServices/Services/ExternalRequests.svc HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: text/xml;charset=UTF-8
SOAPAction: "http://tempuri.org/IExternalRequests/ImportHRISDataFileWithHierarchyFromPath"
Content-Length: 986
Host: xxxxxxxxxxxxx
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.5.5 (Java/12.0.1)

with this XML body:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/">
<soapenv:Header>
<tem:Status>?</tem:Status>
<tem:ResponseAPIUrl>https://XXXXXXX</tem:ResponseAPIUrl>
<tem:ImportFilePath>\XXXXXXX</tem:ImportFilePath>
<tem:ImportFileName>XXXXXXX.csv</tem:ImportFileName>
<tem:ErrorFilePath>\XXXXXXX</tem:ErrorFilePath>
<tem:ErrorFileName>?</tem:ErrorFileName>
<tem:ConfigFilePath>\XXXXXXX</tem:ConfigFilePath>
<tem:ConfigFileName>QuestionLibraryConfig.xlsx</tem:ConfigFileName>
<tem:ClientName>FM - R14 - Data Integration 5</tem:ClientName>
<tem:ClientId>XXXXXXX</tem:ClientId>
</soapenv:Header>
<soapenv:Body>
<tem:HRISImportWithHierarchyFromPathRequest/>
</soapenv:Body>
</soapenv:Envelope>

How can I call it using a logic app or ADF?

Azure Logic Apps
Azure Logic Apps
An Azure service that automates the access and use of data across clouds without writing code.
3,542 questions
Azure Data Factory
Azure Data Factory
An Azure service for ingesting, preparing, and transforming data at scale.
11,624 questions
0 comments No comments
{count} votes

Accepted answer
  1. HimanshuSinha-msft 19,486 Reputation points Microsoft Employee Moderator
    2021-02-24T18:03:20.7+00:00

    Hello @Catameo, Fred (Taguig City 1634) ,

    Thanks for the ask and using the Microsoft Q&A platform .

    Just wanted to point you to the implementation here for ADF .Request you to please go through this .It should give you some idea .

    Please do let me know how it goes .
    Thanks
    Himanshu

    1 person found this answer helpful.

1 additional answer

Sort by: Most helpful
  1. Kota, Kailash 6 Reputation points
    2022-02-15T06:39:55.303+00:00

    Hello everyone,

    I have the same question. I can make the SOAP API call through the SOAPUI but the same is not working when I am calling it from the ADF pipeline.

    Below is the body:

    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:v2="http://xmlns.oracle.com/oxp/service/v2">
    <soapenv:Header/>
    <soapenv:Body>
    <v2:scheduleReport>
    <v2:scheduleRequest>
    <v2:deliveryChannels>
    <v2:ftpOptions>
    <!--Zero or more repetitions:-->
    <v2:item>
    <v2:ftpServerName>xxxxxx</v2:ftpServerName>
    <v2:ftpUserName>xxxxx</v2:ftpUserName>
    <v2:ftpUserPassword>xxxx</v2:ftpUserPassword>
    <v2:remoteFile>xxxxxx</v2:remoteFile>
    <v2:sftpOption>1</v2:sftpOption>
    </v2:item>
    </v2:ftpOptions>
    </v2:deliveryChannels>
    <v2:reportRequest>
    <v2:attributeFormat>csv</v2:attributeFormat>
    <v2:parameterNameValues>
    <v2:listOfParamNameValues>
    <!--Zero or more repetitions:-->
    <v2:item>
    <v2:name>from_date</v2:name>
    <v2:values>
    <v2:item>01-03-2022 14:20:01</v2:item>
    </v2:values>
    </v2:item>
    <v2:item>
    <v2:name>to_date</v2:name>
    <v2:values>
    <v2:item>02-03-2022 14:20:01</v2:item>
    </v2:values>
    </v2:item>
    </v2:listOfParamNameValues>
    </v2:parameterNameValues>
    <v2:reportAbsolutePath>xxxxxx</v2:reportAbsolutePath>
    <v2:sizeOfDataChunkDownload>1</v2:sizeOfDataChunkDownload>
    </v2:reportRequest>
    <v2:userJobName>xxxxxxxxxx</v2:userJobName>
    </v2:scheduleRequest>
    <v2:userID>xxxxx</v2:userID>
    <v2:password>xxxxxxx</v2:password>
    </v2:scheduleReport>
    </soapenv:Body>
    </soapenv:Envelope>

    Please let me know steps as I do not view the answer.

    Thanks,
    Kailash Kota

    0 comments No comments

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.