Search code examples
postsoappostmanhttp-post

Sending a SOAP request using Postman


I'm trying to send a SOAP request to the Loqate services following their API documentation found here.

The documentation says the SOAP end point is

https://api.addressy.com/Capture/Interactive/Find/v1.1/wsdlnew.ws

and the sample request is:

<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
        <Find
            xmlns="http://api.addressy.com/">
            <Key>AA11-AA11-AA11-AA11</Key>
            <Text>wr5 3da</Text>
            <IsMiddleware>True</IsMiddleware>
            <Container>GB|RM|ENG|3DA-WR5</Container>
            <Origin>52.182,-2.222</Origin>
            <Countries>GB,US,CA</Countries>
            <Limit>10</Limit>
            <Language />
            <Bias />
            <Filters />
            <GeoFence />
        </Find>
    </soap:Body>
</soap:Envelope>

So I load up Postman and make these steps, following the Postman guide from their blog.

When I send the request, I just get back this page . I'm not sure why it's not working.

enter image description here

How can I make a SOAP request to this API? What am I missing?


Solution

  • That's not the service endpoint, it's an address where you can get the WSDL. Inside that WSDL you will find the service endpoint:

    <soap:address location="http://services.postcodeanywhere.co.uk/Capture/Interactive/Find/v1.10/soapnew.ws"/>
    

    Send your request there. The endpoint is over http, but the https seems to be working on the same address: https://services.postcodeanywhere.co.uk/Capture/Interactive/Find/v1.10/soapnew.ws

    One other thing. If you want a more specific client than Postman, you could try SoapUI.