What is Web Service Call
EFM use SOAP Web Service Calls which is a method of communicating to an application and the data it has available.
Why Use Web Service Calls
The purpose of these Web Services is to allow you to create/modify/review your existing order processing system to extend its functionality to include a despatching component for your orders. It is assumed that the data required for creating a consignment will already exists in some capacity within one of your systems and as a result this data can be formatted for the purpose of transitioning order data into consignment data.
How to make a Web Service Call
What to Send? (Web Service WSDL)
Our Web Service Definition Language(WSDL) provides a complete overview of all calls that can be made through our SOAP Web Service, as well as the information requirements of each call.
http://support-ws.azurewebsites.net/Data/ChainIT/DataService.svc?wsdl \
Where you are sending the information? (Endpoint)
- UAT Endpoint: https://bau-uat-ws.azurewebsites.net/Data/ChainIT/DataService.svc
- Production Endpoint: https://enodo-ws.azurewebsites.net/Data/ChainIT/DataService.svc
What you are planning to do? (How to Define the Call)
i.e What function are you calling?
- Headers:
- Key: Content-Type Value: text/xml
- Key: SoapAction Value: <Insert Required SOAPAction from WSDL> (e.g. http://www.opensys.com.au/ChainIT/4.0/ChainITDataServices/IChainITService/Login)
*SoapUI automatically configures the "Header" based on the call being made. However for other applications it is critical the correct SoapAction Url is entered in to make the correct call
What are the information requirements
Body:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:cha="http://www.opensys.com.au/ChainIT/4.0/ChainITDataServices"> <soapenv:Header/> <soapenv:Body> <!-- Requirements of each soapAction can be found http://support-ws.azurewebsites.net/Data/ChainIT/DataService.svc?xsd=xsd0 --> <!-- Example XSD Schema available for Login <xs:element name="Login"> <xs:complexType> <xs:sequence> <xs:element minOccurs="0" name="userName" nillable="true" type="xs:string"/> <xs:element minOccurs="0" name="password" nillable="true" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> Example XSD Schema available for Login --> <!--Below Content Dependent on soapAction Selected --> <cha:Login> <!--Optional:--> <cha:userName>test@oneflo</cha:userName> <!--Optional:--> <cha:password>efm123</cha:password> </cha:Login> </soapenv:Body> </soapenv:Envelope>
*SoapUI automatically configures the Body Template based on the call being made. If you are using other applications you can use the "Example Body" from the required function definition below. Alternatively consult the Web Service Schema XSD (Link provided above)
Tip
Use the WSDL and SoapUI to test your own Web Service Calls quickly and easily
- Download & Install SoapUI: https://www.soapui.org/downloads/soapui.html
- Open SoapUI
- Click “SOAP”: Create your own SOAP Web Service Calls From the WSDL provided.
- Enter the WSDL URL: http://support-ws.azurewebsites.net/Data/ChainIT/DataService.svc?wsdl
*SoapUI Is not required to perform Web Service Calls, however this can aid significantly in interpreting the WSDL and understanding the information requirements of each call.
Other Possible Applications
- Postman https://www.getpostman.com/
- Advanced Rest Client (ARC) https://install.advancedrestclient.com/
*Using non-SOAP specific applications will require additional Configuration.
Web Service Functions/Calls
How to Create SOAP Web Service Calls - Function Defenition