soapblueprism

How can a visible web service of BluePrism be triggered from URL?


I want to make a process of BluePrism as a webservice and make it callable through API call.

I created a process and made it visible as a webservice. The WSDL is visible when going to the URL. http://localhost:myPort/ws/CalcP?wsdl

<wsdl:definitions xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="urn:blueprism:webservice:calcp" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" name="CalcPService" targetNamespace="urn:blueprism:webservice:calcp">
<wsdl:types>
<s:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="urn:blueprism:webservice:calcp"/>
</wsdl:types>
<wsdl:message name="CalcPRequest"/>
<wsdl:message name="CalcPResponse"/>
<wsdl:portType name="CalcPPortType">
<wsdl:operation name="CalcP">
<wsdl:input message="tns:CalcPRequest"/>
<wsdl:output message="tns:CalcPResponse"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="CalcPSoapBinding" type="tns:CalcPPortType">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="CalcP">
<soap:operation soapAction="" style="rpc"/>
<wsdl:input>
<soap:body use="encoded" namespace="urn:blueprism:webservice:calcp" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</wsdl:input>
<wsdl:output>
<soap:body use="encoded" namespace="urn:blueprism:webservice:calcp" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="CalcPService">
<wsdl:port name="CalcPSoap" binding="tns:CalcPSoapBinding">
<soap:address location="http://localhost:myPort/ws/CalcP"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>

The operation method is called:

<wsdl:operation name="CalcP">...</wsdl:operation>

However triggering the service using a URL path does not seem to work: http://localhost:myPort/ws/CalcP/CalcP Message: A ws GET request must be for the WSDL


Solution

  • The SOAP APIs that Blue Prism generates only respond to POST requests. The only GET request it responds to (as you've seen in your error text) is that for a WSDL download.

    Use a utility like SoapUI to generate sample Requests based on the WSDL provided and test them over POST.