How to manage Service URLs for your Corrigo Company

New development typically starts with the Service URL for the latest version of Corrigo Enterprise. For earlier versions, see the version selector in upper left corner of this page.

Automating Discovery of Service URLs

All API consumers must connect to a specific Corrigo Company. When a Corrigo Company is upgraded the Service URL shown above will change. API consumers released on older versions must redirect their SOAP messages to the correct Service URL immediately upon upgrade. Luckily, this process can be fully automated.

CorrigoDiscover.asmx is a stateless, version-neutral service listening at a single endpoint for each major global geographical region. The sole purpose of this service is to give you a precise response to the WSDL location that corresponds to the version of Corrigo for the Company you are connecting to.

📘

Important Note for Developers

API consumers need not re-download a new WSDL (design-time) after a Corrigo Company is upgraded, since the WSDL is backward compatible. Discovery pertains only to the destination for SOAP messages, regardless of what version of the WSDL was originally used to create the API consumer.

Discovery by Regions
Americas (includes USA and Canada)
Discovery WSDL: http://am-apilocator.corrigo.com/wsdk/CorrigoDiscover.asmx?wsdl
Asia Pacific (APAC)
Discovery WSDL: http://apac-apilocator.corrigo.com/wsdk/CorrigoDiscover.asmx?wsdl
Europe, Middle-east and Africa (EMEA)
Discovery WSDL: http://emea-apilocator.corrigo.com/wsdk/CorrigoDiscover.asmx?wsdl

Auto Discovery Example

In the example below, the Discovery method is executed for MY COMPANY. Notice the resulting Service URL is shown with a host name am-ce93a. This indicates Company is using Corrigo Enterprise version 9.3.

---------------- Request  --------------------------
Request Headers: SOAPAction : "http://corrigo.com/integration/GetCompanyWsdkUrl"
Connection : Keep-Alive
User-Agent : Apache-HttpClient/4.5.2 (Java/1.8.0_162)
Host : am-apilocator.corrigo.com
Accept-Encoding : gzip,deflate
Content-Length : 384
Content-Type : text/xml;charset=UTF-8


<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:int="http://corrigo.com/integration/">
   <soapenv:Header/>
   <soapenv:Body>
      <int:GetCompanyWsdkUrl>
         <int:CompanyName>MY COMPANY</int:CompanyName>
         <int:Protocol>HTTPS</int:Protocol>
      </int:GetCompanyWsdkUrl>
   </soapenv:Body>
</soapenv:Envelope>
---------------- Response --------------------------
Response Headers: Strict-Transport-Security : max-age=31536000; includeSubDomains
Cache-Control : private, max-age=0
Vary : Accept-Encoding
#status# : HTTP/1.1 200 OK
Date : Tue, 05 Feb 2019 20:16:01 GMT
Content-Type : text/xml; charset=utf-8


<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetCompanyWsdkUrlResponse xmlns="http://corrigo.com/integration/">
         <GetCompanyWsdkUrlResult xsi:type="GetCompanyWsdkUrlResult">
            <Url>https://am-ce93a.corrigo.com/wsdk/CorrigoService.asmx?wsdl</Url>
            <CompanyName>MY COMPANY</CompanyName>
            <Protocol>HTTPS</Protocol>
         </GetCompanyWsdkUrlResult>
      </GetCompanyWsdkUrlResponse>
   </soap:Body>
</soap:Envelope>