cancel
Showing results for 
Search instead for 
Did you mean: 

Does Utility-HTTP Support SOAP API ?

Hello all,

Does Utility-HTTP Support SOAP API?

We have mainly used REST APIs using Utility - HTTP, so not sure if it also supports SOAP-based APIs.

I saw some threads where people configured it but I just want to make sure this is possible from Blue prism.

------------------------------
If I was of assistance, please vote for it to be the "Best Answer".

Thanks & Regards,
Tejaskumar Darji
Sr. Consultant-Technical Lead
------------------------------
5 REPLIES 5

ewilson
Staff
Staff
Hi @Tejaskumar_Darji,

Yes, the Utility - HTTP VBO can be used to submit requests to a SOAP service. However, it does not interpret WSDLs or generate the SOAP envelope on its own. You have to create the payload manually and then you can submit it using the VBO as a POST request. This article about using Postman to make SOAP requests basically describes the same steps you would need to take with the VBO.

https://learning.postman.com/docs/sending-requests/soap/making-soap-requests/

Cheers,​

------------------------------
Eric Wilson
Director, Integrations and Enablement
Blue Prism Digital Exchange
------------------------------

HI @Tejaskumar_Darji

It does support SOAP api's but you may also want to try setting it up as a soap web service within blueprism first which is within the system part of blueprism as shown in the screen shot below. If the one you are connecting to is using a wsdl then this is the best option as you just need to provide the wsdl URL and the service will auto populate the actions as well as the inputs and outputs. I recently had to set up a soap service for client and soap service in BP didnt have all the actions and inputs/outputs so to get this working you can use the HTTP utility but what you need to do is provide the xml requests for each action as POST method and the content type as "application/soap+xml". (example screenshot below). 

However I found the best way to do this was actually set up a soap service within BP to house all the actions and inputs so I didnt need to repeat the development each time I used the service. To do that you just need to create a web service as usual and for each action you create set the methods to post and in the body content set this as template and input the example XML request you will use for this action. Then you just need to set the inputs for it, you wont need to set the outputs as you will just get an XML response but for inputs the names of the inputs should match the names of the inputs from the request xml. 

I should mention that with soap actions you will get an xml response but the xml will return a single string instead of formatted. This means you cant etract the relevant info until its formatted so to resolve this you will need to create a new coded action for pretty print within the xml utility (Code provided below). I also found this one git hub which really helped me with extracting all the relevant info from the response BlueprismVBO/BPA Object - Utility - XML2Collection.xml at master · aikudinov/BlueprismVBO · GitHub

I know thats a lot of info to give you all at once but let me know if you need any more info. Hope this helps 🙂

23777.png
23778.png

Dim sw As New StringWriter()
Dim xw As New XmlTextWriter(sw)
Dim doc As New XmlDocument
xw.Formatting = Formatting.Indented
xw.Indentation = 4

'Dim doc As New XmlDocument
doc.LoadXml(PrettyText)
doc.Save(xw)
xFile = sw.ToString()
'xFile = doc

------------------------------
Michael ONeil
Technical Lead developer
NTTData
Europe/London
------------------------------

Hi Michael,

Thanks for the detailed solution.

I tried to download and import the VBO BlueprismVBO/BPA Object - Utility - XML2Collection.xml at master · aikudinov/BlueprismVBO · GitHub but the import failed with the below details:
23779.png

I am using BP 6.10.4, can you share the version which can be imported in this if you already are using it?

Many Thanks

------------------------------
Manish Rawat
Project Manager
Mercer
New Delhi
------------------------------

Hi @Manish Rawat

I've attached a copy of the one I have. ​The reason the one you have wasnt imported is because you said it as XML you need to save the text file with the extension .bprelease to save it as  BP compatible import.

Hope this helps

------------------------------
Michael ONeil
Technical Lead developer
NTTData
Europe/London
------------------------------

Hi @Michael ONeil

Thanks much, It worked :)​

------------------------------
Manish Rawat
Project Manager
Mercer
New Delhi
------------------------------