Shipment Tracking Web Service v1.1

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

This version of the Shipment Tracking Web Service includes the following improvements:

  • Event Time Stamp — Each shipment, returned by the trackShipments output, includes an eventTimeStamp for the current status of the shipment.
  • Party To Results Indicator — You can choose to return only shipments that you are a party to or all shipments that you are party to plus those that you are not a party to in our system. Visit the Service Information tab below to learn more about the search/onlyPartyToResultsInd field.

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 Web Support Team. Email address: WebSupport@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 WebSupport@estes-express.com.

WSDL Production

https://api.estes-express.com/tools/EstesShipmentTracking/v1.1/?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 on this page.

Authentication

Use of the web service requires Basic Authentication via a valid My Estes username 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
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.
search/
onlyPartyToResultsInd
Required: No
Data Type: Boolean
Setting the value to “true” will return shipments that you are a party to in the system. Setting this indicator to “false” will return all shipments based on the search criteria (PRO number, etc.), including those that you are not a party to in our system.

The default value is "true".

Details

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="https://schemas.xmlsoap.org/soap/envelope/" xmlns:v1="https://api.estes-express.com/ws/tools/shipment/tracking/v1.1/">
   <soapenv:Header/>
   <soapenv:Body>
      <v1:shipmentTracking>
         <search>
            <requestID>4542ss3sXX433</requestID>
            <!--Optional:-->
            <pro></pro>
            <!--Optional:-->
            <bol>834557</bol>
            <!--Optional:-->
            <po></po>
            <!--Optional:-->
            <loadNumber></loadNumber>
            <!--Optional:-->
            <interlinePro></interlinePro>
            <!--Optional:-->
            <onlyPartyToResultsInd>false</onlyPartyToResultsInd>
         </search>
      </v1:shipmentTracking>
   </soapenv:Body>
</soapenv:Envelope>

Output

<soapenv:Envelope xmlns:soapenv="https://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
      <ser-root:shipmentTrackingResponse xmlns:ser-root="https://api.estes-express.com/ws/tools/shipment/tracking/v1.1/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
         <trackingInfo>
            <requestID>45423433</requestID>
            <shipments>
               <shipments>
                  <pro>1710394802</pro>
                  <bol>NS</bol>
                  <po>6769</po>
                  <pickupDate>2016-01-12</pickupDate>
                  <status>Delivered</status>
                  <eventTimeStamp>2016-01-15T18:20:00-0500</eventTimeStamp>
                  <movementHistory></movementHistory>
                  <estimatedDeliveryDate>2016-01-15</estimatedDeliveryDate>
                  <estimatedDeliveryTime>13:20:00</estimatedDeliveryTime>
                  <receivedBy/>
                  <appointment>
                     <apptDate/>
                     <apptTime/>
                     <status></status>
                  </appointment>
                  <pieces>1</pieces>
                  <dimensionalWeight/>
                  <weight>450</weight>
                  <shipper>
                     <referenceNumber/>
                     <name>GOLDEN CANNOLI</name>
                     <address>
                        <line1>99 CRESCENT AVE</line1>
                        <line2/>
                        <city>CHELSEA</city>
                        <stateProvince>MA</stateProvince>
                        <postalCode>02150</postalCode>
                        <countryCode/>
                     </address>
                  </shipper>
                  <consignee>
                     <referenceNumber/>
                     <name>ALESSI BAKERY</name>
                     <address>
                        <line1>5202 EAGLE TRAIL DR</line1>
                        <line2/>
                        <city>TAMPA</city>
                        <stateProvince>FL</stateProvince>
                        <postalCode>33634</postalCode>
                        <countryCode/>
                     </address>
                  </consignee>
                  <thirdParty>
                     <referenceNumber/>
                     <name/>
                     <address>
                        <line1/>
                        <line2/>
                        <city/>
                        <stateProvince/>
                        <postalCode/>
                        <countryCode></countryCode>
                     </address>
                  </thirdParty>
                  <destinationTerminal>
                     <number>048</number>
                     <name>TAM</name>
                     <address>
                        <line1>6360 East Hanna Avenue</line1>
                        <line2></line2>
                        <city>Tampa</city>
                        <stateProvince>FL</stateProvince>
                        <postalCode>33610</postalCode>
                        <countryCode></countryCode>
                     </address>
                     <phone>
                        <country/>
                        <areaCode>813</areaCode>
                        <subscriber>6213636</subscriber>
                        <extenstion></extenstion>
                     </phone>
                  </destinationTerminal>
                  <interlineInfo/>
                  <freightCharges>164.42</freightCharges>
                  <messages>
                     <message>Freight Charges are shown on shipments for which the logged in user is the payor of the freight charges.</message>
                     <message/>
                     <message>Reported delivery time is subject to change based upon verification.</message>
                  </messages>
               </shipments>
            </shipments>
         </trackingInfo>
      </ser-root:shipmentTrackingResponse>
   </soapenv:Body>
</soapenv:Envelope>

Error Message Response

If the user is not authorized for the web service, authentication will fail. If the username and password provided are 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>
            <trackingError>
            <error>
               <elementName>GeneralErrorMsg</elementName>
               <code>422</code>
               <description>Shipment tracking failed - Invalid PRO number</description>
               <badData>XXX-313123</badData>
            </error>   
</soapenv:Fault>