SOAP

As a new feature in 9.4, robots can initiate SOAP requests. This allows your robots to communicate with programs installed on other computers, pass necessary information, and return a response.

On the Repository>Robots tab you can find a column named SOAP. Clicking this column will bring up a window that allows you to edit and test your SOAP request.

SOAP Window

Figure . SOAP Window


The Request pane of the service window allows you to construct a request. Click the Test Service button to execute the robot. The result is then displayed in the Response pane of the window.

Input Format

Normal and flat refers to the structure of a SOAP request message. For example, if a robot myRobot expects input variables var1 and var2, both of a type that has attributes attr1 and attr2, then "normal" would expect a SOAP message that looks like the following

   <myRobot>
    <var1>
      <attr1>Some value</attr1>
      <attr2>Another value</attr2>
    </var1>
    <var2>
      <attr1>More input</attr1>
      <attr2>and some more</attr2>
    </var2>
  </myRobot>

                    

The "flat" structure would require the SOAP message to look as follows:

  <myRobot>
    <var1__attr1>Some value</var1__attr1>
    <var1__attr2>Another value</var1__attr2>
    <var2__attr1>More input</var2__attr1>
    <var2__attr2>and some more</var2__attr2>
  </myRobot>

                    

The flat structure was introduced for compatibility reasons.

WSDL URL

The URL for the WSDL of the project that this robot belongs to. Note that this URL will be identical for all robots of the same project.

Request URL

When running a robot, an HTTP POST request should be sent to this URL.

SOAPAction

When running a robot, a HTTP header called SOAPAction should be present with the value shown.

Request

This field is pre-filled with an example SOAP message. All input attributes will have default/test values. It can be edited before pressing Test Service.

Response

A non-editable field which contains output from a robot run.

If there are errors in the input parameters or errors during the robot run, a SOAP Fault message is shown (containing a reason and some details for the error).

Important Notes
  • Project names can contain characters that are not allowed in WSDL, therefore project names might be different in WSDL/SOAP messages. More specifically, all characters not a-z, A-Z, 0-9, or _ will be replaced by _.

  • Similarly, robot names may appear different. They are converted similarly to project names, but when a robot name is changed, a special suffix (e.g., _1234) is also added.

  • Currently SOAP 1.1 is supported.