Shipment Tracking Web Service v1.0

alert This web service version will be deprecated in the future. Please use, or upgrade to Shipment Tracking v1.1.

The Shipment Tracking web service provides the functionality for Estes customers to retrieve status information about a shipment.

Availability

The service should be available 24 hours a day, 7 days a week. However, the service may not be available during planned outages.

Technical Support

Information about the Shipment Tracking web service can be provided by the Estes Sales Support team. Email address: salessupport@estes-express.com.

WSDL

The following WSDL URIs should be used to access the web service. In order to use the test web service, a My Estes account for that purpose must be enabled in the Estes test environment so that authentication will work. To enable your My Estes test account, reach out to salessupport@estes-express.com.

WSDL Production

http://www.estes-express.com/shipmenttracking/services/ShipmentTrackingService?wsdl

Detailed Service Information

The Shipment Tracking service provides Estes customers with the ability to obtain a status on any shipment by the shipment’s PRO number, Bill of Lading number, Purchase Order number, Interline PRO number or Load Order Number.

The WSDL describes the valid operations for the web service and serves as a template for the requests and responses for each operation. Samples of each request are listed under the Track Shipments tab.

Authentication

Use of the web service requires a valid My Estes user and password. If you do not yet have a My Estes account you may register for one here: My Estes Signup.

Schema Details

Each operation has a specific format that is defined by a schema within the WSDL. The schema contains many elements that accept only a finite set of valid values. Those elements and their valid values are listed below.

FieldDetailsDescription
auth Required: Yes      This is the authentication for the SOAP request. It is required and all of its child elements are required.
auth/user Required: Yes
Data Type: String
Min Length: 5
Max Length: 10
This is the My Estes user name that is used to login to the website.
auth/password Required: Yes
Data Type: String
Min Length: 5
Max Length: 10
This is the My Estes password that is used to login to the website.
requestID Required: Yes
Data Type: String
Min Length: 1
Max Length: 50
This is an identifier that should be unique to a given request. This is defined by the requester.
search This is the term used to search for the requested shipment. A search element is required, but only one is needed.
search/pro Required: No
Data Type: String
Min Length: 1
Max Length: 10
This is the Estes PRO number for the requested shipment.
search/bol Required: No
Data Type: String
Min Length: 1
Max Length: 25
This is the Bill of Lading number for the requested shipment.
search/po Required: No
Data Type: String
Min Length: 1
Max Length: 15
This is the Purchase Order number for the requested shipment.
search/
loadNumber
Required: No
Data Type: String
Min Length: 1
Max Length: 25
This is the Load Number for the requested shipment.
search/
interlinePro
Required: No
Data Type: String
Min Length: 1
Max Length: 25
This is the Interline PRO number for the requested shipment.

Typical usage is to send a test message. The same test message will be returned in the response.

Communication Pattern

Request/Reply  (This is a communication pattern in which the service requester sends a request to the service provider. The service provider processes the request, and sends a reply back to the requester. This is an on-time operation, meaning that there are no (long) time intervals between sending the request, the processing of the request, and sending the reply)

Preconditions

  1. A valid text message is required to be relayed back to the user.

Input

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ship="http://ws.estesexpress.com/shipmenttracking">
   <soapenv:Header/>
   <soapenv:Body>
      <ship:echoRequest>20111220-1541</ship:echoRequest>
   </soapenv:Body>
</soapenv:Envelope>

Output

If the echo request was successful, a response containing a message indicating success that includes the text message will be returned. An example of a successful response to the echo request is shown below:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
      <ship:echoResponse xmlns:bol="http://ws.estesexpress.com/shipmenttracking">20111220-1541</ship:echoResponse>
   </soapenv:Body>
</soapenv:Envelope></soapenv:Envelope>

The Shipment Tracking web service provides an interface to the pre-existing Shipment Tracking API utilized by the external Estes website. All business rules related to tracking of a shipment are applied to web service shipment tracking requests just as they are for the website.

Service Operation

trackShipments – Submit a request to track the current status of an Estes shipment

Communication Pattern

Request/Reply  (This is a communication pattern in which the service requester sends a request to the service provider. The service provider processes the request and sends a reply back to the requester. This is an on-time operation, meaning that there are no (long) time intervals between sending the request, the processing of the request and sending the reply.)

Preconditions

  1. A requester must have a valid My Estes user account and that account must have the appropriate privileges to call the shipment tracking web service.
  2. Minimal information required to retrieve the shipment status must be provided in the SOAP request to prevent the service from responding with errors.

Postconditions

  1. The shipment tracking request responds with information regarding the status of the specific shipment.
  2. Business validation errors are returned with a description for each.

Input

