TrackService WSDL Guide

Embed Size (px)

Citation preview

  • 7/25/2019 TrackService WSDL Guide

    1/130

    July 2011

    Track Service

  • 7/25/2019 TrackService WSDL Guide

    2/130

    Legal and Copyright Notices

    Agreement. The information in this document may be changed at any timePaymentwithout notice. Any conflict between this guide, the FedEx Automation

    You must remit payment in accordance with the FedEx Service Guide, tariff,Agreement and theFedEx Service Guideshall be governed by the FedExservice agreement or other terms or instructions provided to you by FedExAutomation Agreement and theFedEx Service Guide, in that order.

    from time to time. You may not withhold payment on any shipments because 2011 FedEx. FedEx and the FedEx logo are registered service marks. Allof equipment failure or for the failure of FedEx to repair or replace anyrights reserved. Unpublished.equipment.

    DisclaimerConfidential and ProprietaryAll Improper Transaction scenarios are for example only. They do not reflectThe information contained in this guide is confidential and proprietary toall error condition scenarios.FedEx Corporate Services, Inc. and its affiliates (collectively FedEx). No part

    of this guide may be distributed or disclosed in any form to any third party

    without written permission of FedEx. This guide is provided to you under andits use is subject to the terms and conditions of the FedEx Automation

    FedEx Web Services, Track Service 2

  • 7/25/2019 TrackService WSDL Guide

    3/130

  • 7/25/2019 TrackService WSDL Guide

    4/130

    About This Guide

    Support

    Document Organization

    Resources

  • 7/25/2019 TrackService WSDL Guide

    5/130

    About This Guide

    This guide describes how to work with FedEx Web Services. FedEx Service Guide:fedex.com/us/service-guide

    It is written for the application developer who uses web services to design Web Services organization home page: www.webservices.org

    and deploy applications enabled by FedEx. It describes how to get started Microsoft Web Services:msdn.microsoft.com/webserviceswith application development and how to use the Application Programming

    OReilly XML.com:www.xml.comInterface (API). It also describes each available service in addition to the Secure Socket Layer Certificates:fedex.com/us/developer/downloads/business logic that drives each FedEx process.

    dev_cert.zip

    Document OrganizationSupport

    Each web service provides access to FedEx features. The service descriptionFor FedEx Web Services technical support, you can reach FedEx atincludes service details and a full schema listing to facilitate [email protected] call 1.877.339.2774 and state Web Servicesdevelopment.

    at the voice prompt. Support hours are Monday through Friday, 7 a.m. to 9p.m. (CST) and Saturday, 9 a.m. to 3 p.m. (CST). For FedEx Customer Service,Resourcescall1.800.GoFedEx 1.800.463.3339.

    The following may also be useful for FedEx Web Services developers:

    FedEx Services At-a-Glance:fedex.com/us/services/ataglance

    FedEx Web Services, Track Service 5

    http://fedex.com/us/service-guide/http://www.webservices.org/http://msdn.microsoft.com/webserviceshttp://www.xml.com/http://fedex.com/us/developer/downloads/dev_cert.ziphttp://fedex.com/us/developer/downloads/dev_cert.zipmailto:[email protected]://www.fedex.com/us/services/ataglance.htmlhttp://www.fedex.com/us/services/ataglance.htmlmailto:[email protected]://fedex.com/us/developer/downloads/dev_cert.ziphttp://fedex.com/us/developer/downloads/dev_cert.ziphttp://www.xml.com/http://msdn.microsoft.com/webserviceshttp://www.webservices.org/http://fedex.com/us/service-guide/
  • 7/25/2019 TrackService WSDL Guide

    6/130

    1 Introduction

    Implementation Process

    Document Overview

    Web Services, WSDL, and SOAP Overview

    Implementing FedEx Web Services

    Understanding the XML Schema

  • 7/25/2019 TrackService WSDL Guide

    7/130

    ChapterChapter 11

    Introduction

    FedEx Web Services gives you the tools to build custom platform- and Why should developers be interested in web services?interface-independent applications that access FedEx features. You can use Interoperability:Any web service can interact with any other web

    FedEx Web Services in a variety of ways to create customized integration service and can be written in any programming language.solutions for your specific shipping needs. Here are just a few of the ways a

    Ubiquity:Web services communicate using HTTP and XML. Anycompany can use web services to streamline operations, improve visibility,connected device that supports these technologies can both host andand provide more choices to clients:access web services.

    Verify Addresses and Improve Customer Satisfaction: Prompt Low Barrier to Entry:The concepts behind web services are easy tocustomers for additional information in the event of an address

    understand, and developers can quickly create and deploy them usingdiscrepancy or missing information with the Address Validation WSDL.many toolkits available on the web.

    Give Customers More Options: Help customers learn about all the Industry Support:Major content providers and vendors support the webavailable shipping options and rates with the Ship Service WSDL,

    services movement.

    OpenShip WSDL, and the Rate Services WSDL. You can also extend this Any application running on any platform can interact with a web service byservice to your shopping cart and website, allowing customers to accessusing the Simple Object Access Protocol (SOAP) and Web Servicesmoney-saving information firsthand.Description Language (WSDL) standards for message transfer and service More Convenience:Use the Locator Service WSDL to find the FedExdiscovery. By following the standards, applications can seamlesslypickup location nearest your customer. Or, send an email to yourcommunicate with platform services.customers with a link to this service as part of your standard order-receipt

    process.

    Document Overview Offer Global Shipping Options:Create shipping labels for worldwidelocations. Improve customer service by offering more shipping options to This guide provides instructions for coding the functions you need to developcustomers in more countries with the consolidated Ship Service WSDL. FedEx supported applications. The following chapters make up this guide:

    Reduce Customer Service Costs: Decrease phone traffic from Introduction (this chapter):customers checking the status of their shipments and cut customer service

    Documentation overview and guidelines, including how to use the Helpcosts. FedEx provides online Tracking and Visibility Services that allow you

    application and how to print this guide.to provide customers with the status of shipments, Signature Proof of

    Overview information about web services, including a high-levelDelivery (SPOD), and Shipment Notification in the Ship Request.description of FedEx Web Services methods.

    Simplify Processes and Improve Satisfaction: In addition to Coding basics.ExpressTagAvailability, provide a simple way to allow customers to return

    an order with Email Labels. This service sends an email with the address Overview information about testing and certifying your application.(URL) of a website where the recipient can log in and print a return label. Each chapter covering FedEx Web Services coding includes:

    FedEx Web Services, Track Service 7

  • 7/25/2019 TrackService WSDL Guide

    8/130

    ChapterChapter 11

    Introduction

    Service Details: Business rules for using the FedEx service. FedEx Web Services Help opens in your default browser, such as InternetExplorer or Firefox. The first topic in this case, the cover page appears in Service Options: Links to additional services that can be added to the

    the main window. The Table of Contents (TOC) appears in the navigationbasic web service.column. Under the TOC you can choose the Index, Search, or Favorites

    Coding Details: Best practices information, basic request and reply options. Each of these features appears in the same column.elements, and a link to error messages.

    The toolbar across the top of the window displays the following elements: XML Schema: A link to the layout for the service. This layout provides

    Back: Returns you to the previously viewed topic.coding requirements for all elements in the schema.

    Forward: Goes to the next topic as listed in the TOC.Using FedEx Web Services Online Help

    Quick Search: Enter a search term andThis guide is available as online help at the FedEx Developer Resource Center(fedex.com/developer) inSupport > FedEx Web Services Developer

    click to highlight the term in the current topic. This feature onlyGuide. searches the current topic.

    Hide Navigation: Hides the left navigation column.

    Search: Opens the full search tool in the navigation column.

    Print: Opens thePrint dialog box.

    Home: Opens the default topic: in this case, the cover page.

    Add Topic to Favorites: Saves the current topic to your Favoriteslist.

    Printing This Guide or Online HelpYou can print all or part of this guide from both the PDF and WebHelpversions.

    Printing from the PDF Version

    From the PDF version you can print the complete document or a page rangeof the document.

    1. Open the PDF file and click the printer icon or clickFile> Print.

    FedEx Web Services, Track Service 8

    http://www.fedex.com/developerhttp://www.fedex.com/developer
  • 7/25/2019 TrackService WSDL Guide

    9/130

    ChapterChapter 11

    Introduction

    2. From thePrint dialog box you can print the complete document, specify a XML document that provides information about what the service does, thepage range, or choose from any of the available print options. methods that are available, their parameters, and parameter types. It

    describes how to communicate with the service in order to generate aPrinting from the WebHelp Version request to, or decipher a response from, the service.From the WebHelp version you can print a single topic or a page range of The purpose of a WSDL is to completely describe a web service to a client. Athat topic. WSDL defines where the service is available and what communications

    protocol is used to talk to the service. It defines everything required to writeOpen WebHelp and click the printer icon .a program to work with an XML web service. A WSDL document describes a

    From thePrint dialog box you can print the complete topic or specify a page web service using seven major elements. Elements can be abstract orrange. concrete.

    Abstract XML elements describe the web service: , ,Web Services, WSDL, and SOAP Overview

    , .This section describes the standard coding technologies used in FedEx Web Concrete XML elements provide connection details: , ,Services. .

    WSDL ElementsWeb ServicesWeb services are a collection of programming technologies, including XML,

    Elem ent DefinitionWeb Services Description Language (WSDL), and SOAP, which allow you tobuild programming solutions for specific messaging and application The root element contains name space definitions.integration.

    The most important WSDL element. It is a set of all operations that a web service

    can accept and is a container for elements. This WSDL elementWeb services are, by definition, platform independent. FedEx Web Servicesdescribes a web service, the operations that can be performed, and the messagesallow developers to build custom applications that are independent ofthat are involved, and can be compared to a function library (or a module or a

    changes to the FedEx interface. class) in a traditional programming language.Note: FedEx Web Services are not offered as part of a Universal Description Discovery and

    Defines variable types used in the web service (both the parameters passed to aIntegration (UDDI) and must be downloaded from the FedEx Developer Resource Center

    function and the type of the value passed back via the response). The data types(fedex.com/developer) and stored locally for development and usage.

    are described by XML schema. This element contains user-defined data types (in

    the form of XML schema). The element defines the data types that are

    used by the web service For maximum platform neutrality, WSDL uses XMLWSDLschema syntax to define data types.

    A SOAP request to, or response from, a service is generated according to theservices WSDL definition. A WSDL document describes a service. It is an

    FedEx Web Services, Track Service 9

    http://www.fedex.com/developerhttp://www.fedex.com/developer
  • 7/25/2019 TrackService WSDL Guide

    10/130

    ChapterChapter 11

    Introduction

    Element Defi nit ion SOAP Defines the data elements of an operation. Each message can consist of one or

    SOAP is a simple XML-based protocol that allows applications to exchangemore parts that can be compared to the parameters of a function call in a information over HTTP. SOAP is built on open standards supported bytraditional programming language.numerous development tools on various platforms. SOAP provides a way to

    Child of the element that defines each operation that the port exposes.communicate between applications running on different operating systems,This element allows three messages only:with different technologies and programming languages. The SOAP request

    Message Definitioninterface is an object in your application programming language.

    Input Message Data web servicices receiveSOAP enables the data to pass through layers of intermediaries and arrive at

    Output Message Data web servicervices sendthe ultimate receiver the way it was intended. It is worth noting that you may

    Fault Message Error messages from web services not need to actually construct the SOAP messages yourself manydevelopment tools available today construct SOAP behind the scenes. The element contains a child element that describes the URL

    where the service is located. This is the location of the ultimate web service. SOAP Message The element defines the message format and protocol details for each

    port. The binding element has two attributes: the name attribute and the type A SOAP message is an ordinary XML document that can be a request for aattribute. This element specifies how the client and the web service should send web service from a client or a reply from a web service to a client.messages to one another.

    Required

    Note: For more information about the WSDL standard, refer to the World Wide Web Optional Consortium (W3C) Website atw3.org/TR/wsdl.

    Required

    Example: Rate Request (SOAP Message)

    Optional

    Provider Key

    Provider Password

    FedEx Web Services, Track Service 10

    http://www.w3.org/TR/wsdlhttp://www.w3.org/TR/wsdl
  • 7/25/2019 TrackService WSDL Guide

    11/130

    ChapterChapter 11

    Introduction

    User Key

    User Password

    XXXXXXXXX

    XXXXXX

    ABCD

    1234

    Test v8 Rate Request

    crs

    8

    0

    0

    true

    2009-08-19T16:15:00-05:00

    REGULAR_PICKUP

    YOUR_PACKAGING

    123 Maple Street

    Akron

    OH

    44333

    US

    123 Oak Street

    Collierville

    TN

    FedEx Web Services, Track Service 11

  • 7/25/2019 TrackService WSDL Guide

    12/130

    ChapterChapter 11

    Introduction

    38017

    US

    ACCOUNT

    2

    INDIVIDUAL_PACKAGES

    1

    USD

    50.00

    LB

    20.0

    10

    10

    10

    IN

    CUSTOMER_REFERENCE

    TEST v8 REQUEST

    2

    USD

    50.00

    LB

    10.0

    5

    5

    FedEx Web Services, Track Service 12

  • 7/25/2019 TrackService WSDL Guide

    13/130

    ChapterChapter 11

    Introduction

    5

    IN

    Required

    Required

    Example: Delete Tag Request (SOAP Message)

    User Key

    User Password

    xxxxxxxxxxxxxxx

    DE_Shakeout_wsvc

    ship

    8

    0

    0

    FedEx Web Services, Track Service 13

  • 7/25/2019 TrackService WSDL Guide

    14/130

    ChapterChapter 11

    Introduction

    MQYA

    2008-10-08

    shipper

    xxxxxxxxx

    US

    997037200019454

    For more information about the SOAP standard, refer to the World Wide Web Consortium (W3C) Website at http://www.w3.org/TR/SOAP.

    Non-SOAP Web ServicesFedEx offers a non-SOAP web services solution that you can use to send transactions without having to use tools that provide SOAP protocol support for webservices. This may be convenient for developers using environments that do not provide support for SOAP. With this interface, XML documents are sent directlyto the FedEx servers via the HTTP POST command. FedEx provides a set of specifications and examples to help with the development of this type ofcommunications method.

    To use the non-SOAP web service solution, you must have a working knowledge of HTTPS and Secure Socket Layering (SSL) encryption, the ability to provide asecure SSL connection to FedEx and the ability to code to an operation interface using XML.

    The interfaces used in the SOAP and non-SOAP web services are defined in WSDL files. The WSDL files contain schemas that define the layout of the

    operations. The same WSDL file is used for both the SOAP and non-SOAP web service users.

    Non-SOAP users are concerned only with the schema definitions and not the other WSDL components that are SOAP-specific. The XML data that is sent via thenon-SOAP interface looks almost identical to the data that is sent via the SOAP interface. The only difference is that the data sent via the non-SOAP interfacedoes not contain the wrapping Envelope and Body tags that are specific to SOAP. An example of a request using the non-SOAP interface looks like this:

    FedEx Web Services, Track Service 14

    http://www.w3.org/TR/SOAPhttp://www.w3.org/TR/SOAP
  • 7/25/2019 TrackService WSDL Guide

    15/130

    ChapterChapter 11

    Introduction

    User Key

    User Password

    000000000

    0000000

    User Customizable Field

    trck

    4

    0

    0

    ttttttttttttttt

    TRACKING_NUMBER_OR_DOORTAG

    true

    Error Handling

    Error handling for non-SOAP operations is different from error handling for SOAP operations. The SOAP specification provides an error handling mechanism thatis not present for non-SOAP operations. For a SOAP operation, a fault is returned as a SOAP exception. For a non-SOAP request, the contents of the SOAP faultare returned as an XML document. These SOAP fault documents are returned in situations such as schema validation failures or when operation types areunrecognized. In the following example, a SOAP fault document is returned from a schema validation failure in which the AccountNumber element wasincorrectly sent as the AccountNumberx element:

    soapenv:Server

    5: Schema validation failed for request.

    FedEx Web Services, Track Service 15

  • 7/25/2019 TrackService WSDL Guide

    16/130

    ChapterChapter 11

    Introduction

    5

    Schema validation failed for request.

    Expected element 'AccountNumber@http://fedex.com/ws/ship/v8' instead of 'AccountNumberx@http://fedex.com/ws/ship/v8'

    here in element ClientDetail@http://fedex.com/ws/ship/v8

    000000000

    Expected element 'AccountNumber@http://fedex.com/ws/ship/v1' before the end of the content in element

    ClientDetail@http://fedex.com/ws/ship/v8

    000000000000000000

    0000000

    Validate

    Validate_request

    ValidateRequest

    request-pipeline

    Each reply should be checked for the Fault element to indicate failure in processing the message.

    Note: Normal error processing still applies; this is an additional error check for incorrect syntax in XML documents.

    Keep in mind that if you use either the SOAP or non-SOAP version of FedEx Web Services, labels are returned as Base64 encoded. To print shipping labels, youmust decode labels before sending them to your printer.

    FedEx Web Services, Track Service 16

  • 7/25/2019 TrackService WSDL Guide

    17/130

    ChapterChapter 11

    Introduction

    Non-SOAP HTTP POST Example Implementing FedEx Web ServicesThe following HTTPS POST example is a valid working example, but is not

    Before you begin your implementation of FedEx Web Services, make note ofguaranteed to work for all programming languages, applications, and host the following guidelines:systems:

    FedEx Web Services are designed for use by skilled developers who arefamiliar with the communication standards SOAP and Web Services

    POST /xml HTTP/1.0 Description Language (WSDL).Referrer: YourCompanyNameGoesHere

    Host: gatewaybetawsbeta.fedex.com Unlike traditional client/server models, such as a web server or web pagePort: 443 system, web services do not provide the user with a graphical userAccept: image/gif, image/jpeg, image/pjpeg, text/plain,

    interface (GUI). Instead, web services share business logic, data, andtext/html, */*processes through a programmatic interface across a network.Content-Type: image/gif

    Content-length: %d

    To perform a particular FedEx task such as tracking a package, you needYour FedEx Transaction to use a class, module, or function that creates your request, sends it tothe FedEx platform, and handles the response.Each line is followed by one new line character except Content-length and

    the FedEx transaction. Two new line characters follow the Content-length FedEx Web Services are designed to support any operating system andline. The FedEx transaction has no extra characters. The Content-length line coding language. Downloadable sample code is available in Java, C#, VB,should have the length of the FedEx transaction in place of the %d variable. .Net and PHP languages from the FedEx Developer Resource Center

    Technical Resources.Note: Port 443 must be opened for bi-directional communication on your firewall.

    Transactions submitted to FedEx using FedEx Web Services are required toAfter formatting your non-SOAP transaction and placing it in a HTTP POSThave a minimum of 128-bit encryption to complete the request.request, you will need to open an SSL connection to the FedEx test server

    and send the request through FedEx by using your SSL connection. Understanding the XML SchemaNext, parse the HTTPS response to determine if there were any errors.Examine the HTTP header to determine if any HTTP or Web Server errors The XML schema defines the messages that you can use to access the FedExwere encountered. If you received a 200 status code, parse the reply to Services. You create a request that contains business data and otherdetermine if there were any processing problems. instructions and you send it to FedEx. FedEx replies with a response that

    contains the data resulting from the instructions you sent in. Notice thatVisual Basic Project Error schema diagrams are conveniently linked to help you find information and

    child values.You may receive an error indicating that an element is not set, even aftersetting it in the code. When you set a Boolean type element to true, you mayalso need to set the specified element to true.

    FedEx Web Services, Track Service 17

  • 7/25/2019 TrackService WSDL Guide

    18/130

    ChapterChapter 11

    Introduction

    The XML schema provides a means for defining the structure, content, and elements and simple types as belonging to the vocabulary of the XMLsemantics of XML documents. schema language, rather than the vocabulary of the schema author.

    An XML schema defines: Guide to the XML Schema Elements and attributes that can appear in a document

    The XML schema for each WSDL provides details about the structure, Elements that are child elements

    content, and semantics of the request XML document sent to a FedEx Web Order and number of child elements Service and the XML document returned by that FedEx Web Service.

    Whether an element is empty or can include text The top of each service schema includes:

    Data types, default values, and fixed values for elements and attributes Schema location and schema file name that ends in an ".xsd" suffix.

    Some important facts about the XML schema: Alphabetical listing of complex types for the documented service.

    Elements that contain sub-elements or carry attributes have complex Alphabetical listing of schema simple types for the documented service.types.

    Input or request data type for the documented service. Elements that contain numbers (and strings, and dates, etc.), but do not

    Output or reply data type for the documented service.contain any sub-elements, have simple types. Some elements have

    The remainder of the service schema contains tables of information aboutattributes. Attributes always have simple types.each element, complex type, and simple type.

    Complex types in the instance document, and some of the simple types,Each table consists of some or all of the following sections: diagram,are defined in the schema associated with a FedEx Web Service. Othernamespace, children, type, properties, used by, facets, and source.simple types are defined as part of XML schema's repertoire of built-in

    simple types.XML Schema Diagrams

    XML schema built-in simple types are prefixed by "xs:", which is

    XML schema diagrams describe the elements (usually associated with aassociated with the XML schema namespace through the declarationrequest or reply), complex types, and simple types that make up the WSDL.xmlns:xs="http://www.w3.org/2001// XMLSchema", displayed in theThe following table illustrates the relationships and behavior of elements andschema element.types. The same prefix, and the same association, are also part of the names of

    built-in simple types, e.g., xs:string. This association identifies the

    FedEx Web Services, Track Service 18

  • 7/25/2019 TrackService WSDL Guide

    19/130

    ChapterChapter 11

    Introduction

    Schema Diagram Description Schema Diagram Description

    Diagrams of a parent A box with a dotted border

    element, such as indicates a single elementAddressValidationRequest, that is optional.

    include connections to the The type can be simple orchild elements. Child

    complex.elements can be simple or

    complex types.A layered box represents a

    A child element connected multiple occurrencewith a solid line and element. A solid linesurrounded by a box with a represents a requiredsolid border represents a multiple occurrencerequired type, such as element.ClientDetail.

    The number of possible

    A child element connected occurrences appears belowby a dotted line and the box, as depicted by thesurrounded by a dotted AddressResults element.border represents an

    An unbounded number ofoptional typeoccurrences is represented(minOccurs="0"), such asby the infinity symbolTransactionDetail.(maxOccurs="unbounded"),

    Note: An element that is as depicted by thedefined as minOccurs="0" Notifications type.may be required for some

    A layered box with a dottedcalls.border represents an

    Types that are documented optional multiple occurrence

    include the documentation type (minOccurs="0"), suchdirectly below the box. as ProposedAddressResults.

    All children are linked by Note: An element that isname below the diagram. defined as minOccurs="0"

    may be required for someA box with a single solid calls.border represents a single

    element that is required.

    The type can be simple or

    complex.

    FedEx Web Services, Track Service 19

  • 7/25/2019 TrackService WSDL Guide

    20/130

    ChapterChapter 11

    Introduction

    Note: Web Services now use two-factor authentication. If you do not have new credentials,Schema Diagram Descriptionthe latest WSDLs will use your old authentication credentials. If you do not have a new user

    A standard type such as authentication credential, do not populate the password element.

    string appears in blacktext below element name. ClientDetail:The ClientDetail element is required for all services that need

    your FedEx account number and meter number. Requirements are:A FedEx specific type suchas Address appears in

    red text below the element Element Descriptionname.

    ClientDetail/AccountNumber Required. Your FedEx account number.

    ClientDetail/MeterNumber Maximum of 9 characters. The associated meter number for yourRequired Elements FedEx account number.

    Most requests to FedEx require the following complex elements: A standard type such as string appears in black text below elementThese elements are common to most Web Services (see the following table

    name.for which WSDLs need which common elements) and are not documented A FedEx specific type such as Address appears in red text below theservice by service.

    element name.WebAuthenticationDetail: The WebAuthenticationDetail element includesNote: When building a Web-based application for shipping that will be used at multipleuser credentials issued by FedEx so that your transactions are recognized bylocations, include the local FedEx Express account and meter in the ClientDetail sectionthe FedEx back-end systems. The following elements are required:of the ship transaction. Create a database to hold multiple account and meter numbersfor the shipping locations.

    Element DescriptionTransactionDetail:The TransactionDetail element is optional for all

    WebAuthenticationDetail The descriptive data to be used in authentication of the shipper'stransactions. However, if you want to identify associated request and replyidentity and right to use FedEx Web Services.transactions, use this element.

    UserCredential Credential used to authenticate a specific software application. Thisvalue is provided by FedEx after registration.Element Description

    WebAuthenticationCredential Two-part authentication string used to verify shipper identity.TransactionDetail/ Maximum of 40 characters. This element allows you to assign a

    WebAuthenticationCredential/ Unique identifier assigned to each customer as part of their CustomerTransactionId unique identifier to your transaction. This element is returned in theKey authentication credentials. reply and helps you match requests to replies.

    WebAuthenticationCredential/ Second part of the authentication credential which has a direct

    Password r elationship wi th t he credent ia l key. VersionId:The VersionId element is required and uploads the WSDL versionnumber to FedEx. FedEx provides the latest version number for the service youare using. This number should be updated when you implement a new versionof the service.

    FedEx Web Services, Track Service 20

  • 7/25/2019 TrackService WSDL Guide

    21/130

    ChapterChapter 11

    Introduction

    Element Description Element Description

    ServiceId Identifies a system or sub-system which performs an operation. Residential Required if your shipper address is considered a residential location. If you are

    unsure, use the Address Validation Service to check your address.Major Identifies the service business level.

    Intermediate Identifies the service interface level.Reply Notifications

    Minor Ident if ies the service code level .Notifications are returned in replies. The notification element provides thenotification ranked according to their severity:

    Shipper Information:Your shipper information is required for all shipping HighestSeverity: This element ranks the level of notification severity.transactions:

    Values include:

    Element Descri pt ion FAILURE: Code/message explains that your request could not be handledAccountNumber If you include this element in the ship request, this entry overrides the account at this time; do not resubmit right now.

    number in the ClientDetail element. ERROR: Code/message identifies a problem with your request data; youTIN Tax Identification Number this information is required for international may fix the request data and try again.

    shipments only.

    WARNING: Your request was successful. However, the code/messageContact The Contact element includes:

    explains what had to be done to fulfill your request; you may need to PersonName

    determine whether that is what you intended, you may need to do this Title

    differently next time, or you may need to prepare for a future change. CompanyNameRequest was completed. Department

    PhoneNumber NOTE: Your request was successful. However, the code/message contains PagerNumber additional information about how your request was fulfilled; you do not

    FaxNumber need to take any special action. EmailAddress

    SUCCESS: Your request was successful. There are no NOTE or WARNINGAddress This element includes: notifications.

    StreetLines: two StreetLines elements are allowed.Note: There is a possibility of multiple Notification objects (different severity levels) for a Citysingle request. The response notification severity values of ERROR, FAILURE, and SUCCESS

    StateOrProvinceCode: required if your shipper address is in the U.S. or severity should never be combined in a single response.Canada.

    PostalCode: required. Notification Examples UrbanizationCode: may be required if your shipper address is in Puerto Rico.

    For example, if you need to perform a U.S. address correction, the service CountryCode: required.should accept a (U.S.) Address object from its client and return that Address

    FedEx Web Services, Track Service 21

  • 7/25/2019 TrackService WSDL Guide

    22/130

    ChapterChapter 11

    Introduction

    Case Replyin a standardized form (canonical spelling and abbreviation of street nameparts, elimination of redundant white space, data correction where possible, and street address. The service rejects the

    client's address.

    etc.). The following cases illustrate several notification types.Request to submit an Address that contains only Notifications: {ERROR, "City name is missing andThe example service has been assigned a NotificationSourceType value ofa single street line (no city, state, or postal code). cannot be corrected"}, {ERROR, "State code is

    "USACS".The service rejects the request. missing and cannot be corrected"}, {ERROR, "ZIP

    code is missing and cannot be corrected"} andCase Reply Address: empty (either all fields blank or no

    Address at all)Request to submit an Address that is valid and is Notifications: SUCCESS and Address: the original

    already in standardized form (i.e., there is nothing address (or copy). Request to submit an Address, but the address Notifications: {FAILURE, "Service temporarilyto say except "OK"). correction service's database server is down or unavailable"}, Address: empty (either all fields

    fails. blank or no Address at all).Request to submit an Address that is valid but Notifications: NOTE, "Standard abbreviation

    not in standardized form (e.g., the word applied to street name"}, {NOTE, "Standard

    "Boulevard" in a street name is replaced with the abbreviation applied to city name"} and Address:

    standard abbreviation "Blvd" and "Saint Louis" as the original address, with modification made to Implementation Processa city name is replaced with "St Louis"). the street name and city name.

    Planning your integration and organizing your application data to address yourRequest to submit an Address that is valid but Notifications: NOTE, "ZIP+4 suffix added"} and shipping needs can sometimes take more time than the actual implementationwith only a 5-digit postal code: the service Address: the original address, with the four-digit

    of the integration. FedEx Web Services conform to industry standards and aresupplies the ZIP+4 for the standardized address. suffix added to the postal code.compatible with a comprehensive array of developers tools. This ensures the

    Request to submit an Address that is identifiable Notifications: WARNING, "ZIP code corrected tofastest time-to-market with maximum flexibility to integrate FedExby street data, city name, and state code, but match rest of address"} and Address: the originaltransactions and information into your applications. FedEx WSDLs are fullywith a 5-digit postal code that does not match address, with the replacement postal code.

    the other fields. The service supplies the correct interoperable with any product or developers tool that also conforms to theZIP+4 for the standardized address. WS-I Basic Profile. For details, see http://www.ws-i.org/Profiles/BasicProfile-

    Request to submit an Address that has an Notifications: WARNING, "State code corrected to 1.1-2004-08-24.html.incorrect state code. The original address match city and ZIP code"} and Address: theTo obtain FedEx Web Services and begin integrating with an application, youcontains a ZIP+4 postal code belonging to a city/ original address, with the revised state code.

    state pair that matches the client's original city will need to access documentation, sample code, and sample service requestsand street address. The service supplies the and replies with the WSDLs from the FedEx Developer Resource Centercorresponding state code in the corrected

    Technical Resources. You will also need to obtain a test meter number toaddress.engage in real-time online testing in the FedEx hosted test environment.

    Request to submit an Address that has an Notifications: ERROR, "State code is incorrect forNote: Not all services are available outside the U.S.incorrect state code. The original address city/ZIP combination"} and Address: empty (either

    contains a ZIP+4 postal code belonging to a city/ all fields blank or no Address at all).

    state pair that matches the client's original city

    FedEx Web Services, Track Service 22

    http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.htmlhttp://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.htmlhttp://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.htmlhttp://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html
  • 7/25/2019 TrackService WSDL Guide

    23/130

    ChapterChapter 11

    Introduction

    Requirements for Corporate and Non-Commercial DevelopersTestingThere are some differences in how support is provided and in the approvalsFedEx supplies a complete online operating environment with which to testrequired to go into production that depend on whether you are creating anyour applications against live FedEx servers. In order to execute testapplication for use by your own company or you are planning to resell yourinteractions, you must first include a test account number, test meter number,solution to others.authentication key, and password in your code. These credentials are provided

    to registered developers. Requirements and Resources for Corporate Developers

    Corporate developers are typically part of a dedicated development team at aCertificationsingle company. This category also includes third-party developers

    Certification is the process of ensuring that your implementation meets a (consultants) hired by the company to work on its behalf. In all cases, thenumber of requirements for safe, secure, and effective operation of your integration will be used by the company itself and will not be resold orsolution in the FedEx production environment. Certification requirements differ distributed outside of its own footprint. In this situation, FedEx can support

    based on whether you are a corporate or commercial developer, and whether the customer directly.you are implementing using the advanced or standard services.

    Requirements and Resources for Corporate Developers

    Go to Production Must be accepted into the FedEx Compatible Solutions Program (CSP) No

    Once an application has passed certification, the developer must replace the Self-certification of implementations using standard services Yestest credentials with the production credentials issued by FedEx. The

    Self-certification of implementations using advanced services Noapplication connection is then directed to the production servers, and the

    Certification assistance Yes (WISC team)application is live.FedEx supports the customer directly YesOnce an application has completed the above mentioned process and

    requirements, FedEx will enable the providers CSP credentials for processing Preproduction Assistanceall applicable services in the production environment. The URL needed todirect the CSP application to the FedEx production servers will also be Preproduction assistance is available via the FedEx Web Integrated Solutionsprovided. The provider would then need to obtain production User Credentials Consultation (WISC) team. If you are in the preproduction stages of(Register CSP User Service) and a production meter number (Subscribe implementing a FedEx web integrated solution and would like to speak with aService). Once this information has been obtained with the connection FedEx integration consultant who can assist you in understanding FedEx Webdirected to the production servers, the providers application is considered Services, contact your FedEx sales executive or technical support atlive. 1.877.339.2774 Monday through Friday, 7 a.m. to 9 p.m. (CST), and Saturday 9

    a.m. to 3 p.m. (CST). Both your FedEx sales executive and technical supportcan request a WISC team member to contact you within 3 business days.

    FedEx Web Services, Track Service 23

  • 7/25/2019 TrackService WSDL Guide

    24/130

    ChapterChapter 11

    Introduction

    Requirements and Resources for Commercial DevelopersCorporate developers may find that solutions to their needs have alreadybeen implemented by a software vendor that is part of the FedEx FedEx supports the customer directly No

    Compatible Solutions Program. If improved time-to-market, cost containment, FedEx supports the commercial developers customer Indirectlyor specialized knowledge is needed, corporate development planners maywant to review the available third-party solutions. To see a list of the

    If you are a commercial developer interested in becoming a FedEx Compatiblesolutions provided by the CSP providers, go to the Available CSP SolutionsSolutions Provider, go to fedex.com/us/compatiblesolutions/provider/forpage: fedex.com/us/compatiblesolutions/.more information about the FedEx Compatible Solutions Program (CSP).

    Requirements for Consultants URL ErrorsConsultants developing on behalf of a corporate customer must ensure that

    If a VB.NET or C# project still sends transactions to the test server aftertheir client provides their account information and a signed End User License

    changing the URL in the WSDLs to print to production, perform the following:Agreement to FedEx in order to obtain a production test meter.

    Make sure permissions are already activated in the productionRequirements and Resources for Commercial Developers environment.

    Commercial developers create solutions with the intent of distributing and/or Copy the WSDL files to a different folder.reselling them to their customers. Because they are deployed in a variety of Follow the directions on changing the new WSDL files to point tosituations, commercial integrations generally require a higher order of fit and production as described in the FedEx Developer Resource Center in thefinish. Commercial developers are responsible for supporting their products Move to Production topic.for their customers. FedEx has a dedicated team of professionals to help

    Remove existing web services references from your project that point todevelopers commercialize their products and to coordinate the three-wayold WSDLs containing the URLs to the test environment.interplay between the developer, the end customer, and FedEx.

    Create new web references that point to the modified WSDLs. Use the

    same names as the old references.Requirements and Resources for Commercial Developers

    Compile and test the project. Your new production credentials should workMust be accepted into the FedEx Compatible Solutions Program (CSP) Yes (Required) for standard web services, such as rating or tracking without extraSelf-certification of implementation using standard services No permissions. Advanced web services require permissions to be active

    before they will work. Old test key values will now return an errorSelf-certification of implementations using advanced services Nomessage.

    Certification Assistance Yes (via CSP)

    FedEx Web Services, Track Service 24

    http://www.fedex.com/us/compatiblesolutions/provider/http://www.fedex.com/us/compatiblesolutions/http://www.fedex.com/us/compatiblesolutions/http://www.fedex.com/us/compatiblesolutions/provider/
  • 7/25/2019 TrackService WSDL Guide

    25/130

    2 Tracking and Visibility Services

    Error Messages

    Tracking Shipments

    Signature Proof of Delivery (SPOD)

    Notification

    FedEx InSight

    XML Schema

  • 7/25/2019 TrackService WSDL Guide

    26/130

    ChapterChapter 22

    Tracking and Visibility Services

    The TrackService WSDL provides the following services to actively track your significant shipment events, such as clearance delays, delivery attempts,shipments: releases, consolidated proof of delivery, and delivery pre-alerts. For more

    information regarding FedEx InSight, go to fedex.com/insight. Tracking ServiceUse the TrackService WSDL to obtain timely and accurate tracking

    Tracking Shipmentsinformation for FedEx Express, FedEx Ground, FedEx SmartPost, FedExHome Delivery, FedEx Express Freight, and FedEx Custom Critical Use the TrackService WSDL to use FedEx Tracking options to obtain timelyshipments. and accurate tracking information for FedEx Express, FedEx Ground, FedEx

    Signature Proof of Delivery (SPOD) Home Delivery, FedEx Custom Critical, and FedEx SmartPost shipments. ThisWSDL handles tracking numbers individually. Note that batch tracking is notUse FedEx SPOD to request a proof of delivery letter that includes aan option.graphic image of your recipients signature after your shipment has been

    delivered. You can also track the status of shipments by using a reference number, such

    as a purchase order (PO) number, customer reference, invoice, Bill of Lading Notification(BOL), part number, or Transportation Control Number (TCN).Use Notification to have FedEx automatically notify you and/or your

    customer and/or another third party by email, fax, or wireless ofTracking Service Detailssignificant shipment events, such as clearance delays, delivery attempts,

    releases, consolidated proofs of delivery, and pre-alerts. You can use FedEx track service to obtain timely and accurate trackingFedEx now offers a new email notification of Tendered, which may be information for FedEx Express, FedEx Ground, FedEx Home Delivery, FedExspecified with the shipment request, in addition to the existing Delivery, Cargo, FedEx SmartPost, and FedEx Custom Critical shipments. Basic trackingException, and Shipment email notifications. Use the Tendered email service details are:notification if you want an email notification sent to the specified FedEx Express and FedEx GroundSignature Proof of Delivery (SPOD) arerecipients once the shipment has been tendered to FedEx. This notification

    available for 18 months after the ship date.is supported for FedEx Express, FedEx Ground, FedEx Freight Economy, FedEx Express shipments support intra-Mexico shipping for Signature Proofand FedEx SmartPost.

    of Delivery (SPOD). FedEx InSight

    FedEx Custom Critical Signature Proof of Delivery (SPOD) is available forFedEx InSight is a web-based application that enables you to view the

    90 days.status of your inbound, outbound, and third-party shipments without a

    The TrackService WSDL handles tracking numbers individually. Batchtracking number. All you need is your account number and/or companytracking is not supported in this service.name and address. You can see information about the status of your

    shipments so you can more effectively manage your supply-chainprocesses. FedEx InSight also notifies you by email, fax, or wireless of

    FedEx Web Services, Track Service 26

    http://www.fedex.com/insighthttp://www.fedex.com/insight
  • 7/25/2019 TrackService WSDL Guide

    27/130

    ChapterChapter 22

    Tracking and Visibility Services

    You can track the status of shipments using a reference number, such as TCN (not available for FedEx SmartPost)a PO number, customer reference, invoice number, BOL, part number, or BOL (not available for FedEx SmartPost)

    TCN. Note: If you enter a tracking number as part of this Request, the tracking number alwaystakes precedence over the Reference element. Therefore, if you enter a tracking number for aRefer toTrackService Coding Details and the Track Schema for syntaxshipment that does not include the Reference data you requested, the tracking number isdetails.returned with no error message. To limit the number of tracking replies for a specific

    For more detailed information about the services offered by FedEx, see the reference, you can enter a date range for this search.electronicFedEx Service Guide. Note: Tracking requests cannot be batch processed at this time.

    Track by Multiple-Package Shipment (MPS) Tracking NumberTracking Service OptionsThis option is available for FedEx Express U.S. and International multiple-The following options are available with this service:package shipments, FedEx Ground U.S. and international multiple-package

    Track by Tracking Number shipments, FedEx Express U.S. C.O.D. and International C.O.D. multiple-package shipments and FedEx Ground U.S. C.O.D. and FedEx InternationalThis option applies to FedEx Express, FedEx Ground, and FedEx Custom

    C.O.D. multiple-package shipments. MPS tracking allows you to track by theCritical shipments. You can track any package shipped by FedEx using thismaster tracking number or by one of the associated sequential trackingtracking method. No extra qualifiers (date range, etc.) are required for thisnumbers for child packages. Tracking by the master tracking number returnsmethod, but are recommended. It is also recommended that you provide thetracking data for all child tracking numbers associated with the master.Carrier Code to ensure the desired results for your request.Tracking by the child tracking number returns tracking data on the specific

    Track by Reference Number shipment associated with that tracking number.

    This option applies to FedEx Express, FedEx Ground, FedEx Cargo, FedEx Track by Door Tag NumberSmartPost, and FedEx Custom Critical shipments. You can track packages by a

    This option is available for FedEx Express and FedEx Ground U.S. andreference number entered during the shipping operation. Track by Reference Canadian shipments. This option allows you to track shipment status by aNumber can use any of the following sources:FedEx Door Tag number. A Door Tag is left at the recipients shipping address

    Shipper/Customer Referenceif the recipient is not there to receive the package. A Door Tag number is

    Invoice Number linked at FedEx with the packages original tracking number. This trackingfunctionality allows you to track using only the Door Tag number without POrequiring the associated tracking number. No additional search elements are

    Department (not available for FedEx SmartPost)required to track by Door Tag. You may request tracking scan information for

    Part Number (not available for FedEx SmartPost) any packages shipped by FedEx by entering a valid Door Tag number.

    Returns Material Authorization (RMA)

    FedEx Web Services, Track Service 27

    http://www.fedex.com/us/service-guide/http://www.fedex.com/us/service-guide/
  • 7/25/2019 TrackService WSDL Guide

    28/130

    ChapterChapter 22

    Tracking and Visibility Services

    TrackService Coding Details

    TrackRequest Elements

    In addition to basic elements required for all transactions, the followingelements make up the TrackRequest.

    Element Required Description

    ClientDetai l/Localization/LanguageCode Yes LanguageCode Required to receive t racking information in your local language. Val id codes are:

    ar = Arabic

    da = Danish

    de = German

    en = English

    es = Spanish es with locale code US = US Spanish

    es with locale code ES = Spain

    fr = French

    fr with locale code CA = Canadian French

    he = Hebrew

    it = Italian

    ja = Kanji

    ko = Korean

    nl = Dutch

    pt = Portuguese

    sv = Swedish

    zh with locale code CN = Chinese Simple

    zh with locale code HK = Chinese Traditional Hong Kong

    zh with locale code TW = Chinese Traditional Taiwan

    cs = Czech

    el = Greek

    hu = Hungarian

    pl = Polish

    ru = Russian

    tr = Turkish

    FedEx Web Services, Track Service 28

  • 7/25/2019 TrackService WSDL Guide

    29/130

    ChapterChapter 22

    Tracking and Visibility Services

    Element Required Description

    Defaults to en if no value entered.

    Note: In addition to tracking data, any error conditions will also be returned in the language you choose.

    ClientDetai l/Localization/LocaleCode Yes Required to further ident ify the LanguageCode element. For example, i f you choose ES for Spanish, you must include

    U.S. for North American Spanish.

    PackageIdentifier Yes The PackageIdentifier element is required to track by reference information. Two elements make up the

    PackageIdentifier.

    Valid values are:

    BILL_OF_LADING

    COD_RETURN_TRACKING_NUMBER

    CUSTOMER_AUTHORIZATION_NUMBER

    CUSTOMER_REFERENCE

    DEPARTMENT FREE_FORM_REFERENCE

    GROUND_INTERNATIONAL

    GROUND_SHIPMENT_ID

    GROUP_MPS

    INVOICE

    JOB_GLOBAL_TRACKING_NUMBER

    ORDER_GLOBAL_TRACKING_NUMBER

    ORDER_TO_PAY_NUMBER

    PARTNER_CARRIER_NUMBER

    PART_NUMBER

    PURCHASE_ORDER

    RETURN_MATERIALS_AUTHORIZATION

    RETURNED_TO_SHIPPER_TRACKING_NUMBER

    TRACKING_CONTROL_NUMBER

    TRACKING_NUMBER_OR_DOORTAG

    TRANSPORTATION_CONTROL_NUMBER

    SHIPPER_REFERENCE

    STANDARD_MPS

    FedEx Web Services, Track Service 29

  • 7/25/2019 TrackService WSDL Guide

    30/130

    ChapterChapter 22

    Tracking and Visibility Services

    Element Required Description

    The corresponding value associated with the PackageIdentifier/Type is required. For example, if you track by

    SHIPPER_REFERENCE, you must enter the reference detail in the Value element.

    Tracki ngNumber Uni que I dent if ier N o Requir ed if a previous Track by N um ber r epl y indicat es t hat dupli cat es exi st . The previ ous r eply r et ur ns summary

    information about available choices along with this element.

    Duplicates: If you want to receive all tracking information for one of the items returned in the duplicate summary

    reply, in the next tracking request, include the tracking number and the information returned in the previous

    TrackingNumberUniqueIdentifier element.

    ShipDateRangeBegin/ShipDateRangeEnd No Optional, but recommended. Required entry of date range to f ind desired results for reference t racking number. I f not

    provided, FedEx defaults this value to a range that may not refine the search as needed.

    Begin must be < 730 days from current date .

    Begin must be < = End date.

    End cannot be > current date + 1.

    Range (EndBegin) must be < 30 days.

    Range (EndBegin) must be < = 90 (30-day range is applicable to Track by Reference option only).

    Special rule for an Express Track by number request with a begin date > 90 days. The BeginEnd range is

    limited to 10 days.

    ShipmentAccountNumber No If you choose to tr ack by reference (using the PackageIdent ifier element), you must eit her include the account

    number for the packages to be tracked or the Destination/Postal Code and Destination/CountryCode to further

    identify the packages you want to track.

    Destination No Physical location (address) to which the package will be shipped.

    IncludeDetailedScans No If FALSE (the default), the reply will contain summary/profile data including current status.

    If TRUE, the reply will contain profile and detailed scan activity (multiple TrackDetail objects) for each package.

    PagingToken No If you receive an original tracking request that indicates duplicates exist, this element is required with the

    TrackingNumberUniqueIdentifier element to request additional scan information. The information in this element is

    provided in the original reply request.

    Element DescriptionTrackReply Elements

    DuplicateWaybill This element is returned in the TrackService reply if duplicates exist.

    In addition to standard reply elements, the following elements are returned in To receive a tracking number, you must send another request andinclude the TrackingNumberUniqueIdentifier and PagingTokena successful TrackReply.elements in the second request.

    FedEx Web Services, Track Service 30

  • 7/25/2019 TrackService WSDL Guide

    31/130

    ChapterChapter 22

    Tracking and Visibility Services

    Element Description Element Elements Elements

    ServiceCommitMessage Est imatedDeliveryTimestampMoreData Returned if additional data exists for the track request. You may send

    another request with the tracking number, tracking number unique CarrierCode ActualDeliveryTimestampidentifier (included in the original reply), and paging token (includedOtherIdentifiers DeliveryLocationCode\

    in the original reply) to receive additional data.DeliveryLocationDescription

    ValuePagingToken Returned if duplicate waybill or additional tracking data indicators are DeliverySignatureName

    Typeincluded in the reply. Required to request additional tracking data.SignatureProofOfDeliveryAvailableServiceInfo

    TrackingNumber Tracking number associated with track information; this element isProofOfDeliveryNotificationsAvailablePackageWeightalso returned for Track by Reference requests.ExceptionNotificationsAvailableUnitsTrackingNumberUnique Returned if a duplicate waybill or tracking data indicators areEventsTimestampincluded in the reply. Required to request additional tracking data. ValueIdentifierEventTypeShipmentWeight

    ServiceCommitMessage Only applicable for H3 Express freight areas inbound to the U.S. sinceEventDescription

    Unitsadditional days may be required for final delivery. For more StatusExceptionCodeinformation, see theFedEx Service Guide. Value

    StatusExceptionDescriptionExpressRegionCode The FedEx Express region code where this transaction originated. PackagingValid values are: AddressPackageSequenceNumberAPAC: Asia and Pacific Rim CityPackageCountCA: Canada StateOrProvinceCodeEstimatedPickupTimestampEMEA: Europe, Middle East, and Africa PostalCodeShipTimestampLAC: Latin America and Caribbean UrbanizationCodeDestinationAddressUS: United States CountryCode

    City

    ResidentialStateOrProvinceCode

    In addition to these reply elements, the following informational elements arealso returned: Note: These elements provide further identification of the package in the TrackService reply.

    Tracking ScansElement Elements Elements

    Refer to the following Tracking Status Codes table for definitions of trackingTr ackReply/ Tr ackingNumber PostalCode (string): nullTrackDetails scan codes:TrackingNumberUniqueIdentifier UrbanizationCode

    StatusCode CountryCode

    StatusDescription Residential

    FedEx Web Services, Track Service 31

    http://www.fedex.com/us/service-guide/http://www.fedex.com/us/service-guide/
  • 7/25/2019 TrackService WSDL Guide

    32/130

    ChapterChapter 22

    Tracking and Visibility Services

    Code Definition Code Definition Service DetailsAA At Airport EO Enroute to Origin Airport

    To view detailed SPOD information, include the 9-digit FedEx accountAD At Delivery EP Enroute to Pickup number in the SPOD FAX or letter request.AF At FedEx Facility FD At FedEx Destination If an account number is not provided, or if it does not match the shipperAP At Pickup HL Hold at Location or payer, then only summary SPOD information will be provided.

    CA Shipment Canceled IT In Transit If an SPOD letter is requested, it will be returned in PDF format that canbe printed, browsed, or emailed.CH Location Changed LO Left Origin

    An SPOD FAX request will request a FAX format of the SPOD to be sentDE Delivery Exception OC Order Createdto a specific FAX number.

    DL Delivered OD Out for Delivery

    There is no charge for SPOD.DP Departed FedEx Location PF Plane in Flight

    For more detailed information about the services offered by FedEx, see theDR Vehicle Furnished, Not Used PL Plane LandedelectronicFedEx Service Guide.

    DS Vehicle dispatched PU Picked Up

    SPODLetterRequest ElementsDY Delay RS Return to Shipper

    EA Enroute to Airport delay SE Shipment Exception Use this request if the SPOD should be sent as a letter.

    ED Enroute to Delivery SF At Sort Facility In addition to basic elements required for all transactions, the followingelements make up the SPODLetterRequest.EO Enrout e to Origin airpor t SP Split status - mult iple statuses

    EP Enroute to Pickup TR TransferElement Required Description

    TrackingNumber Y es S hi pm ent t racking number .

    Signature Proof of Delivery (SPOD) ShipDate No Date on which package was shipped.To confirm a shipment has been received and signed for, you can use the AccountNumber No Account number associated with the shipment.SPOD request FAX or letter function of the TrackService WSDL. With this Carrier FedEx service that delivered the package.feature, you can request a letter that includes a graphic of the recipients

    Dest inat ion Only countr y is used f or el imi nat ion of dupl icat e t racki ngsignature for FedEx Express and FedEx Ground shipments. numbers.

    Addit ionalComments No Any addit ional information.

    LetterFormat Yes Specify the letter format. Must be included when type is

    set to Letter.

    FedEx Web Services, Track Service 32

    http://www.fedex.com/us/service-guide/http://www.fedex.com/us/service-guide/
  • 7/25/2019 TrackService WSDL Guide

    33/130

    ChapterChapter 22

    Tracking and Visibility Services

    Element Required Description Element Required Description

    ko = KoreanC onsignee No I nf or mation t o be subst it ut ed f or r ec ipi ent informati on in

    the letter. nl = Dutch

    pt = Portuguese

    sv = SwedishSPODLetterReply Elements zh with locale code CN = Chinese Simple

    In addition to standard reply elements, the following element is returned in a zh with locale code HK = Chinese Traditional HongKongsuccessful SPODLetterReply.

    zh with locale code TW = Chinese Traditional Taiwan

    Element Description cs = Czech

    el = GreekLetter Base64-encoded SPOD letter. hu = Hungarian

    pl = PolishSPODFaxRequest Elements

    ru = Russian tr = TurkishUse this request if the SPOD should be sent as a FAX.

    Defaults to en if no value entered.In addition to basic elements required for all transactions, the followingNote: In addition to tracking data, any error conditions willelements make up the SPODFaxRequest.also be returned in the language you choose.

    Element Required Description T rackingNumber Y es S hi pm ent t racking number .

    ClientDetai l/Localization/ Yes LanguageCode Required to receive t racking information ShipDate No Date on which the package was shipped.

    LanguageCode in your local language. Valid codes ar e:AccountNumber No Account number associated with the shipment.

    ar = Arabic

    Carrier FedEx service that delivered the package. da = Danish

    de = German Dest inat ion Only countr y is used f or el imi nat ion of dupl icat e t racki ngnumbers. en = English

    es = Spanish Addit ionalComments No Any addit ional information. es with locale code US = US Spanish

    LetterFormat Yes Specify the letter format. Must be included when type is es with locale code ES = Spain

    set to Letter. fr = French

    C onsignee N o Informati on t o be substit ut ed f or r ec ip ient i nf or mation in fr with locale code CA = Canadian Frenchthe letter.

    he = Hebrew

    it = Italian

    ja = Kanji

    FedEx Web Services, Track Service 33

  • 7/25/2019 TrackService WSDL Guide

    34/130

    ChapterChapter 22

    Tracking and Visibility Services

    SPODFaxReply Elements applicable. For a sample see the followingSPOD Sample Letter Partialexample.

    In addition to standard reply elements, the following element is returned in a

    successful SPODFaxReply. Detailed SPOD

    You can obtain a SPOD letter with detailed information by providing the 9-Element Descriptiondigit FedEx account number. If the account number matches the shipper or

    FaxConfirmationNumber Number of the FAX where confirmation is to be sent.payer of the shipment, you will be able to view detailed SPOD information,which includes complete contact name, company name, street address, city,

    Additional Information state/province, postal code, and country information for both the shipper andrecipient (if available). The signature image and additional recipient

    Tracking and SPOD Differencesinformation may not be available for display in all countries and will be

    You can use Tracking to check the status of your shipment at any time indicated on the SPOD where applicable. For a sample see the following

    during and within 18 months after delivery. SPOD Sample Letter Fullexample. You can use SPOD to obtain an image of the recipient's signature (if the Service Availability

    signature is available) once the shipment has been delivered.You can get proof-of-delivery for FedEx Express and FedEx Ground shipments

    SPOD Data Availability that were delivered to destinations worldwide (where available). For moreinformation, contact FedEx Customer Service.Signature Proof of Delivery is available for FedEx Express and FedEx Ground

    shipments up to 18 months from the ship date. This includes the signature No Signature Foundimage and associated shipment data. The signature image and additional

    Signatures can take up to five days to process. Even if no signature isrecipient information may not be available for display in all countries and isavailable, you can receive the available proof of delivery information. You canindicated on the SPOD where applicable.

    also check again later for the signature. If no signature is available afterSummary SPOD seven business days, call1.800.GoFedEx 1.800.463.3339. Note that thesignature may be unavailable if it was released (the shipper or recipientYou can obtain a SPOD letter with summary information without providing thesigned a signature release agreement).9-digit FedEx account number. This letter contains all the same information asNote: SPOD requests cannot be batch-processed. If you need multiple SPOD documents, youDetailed SPOD, but only contains the city, state/province, and countrymust create multiple requests. The returned SPOD PDF buffer is encoded in Base64 and theninformation for the shipper and recipient. The signature image may not bemust be Base64 decoded.

    available for display in all countries and is indicated on the SPOD where

    FedEx Web Services, Track Service 34

    ChCh

  • 7/25/2019 TrackService WSDL Guide

    35/130

    ChapterChapter 22

    Tracking and Visibility Services

    SPOD Sample Letter Partial SPOD Sample Letter Full

    FedEx Web Services, Track Service 35

    ChCh 22

  • 7/25/2019 TrackService WSDL Guide

    36/130

    ChapterChapter 22

    Tracking and Visibility Services

    You may select a valid language code for your communication. If noNotificationlanguage code is indicated in the service request, the default is English.

    Notification may be included using the TrackService WSDL The following table lists the valid language codes:TrackNotificationRequest or in the ShipService. Notification allows you to

    Value Language Locale Code (required ifrequest that email exception and delivery notifications be sent to you, yourindicated below)recipient, and up to 2 other email addresses. A personal message can also be

    DA Danishincluded.

    Note: If you include notification elements in a Ship request, you do not need to use the DE GermanTrackService WSDL TrackNotificationRequest for that shipment. The TrackService WSDL

    ES Spanish (Latin American) ESTrackNotificationRequest is provided if no notification request has been made for anundeliverable shipment. FR French (Canada) CA

    FR French (Europe)Notification Service Details

    IT ItalianThe following service details apply:JA Kanji (Japan)

    Send notification of package state to up to four email addresses.KO Korean

    Note: If the notification request is for an international package, you may identify one ofNL Dutchthe notification recipients as a broker.

    PT Port uguese (Latin America) FedEx services offering this feature are FedEx Express (including intra-

    SV SwedishMexico), FedEx Ground, FedEx Cargo (FDXC), FedEx Custom Critical (FXCC),FedEx SmartPost (FXSP). ZH Chinese (simplified) CN

    Shipment, delivery and tendered notifications are available for FedEx ZH Chinese (Taiwan) TWSmartPost Returns. Emaail exception is not available.

    ZH Chinese (Hong Kong) HK There are two notification options: 1) Exception notification (such as if an

    exception occurs during scanning and the package may be delayed for For more detailed information about the services offered by FedEx, see theexample, or if an address correction is required), or 2) Delivery electronicFedEx Service Guide.notification.

    Notification Coding Details You must choose between these delivery types: wireless (to a cell phone),text only email, and HTML email. In addition to the standard elements required for all transactions, the

    following elements are provided as part of the TrackService WSDL A personal message (up to 120 characters) is allowed for emailTrackNotificationRequest.notifications only. This element is not allowed for wireless notifications.

    FedEx Web Services, Track Service 36

    Ch tCh t 22

    http://www.fedex.com/us/service-guide/http://www.fedex.com/us/service-guide/
  • 7/25/2019 TrackService WSDL Guide

    37/130

    ChapterChapter 22

    Tracking and Visibility Services

    TrackNotificationRequest Elements

    Element Required Description

    TrackingNumber Required Tracking number.

    MultiPiece Optional Indicates whether to return tracking information for all associated packages.

    PagingToken Optional To obtain additional data on second and subsequent TrackNotification requests. Client must submit this value in

    subsequent track requests in order to obtain next page of data. Must contain at least four characters.

    Tracki ngNumber Uni queId O pt ional Populate only i f t he TrackingNumber UniqueId i s know n f rom a pr evious Tr acki ng r equest or an em ai l not if icat ions

    request that resulted in a duplicate reply.

    ShipDat eRangeBegin Optional Recommend pr oviding date range to find desired tr ack number by limiting t he r esult s to t his range. If not provided

    FedEx will default to a range that may not be useful for the search.

    ShipDateRangeEnd Optional If provided, ShipDateRangeBegin is required.

    SenderEMailAddress Required Valid email address of notification requestor.

    SenderContactName Required Valid contact name of notification requestor.

    NotificationDetailEMailNotificationDetail Optional Descriptive data required for FedEx to provide email notification to the customer regarding the shipment. This

    element is required when SpecialServiceType EMAIL_NOTIFICATION is present in the SpecialServiceTypes

    collection.

    NotificationDetail EmailNotificationDetail/PersonalMessage Optional A message that will be included in the email notifications. Personal messages are not applicable with wireless

    formatted notifications such as UTF-8 encoded message.

    NotificationDetail EMailNotificationDetail/Recipients Required Information describing the destination of the email format of the email and events to be notified on. Specify up

    EMailNotificationRecipient to six email addresses to receive the specified notification.

    NotificationDetail EMailNotificationDetail/Recipients Optional Identifies the relationship this email recipient has to the shipment.

    EMailNotificationRecipient/EMailNotificationRecipientType Valid values are:

    BROKER

    OTHER

    RECIPIENT

    SHIPPER

    EMailNotificationDetail/Recipients EMailNotificationRecipient/ Required The email address of the notification recipient.

    EmailAddress

    FedEx Web Services, Track Service 37

    Ch tCh t 22

  • 7/25/2019 TrackService WSDL Guide

    38/130

    ChapterChapter 22

    Tracking and Visibility Services

    Element Required Description

    EMailNotificationDetail/Recipients EMailNotificationRecipient/ Optional Identifies if an email notification should be sent to the recipient:

    NotificationEventsRequested ON_DELIVERY

    ON_EXCEPTION

    ON_SHIPMENT

    ON_TENDER

    EMailNotificationDetail/Recipients EMailNotificationRecipient/ Required This element is required to specify the type of notification you want to receive. Valid values are:

    Format EMailNotificationFormatType HTML

    TEXT

    WIRELESS

    EMailNotificationDetail/Recipients EMailNotificationRecipient/ Required The language/locale to be used in this email notification

    Localization

    R ecip ient s/Local izat ion/LanguageC ode R equi red You may i nc lude a l anguage code t o have t he email message r et ur ned i n t hat l anguage.SeeNotification ServiceDetails on page 36for a table of valid language codes. If no value is included with this element, the default is

    en (English).

    Recipients/Localization/LocaleCode Optional Some languages require a locale code to further ident ify the requested language. For example, i f you request the

    notification emails in Spanish, you must include a locale code of U.S. for North American Spanish. See

    Notification Service Details on page 36for a table of valid locale codes.

    Element DescriptionTrackNotificationReply Elements

    Packages Information about the notifications that are available for this tracking

    number. If there are duplicates, then the ship date and destination

    address information is returned for determining which

    Element Description TrackingNumberUniqueIdentifier to use on a subsequent request.

    DuplicateWaybill This element is present in the reply if duplicate tracking numbers are This complex element includes:found as part of the notification request.

    TrackingNumberMoreDataAvailable Returned in the reply if additional notification data is available. TrackingNumberUniqueIdentification

    CarrierCodePagingToken If you receive the MoreDataAvailable element in the reply, you will

    also receive the PagingToken element with corresponding ShipDatePagingToken number. This number must be included in any additional Destinationnotification request, to receive additional data for your original

    RecipientDetailsrequest.

    FedEx Web Services, Track Service 38

    ChapterChapter 22

  • 7/25/2019 TrackService WSDL Guide

    39/130

    ChapterChapter 22

    Tracking and Visibility Services

    Element Description Element Description

    These multiple occurrence elements can be repeated up to 50 timesPackages/TrackingNumber When duplicate tracking numbers exist, this data is returned withfor a single tracking number.UniqueIdentifiers summary information for each of the duplicates. The summary

    information is used to determine which of the duplicates theInsightShipmentContent/ Include this element to block view of the shipment data on FedEx

    intended tracking number is. This identifier is used on a subsequent BlockShipmentData InSight for anyone but the shipper.track request to retrieve the tracking data for the desired tracking

    number.

    For more information regarding FedEx InSight, go tofedex.com/insight.

    FedEx InSight XML SchemaAs part of the ShipService WSDL, you may add additional elements to your

    See Schema TrackService.ProcessShipment request to customize your FedEx InSight information:

    Element Description Error MessagesInsightShipmentContent/ Includes the following elements: Refer toSignature Proof of Delivery (SPOD).ShipmentContentRecords PartNumber

    ItemNumber

    ReceivedQuantity

    Description

    FedEx Web Services, Track Service 39

    http://www.fedex.com/insighthttp://www.fedex.com/insight
  • 7/25/2019 TrackService WSDL Guide

    40/130

    Index

    certification 2323 printing 88C Udocument overview 77 Web Services, WSDL, and SOAP 99

    certifying Web Services 2323 understanding XML schema 1717

    online help 88printing 88 PD Wgo to production 2323 printing this document 88document Web Services 99implementation process 2222 online help 99

    overview 77 certification 2323implementation testing 2323 pdf 88online help 88 implementing 1717implementing Web Services 1717printing 88 implementing process 2222understanding XML schema 1717 SWeb Services, WSDL, and overview 99Web Services, WSDL, and SOAP

    SOAPSOAP 99 Non-SOAP 1414overview 99overview 1010 production 2323

    SPOD Sample Letter Full 3535 testing 2323I NSPOD Sample Letter Partial 3535 XML schema 1717implementing Web Services 1717 non-SOAP Web Services 1414

    WSDLcertification 2323 T overview 99process 2222 Otesting Web Services 2323production 2323

    online help 88 Xtesting 2323overview 77

    introduction XML schema 1717online help 88

    FedEx Web Services, Track Service 40

  • 7/25/2019 TrackService WSDL Guide

    41/130

    Schema

    TrackService_v5.xsd

    targetNamespace: http://fedex.com/ws/track/v5

    Elements Complex types Simple typesSignatureProofOfDeliveryFaxReply Add ress Arr ival Locati onTypeSignatureProofOfDeliveryFaxRequest ClientDetail CarrierCodeTypeSignatureProofOfDeliveryLetterReply Contact DistanceUnitsSignatureProofOfDeliveryLetterRequest ContactAndAddress EMailNotificationEventTypeTrackNotificationReply Dimensions EMailNotificationFormatTypeTrackNotificationRequest Distance EMailNotificationRecipientTypeTrackReply EMailNotificationDetail LinearUnits

    TrackRequest EMailNotificationRecipient NotificationSeverityTypeLocalization OfficeOrderDeliveryMethodTypeNotification OperatingCompanyTypeNotificationParameter PackagingTypeQualifiedTrackingNumber RedirectToHoldEligibilityTypeSignatureProofOfDeliveryFaxReply ServiceTypeSignatureProofOfDeliveryFaxRequest SignatureProofOfDeliveryImageTypeSignatureProofOfDeliveryLetterReply StringBarcodeTypeSignatureProofOfDeliveryLetterRequest TrackDeliveryLocationTypeStringBarcode TrackIdentifierTypeTrackDetail TrackReturnLabelTypeTrackEvent WeightUnitsTrackNotificationPackageTrackNotificationRecipientDetailTrackNotificationReply

    TrackNotificationRequestTrackPackageIdentifierTrackReconciliationTrackReply TrackRequest TrackSplitShipmentPartTransactionDetailVersionIdWebAuthenticationCredentialWebAuthenticationDetailWeight

    FedEx Web Services, Track Service 41

  • 7/25/2019 TrackService WSDL Guide

    42/130

    element SignatureProofOfDeliveryFaxReplydiagram

    namespace http://fedex.com/ws/track/v5

    type ns:SignatureProofOfDeliveryFaxReplyproperties content complex

    children ns:HighestSeverity ns:Notifications ns:TransactionDetail ns:Version ns:FaxConfirmationNumber

    source

    FedEx Web Services, Track Service 42

  • 7/25/2019 TrackService WSDL Guide

    43/130

    element SignatureProofOfDeliveryFaxRequestdiagram

    namespace http://fedex.com/ws/track/v5

    type ns:SignatureProofOfDeliveryFaxRequest

    properties content complex

    FedEx Web Services, Track Service 43

  • 7/25/2019 TrackService WSDL Guide

    44/130

    children ns:WebAuthenticationDetail ns:ClientDetail ns:TransactionDetail ns:Version ns:QualifiedTrackingNumber ns:Additio nalComments ns:FaxSenderns:FaxRecipient

    source

    element SignatureProofOfDeliveryLetterReplydiagram

    namespace http://fedex.com/ws/track/v5

    type ns:SignatureProofOfDeliveryLetterReply

    properties content complex

    children ns:HighestSeverity ns:Notifications ns:TransactionDetail ns:Version ns:L etter

    source

    FedEx Web Services, Track Service 44

  • 7/25/2019 TrackService WSDL Guide

    45/130

    element SignatureProofOfDeliveryLetterRequestdiagram

    namespace http://fedex.com/ws/track/v5

    type ns:SignatureProofOfDeliveryLetterRequest

    properties content complex

    children ns:WebAuthenticationDetail ns:ClientDetail ns:TransactionDetail ns:Version ns:QualifiedTrackingNumber ns:Addi tionalComments ns:L etterFormatns:Consignee

    source

    FedEx Web Services, Track Service 45

  • 7/25/2019 TrackService WSDL Guide

    46/130

    element TrackNotificationReplydiagram

    FedEx Web Services, Track Service 46

  • 7/25/2019 TrackService WSDL Guide

    47/130

  • 7/25/2019 TrackService WSDL Guide

    48/130

    element TrackNotificationRequestdiagram

    FedEx Web Services, Track Service 48

  • 7/25/2019 TrackService WSDL Guide

    49/130

    diagram

    namespace http://fedex.com/ws/track/v5

    type ns:TrackNotificationRequest

    properties content complex

    children ns:WebAuthenticationDetail ns:ClientDetail ns:TransactionDetail n s:Version ns:TrackingNumber n s:MultiPiece ns:PagingTokenns:TrackingNumberUniqueId ns:ShipDateRangeBegin ns:ShipDateRangeEnd ns:SenderEMailAddress ns:SenderContactName n s:NotificationDetail

    source

    FedEx Web Services, Track Service 49

  • 7/25/2019 TrackService WSDL Guide

    50/130

    element TrackReply diagram

    FedEx Web Services, Track Service 50

  • 7/25/2019 TrackService WSDL Guide

    51/130

    namespace http://fedex.com/ws/track/v5

    type ns:TrackReply

    properties content complex

    children ns:HighestSeverity ns:Notifications ns:TransactionDetail ns:Version ns:DuplicateWaybill ns:MoreData ns:PagingToken ns:TrackDetails

    source

    FedEx Web Services, Track Service 51

  • 7/25/2019 TrackService WSDL Guide

    52/130

  • 7/25/2019 TrackService WSDL Guide

    53/130

    diagram

    namespace http://fedex.com/ws/track/v5type ns:TrackRequest

    properties content complex

    children ns:WebAuthenticationDetail ns:ClientDetail ns:TransactionDetail ns:Version ns:CarrierCode ns:OperatingCompany ns:PackageIdentifierns:TrackingNumberUniqueIdentifier ns:ShipDateRangeBegin ns:ShipDateRangeEnd ns:ShipmentAccountNumb er ns:Destinationns:IncludeDetailedScans ns:PagingToken

    source

    FedEx Web Services, Track Service 53

  • 7/25/2019 TrackService WSDL Guide

    54/130

    complexTypeAddressdiagram

    namespace http://fedex.com/ws/track/v5

    children ns:StreetLines ns:City ns: StateOrProvinceCode ns:PostalCode ns:UrbanizationCode ns:CountryCode n s:Residential

    used by elements TrackDetail/ActualDeliveryAddress ContactAndAddress/Address TrackEvent/Address QualifiedTrackingNumber/DestinationTrackNotificationPackage/Destination TrackRequest/Destination TrackDetail/DestinationAddress TrackDetail/DestinationLocationAddressTrackDetail/OriginLocationAddress TrackDetail/ShipperAddress

    annotation documentationDescriptive data for a physical location. May be used as an actual physical address (place to which one could go), or as a container of "address parts" whichshould be handled as a unit (such as a city-state-ZIP combination within the US).

    source

    FedEx Web Services, Track Service 54

  • 7/25/2019 TrackService WSDL Guide

    55/130

    Descriptive data for a physical location. May be used as an actual physical address (place to which onecould go), or as a container of "address parts" which should be handled as a unit (such as a city-state-ZIP combination within theUS).

    Combination of number, street name, etc. At least one line is required for a valid physical address;empty lines should not be included.

    Name of city, town, etc.

    Identifying abbreviation for US state, Canada province, etc. Format and presence of this field will vary,

    depending on country.

    Identification of a region (usually small) for mail/package delivery. Format and presence of this field will

    vary, depending on country.

    Relevant only to addresses in Puerto Rico.

    The two-letter code used to identify a country.

    Indicates whether this address residential (as opposed to commercial).

    FedEx Web Services, Track Service 55

  • 7/25/2019 TrackService WSDL Guide

    56/130

    complexType ClientDetail

    diagram

    namespace http://fedex.com/ws/track/v5

    children ns:AccountNumber n s:MeterNumber ns:IntegratorId ns:Localizationused by elements SignatureProofOfDeliveryFaxRequest/ClientDetail SignatureProofOfDeliveryLetterRequest/ClientDetail

    TrackNotificationRequest/ClientDetail TrackRequest/ClientDetailannotation documentation

    Descriptive data for the client submitting a transaction.source

    Descriptive data for the client submitting a transaction.

    FedEx Web Services, Track Service 56

  • 7/25/2019 TrackService WSDL Guide

    57/130

    The FedEx account number associated with this transaction.

    This number is assigned by FedEx and identifies the unique device from which the request is

    originating

    Only used in transactions which require identification of the Fed Ex Office

    integrator.

    The language to be used for human-readable Notification.localizedMessages in responses to the

    request containing this ClientDetail object. Different requests from the same client may contain different Localization data. (Contrastwith TransactionDetail.localization, which governs data payload language/translation.)

    FedEx Web Services, Track Service 57

  • 7/25/2019 TrackService WSDL Guide

    58/130

    complexType Contactdiagram

    namespace http://fedex.com/ws/track/v5

    children ns:PersonName ns:Title ns:CompanyName ns:PhoneNumber ns:PhoneExtension ns:PagerNumber ns:FaxNumber ns:EMailAddressused by element ContactAndAddress/Contact

    annotation documentationThe descriptive data for a point-of-contact person.

    source

    The descriptive data for a point-of-contact person.

    FedEx Web Services, Track Service 58

  • 7/25/2019 TrackService WSDL Guide

    59/130

    Identifies the contact person's name.

    Identifies the contact person's title.

    Identifies the company this contact is associated with.

    Identifies the phone number associated with this contact.

    Identifies the phone extension associated with this contact.

    Identifies the pager number associated with this contact.

    Identifies the fax number associated with this contact.

    Identifies the email address associated with this contact.

    FedE