1. Home
  2. Corporate Node
  3. SOAP requests
  4. SOAP request and response form

SOAP request and response form

SOAP request

Typical SOAP request has following form:

<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="ns1">
   <soapenv:Header/>
   <soapenv:Body>
      <ns1:nazwa_soap soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
         <argument1 xsi:type="xsd:string">value1</argument1>
         <argument2 xsi:type="xsd:string">value2</argument2>
         <!-- ... -->
      </ns1:nazwa_soap>
   </soapenv:Body>
</soapenv:Envelope>

Where: nazwa_soap is request name (ie. hello, startRegister, etc.), argument1, argument2 are argument names (ie. billonUserName), and value1, value2 are their values.

Standard SOAP response

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns1="ns1">
   <SOAP-ENV:Header/>
   <SOAP-ENV:Body SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
      <ns1:response_name>
         <return xsi:type="ns1:response_type">
            <requestStatus>status</requestStatus>
            <requestStatusDescription>description</requestStatusDescription>
            <taskId>id</taskId>
         </return>
      </ns1:response_name>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Where meaning of the fields are:

field nametypedescription
requestStatusstringinformation if request has been successfully processed
requestStatusDescriptionstringAdditional description of status
taskIdstringid of created task (necessary to check task status or response)

In case of some messages (ie. hello, readSettings, getMpin etc.) all information is passed in response.
Howewer in most cases response doesn’t contain requested object, but it returns id of created task. Using this taskId we are able to poll task status/result. Usually we use getTaskStatus method for that.

Returned statuses

In case of failure, error codes are being returned. Most common error codes are presented below

namedescription
SUCCESSoperation finished with success
ERR_TECHNICAL_PROBLEMtechnical error occured
ERR_TIMEOUTtimeout has exceeded
ERR_NO_PERMISSIONuser is not allowed to do this operation
ERR_VUI_NOT_CONNECTEDapplication is not yet connected
ERR_VUI_NOT_LOGGEDINuser is not logged in
ERR_VUI_CANT_READdata cannot be read yet
ERR_VUI_CANT_WRITEdata cannot be written yet
ERR_VUI_NO_VAULTuser cannot access to vault
ERR_VUI_LOGGING_IN_OR_REGISTERINGlogging or registering is in progress
ERR_ONGOING_SYNC_TRY_AGAIN_LATERsynchronization is ongoing. Please try again later
ERR_JSON_PARSE_ERRORJson parsing error

Error codes specific for particular operations, are presented in their descriptions.

Was this article helpful to you? Yes No

How can we help?