A valid shipment-identifying number is required.

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ship="http://ws.estesexpress.com/shipmenttracking" xmlns:ship1="http://ws.estesexpress.com/schema/2012/12/shipmenttracking">
   <soapenv:Header>
      <ship:auth>
         <ship:user>username</ship:user>
         <ship:password>password</ship:password>
      </ship:auth>
   </soapenv:Header>
   <soapenv:Body>
      <ship1:search>
         <ship1:requestID>987654321</ship1:requestID>
         <!--You have a CHOICE of the next 5 items at this level-->
         <ship1:pro>123-1234567</ship1:pro>
         <!--ship1:bol>BOL1234</ship1:bol>
         <ship1:po>PO1234</ship1:po>
         <ship1:loadNumber>LDN1234</ship1:loadNumber>
         <ship1:interlinePro>123-1234567</ship1:interlinePro-->
      </ship1:search>
   </soapenv:Body>
</soapenv:Envelope>

Output

The operation will respond with the following format if the shipment information has been retrieved from the Estes Shipment Tracking system.

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
      <ship:trackingInfo xmlns:ship="http://ws.estesexpress.com/schema/2012/12/shipmenttracking">
         <ship:requestID>allenle2013-01-21.1643</ship:requestID>
         <ship:shipments>
            <ship:shipment>
               <ship:pro>074-9149083</ship:pro>
               <ship:bol>CVL833248</ship:bol>
               <ship:po>HAA80286</ship:po>
               <ship:pickupDate>2011-08-16-04:00</ship:pickupDate>
               <ship:status>Delivered</ship:status>
               <ship:firstDeliveryDate>2011-08-23-04:00</ship:firstDeliveryDate>
               <ship:deliveryDate>2011-08-23-04:00</ship:deliveryDate>
               <ship:deliveryTime>09:53:00.000-05:00</ship:deliveryTime>
               <ship:receivedBy>TRACY</ship:receivedBy>
               <ship:appointment>
                  <ship:apptDate>2011-08-23-04:00</ship:apptDate>
                  <ship:apptTime>12:00:00.000-05:00</ship:apptTime>
                  <ship:status>Customer requested appointment</ship:status>
               </ship:appointment>
               <ship:pieces>1</ship:pieces>
               <ship:weight>378</ship:weight>
               <ship:shipper>
                  <ship:name>S K F USA INCORPORATED</ship:name>
                  <ship:address>
                     <ship:line1>1536 GENESIS ROAD</ship:line1>
                     <ship:city>CROSSVILLE</ship:city>
                     <ship:stateProvince>TN</ship:stateProvince>
                     <ship:postalCode>38555</ship:postalCode>
                  </ship:address>
               </ship:shipper>
               <ship:consignee>
                  <ship:name>CATERPILLAR INC</ship:name>
                  <ship:address>
                     <ship:line1>2800 E CEDAR HILLS DR</ship:line1>
                     <ship:line2/>
                     <ship:city>MOSSVILLE</ship:city>
                     <ship:stateProvince>IL</ship:stateProvince>
                     <ship:postalCode>61552</ship:postalCode>
                  </ship:address>
               </ship:consignee>
               <ship:destinationTerminal>
                  <ship:number>66</ship:number>
                  <ship:name>Bloomington</ship:name>
                  <ship:address>
                     <ship:line1>2150 North Main Street</ship:line1>
                     <ship:city>Normal</ship:city>
                     <ship:stateProvince>IL</ship:stateProvince>
                     <ship:postalCode>61761</ship:postalCode>
                  </ship:address>
                  <ship:phone>
                     <ship:areaCode>309</ship:areaCode>
                     <ship:subscriber>8623311</ship:subscriber>
                  </ship:phone>
                  <ship:fax>
                     <ship:areaCode>309</ship:areaCode>
                     <ship:subscriber>8623332</ship:subscriber>
                  </ship:fax>
               </ship:destinationTerminal>
               <ship:messages>
                  <ship:message>Reported delivery time is subject to change based upon verification.</ship:message>
               </ship:messages>
            </ship:shipment>
         </ship:shipments>
      </ship:trackingInfo>
   </soapenv:Body>
</soapenv:Envelope>

Error Message Response

If the user is not authorized to the web service authentication will fail. If the username and password provided is not from a valid and active My Estes profile then authentication will fail.

In the event that a business validation rule is violated, an error description will be returned to the user in the following format:

<soapenv:Fault>
         <faultcode>soapenv:Server</faultcode>
         <faultstring>GeneralErrorMsg</faultstring>
         <detail>
            <ship:generalError xmlns:ship="http://ws.estesexpress.com/shipmenttracking">
               <ship:error>Shipment tracking failed - Invalid PRO number.</ship:error>
            </ship:generalError>
         </detail>
      </soapenv:Fault>>