40
FedEx Web Services for Office and Print Print Online Service Transaction Guide January, 2017

FedEx Web Services for Office and Print Web Services for Office and Print is a portfolio of transaction interfaces to digital printing functionality hosted by FedEx Office. These transactions

Embed Size (px)

Citation preview

FedEx Web Services for Office and Print

Print Online Service Transaction Guide

January, 2017

i

Confidential and Proprietary

The information contained in this Transaction Guide is confidential and proprietary to FedEx Corporate Services, Inc. and its affiliates (collectively "FedEx"). No part of this Transaction Guide may be distributed or disclosed in any form to any third party without written permission of FedEx. This Transaction Guide is provided to you under, and its use is subject to, the terms and conditions of the Developer Resource Center License Agreement and the FedEx Web Services End User License Agreement. The information in this document may be changed at any time without notice. Any conflict between this Transaction Guide, the Developer Resource Center License Agreement, and the FedEx Web Services End User License Agreement shall be governed by the FedEx Web Services End User License Agreement and the Developer Resource Center License Agreement, in that order.

© 2010 FedEx. FedEx and the FedEx logo are registered service marks. All rights reserved. Unpublished.

FedEx Confidential and Proprietary ii

About the Guide This guide serves as a supplement to the FedEx Web Services for Office and Print Developer Guide and describes how to work with the Print Online Web Service transaction set.

It is written for the application developer who uses Web Services to design and deploy applications enabled by FedEx. The guide includes element descriptions, samples, and error codes. Request elements are designated as required (R), optional (O), or conditional (C).

Resources The following may also be useful for the FedEx Web Services for Office and Print developer:

FedEx Developer Resource Center for FedEx Office: http://www.fedex.com/us/developer/

web-services/office/index.html

FedEx Web Services for Office and Print – Office Print Online Developer Guide

FedEx Web Services for Office and Print – Office Order Service Transaction Guide

FedEx OfficeSM Print Online: printonline.fedex.com

FedEx Service Guide: fedex.com/us/services/pdf/

Web Services Interoperability: www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html Web

Services Description Language (WSDL) explained:

msdn.microsoft.com/en-us/library/ms996486.aspx

O’Reilly XML.com: webservices.xml.com

Note: FedEx Kinko’s is now FedEx Office.

Support Integration Consultants

A FedEx Office Web Integration Solutions Consultation team member can assist you in the pre-production stages of integration. Contact your FedEx Office account executive or email [email protected] to request a consultation.A consultant will contact you within 3 business days.

Email Support

Email [email protected], and we’ll send your request to our internal team of FedEx Office Web Services specialists for print services. They will address your questions as quickly as possible.

FedEx Confidential and Proprietary iii

This page intentionally left blank.

FedEx Confidential and Proprietary iv

Contents Introduction ................................................................................................. 1

Print Online Service .................................................................................... 3

Upload Location .......................................................................................... 7

Operation Details ..................................................................................... 7

Coding Details ......................................................................................... 7

Upload Location Request Elements ......................................................... 9

Upload Location Reply Elements ........................................................... 11

Upload Document File .............................................................................. 13

Operation Details ................................................................................... 13

Coding Details ....................................................................................... 13

Upload Document File Request Elements ............................................. 15

Upload Document File Reply Elements .................................................. 17

Launch File Upload Status Page ............................................................... 19

Operation Details ................................................................................... 19

Coding Details ....................................................................................... 19

Figures ............................................................................................... 20

Appendix ................................................................................................... 23

Examples ............................................................................................... 25

Upload Location Request .................................................................... 27

Upload Location Reply ........................................................................ 28

Upload Document File ........................................................................ 29

Launch File Upload Status Page ......................................................... 30

Notification Messages and Codes .......................................................... 31

Severity Descriptions .......................................................................... 31

Notification Codes ............................................................................... 32

FedEx Confidential and Proprietary v

This page intentionally left blank.

FedEx Confidential and Proprietary 1

Introduction FedEx Web Services for Office and Print is a portfolio of transaction interfaces to digital printing functionality hosted by FedEx Office. These transactions are used by customers to create custom, highly efficient solutions that enable them to directly manage the creation, configuration, and submission of FedEx Office digital print orders. Customers who choose to take advantage of FedEx Web Services for Office and Print will begin by registering at the FedEx Developer Resource Center located at fedex.com/developer. There you will find technical documentation, sample software code, and support material designed to help you build your custom solution. Once development is complete, FedEx will certify that your software integration is ready for use and facilitate deployment. FedEx Web Services for Office and Print currently supports two Web Services:

Print Online Service FedEx Office Print Online is an online application that enables users to create and submit print orders to FedEx. The Print Online Service leverages the richness of FedEx Office Print Online to provide software developers with a fast-cycle integration channel for connecting document-centric workflows to the FedEx Office print fulfillment network. A typical implementation of this Web Service involves the client application connecting to FedEx for authentication, uploading a document file, and launching the user’s Web browser to a URL specified by FedEx. The user completes their order within FedEx Office Print Online.

Office Order Service

Unlike Print Online Service, Office Order Service empowers the client application to directly manage all steps within the customer’s end-to-end print purchase workflow. As such, the Office Order Service client is responsible for capturing document, print, finishing, payment, and fulfillment intent from the customer and transmitting that intent to FedEx via the defined transaction set. The client is also responsible for receiving and responding to reply transactions returned by the Web Service.

This Transaction Guide is designed to facilitate the development of Print Online Service implementations. See Office Order Service Transaction Guide for additional information regarding Office Order Service transactions.

FedEx Confidential and Proprietary 2

This page intentionally left blank.

FedEx Confidential and Proprietary 3

Print Online Service

Use the Print Online Service WSDL to request the appropriate location to upload a document for FedEx Office processing and to obtain the location of the associated file upload status page. Implementation detail associated with these uses can be found within this document in the following sections: Upload Location, Upload Document File, and Launch File Upload Status Page.

Operating Scenario 1) Client application: User views or selects document file within client. 2) Client application: User selects “Send to FedEx Office…” or similar client command. 3) Client application: Source file is validated with respect to file size, file type, page size,

access permissions, print permissions, and the presence of viruses. Client confirms that there are no inherent barriers to the successful processing of the file by FedEx Office.

4) Client application: Connection is established with FedEx and client is authenticated. 5) Client application: Upload of user’s document file is initiated by client. 6) Client application: User’s default Web browser is launched to a file upload status page

hosted by FedEx that tracks the progress of the user’s document file upload through completion.

7) FedEx: User’s uploaded document file is then analyzed to ensure FedEx Office Print Online compatibility and is converted into a common format (PDF) for consistent processing.

8) FedEx: After successful completion of the document file upload and conversion process, the user’s default Web browser displays the FedEx Office Print Online application at the appropriate step within the print procurement workflow; typically the “Custom Print / Your file(s)” screen.

9) FedEx: User navigates the existing FedEx Office Print Online step-by-step process for configuring, previewing, and purchasing their print order.

10) FedEx: User receives confirmation of their order and then closes their Web browser and returns to the client application.

FedEx Confidential and Proprietary 4

Features of Service The following features are available to customers using client software that has successfully implemented Print Online Service:

Use client software to:

- Connect securely to FedEx Office systems

- Upload document file

- Launch FedEx Office Print Online automatically

Use FedEx Office Print Online to:

- Set print and finishing options

- Preview document online

- Rate print orders

- Submit print orders

Receive e-mail order confirmation

Pick up orders at FedEx Office, have them shipped via FedEx, or courier the order (where available, for a fee).

Considerations and Limitations Implementations of Print Online Service are subject to the following considerations and limitations:

General File Validation:

- Source files are programmatically converted by FedEx Office to Adobe® PDF® following upload

- Source file must be capable of being opened by the latest release of Adobe Acrobat® software without the requirement of user interaction

- Source file must not be password protected

- Source file must not have any popup windows

- Source file must be self-contained and must not actively reference any attachments or URLs

- Source file must not contain any form of virus

- Source file must not contain enabled automatically executable code

FedEx Confidential and Proprietary 5

- Source file must be printable

- Source file size must not exceed 100MB

Multi-file uploads not supported

File Types Directly Supported:

- Microsoft® Word (.doc,.docx,.docm,.dotx,.dotm)

- Microsoft PowerPoint® (.ppt,.pptx,.pptm,.potx,.potm,.ppam,.ppsx,.ppsm)

- Microsoft Excel® (.xls,.xlsx,.xlsm,.xltx,.xltm,.xlsb,.xlam)

- Rich Text File (.rtf)

- Adobe PostScript® (.ps)

- Adobe PDF (.pdf)

- Text (.txt)

Page Sizes Directly Supported:

- Letter (8.5“ x 11“)

- Legal (8.5“ x 14“)

- Tabloid (11“ x 17“)

US Domestic only

Note: File types and page sizes directly supported by FedEx Office Print Online are subject to change at any time.

When a file is uploaded to FedEx Office Print Online, the application examines the document’s file type to ensure compatibility. Additionally, the document’s page size is analyzed to determine what size paper will be used for the order.

Print orders for documents whose file type and page size are directly supported can be configured, priced, and purchased online via FedEx Office Print Online.

Print orders for documents whose file type or page size differs from those directly supported must be processed via the Special Instructions path within FedEx Office Print Online. In these cases, the user must specify in the Special Instructions field, via free-form text, how they would like their print order produced. Online price quotes and online payment are not available for Special Instruction orders.

FedEx Confidential and Proprietary 6

This page intentionally left blank.

FedEx Confidential and Proprietary 7

Use this operation to obtain the file upload location and file upload status page location from FedEx.

Upload Location

Operation Details The Upload Location operation is used to pass an Upload Location Request message and subsequently receive an Upload Location Reply message.

Information identifying the integrator and the client application is passed to FedEx. This information is validated by FedEx and the appropriate reply is issued. Upon success, two URLs are returned. These URLs are used by the client application to upload the document file and simultaneously track the progress of the upload.

The following details apply:

Protocol: HTTPS / SOAP

Method: POST

Web Authentication Detail, Client Detail, and Version information are required in request.

Transaction Detail is optional in requests and echoed within reply.

Upload URL and Upload Status URL elements returned in the Upload Location Reply.

See Upload Location Request Elements and Upload Location Reply Elements.

See Notification Messages and Codes.

Coding Details

When requesting a file upload location and a file upload status page location:

A call to getUploadLocation is the first step in the process.

The Upload URL and Upload Status URL elements returned in the Upload Location Reply will be used respectively in the Upload Document File and Launch File Upload Status Page operations.

See Examples

.

FedEx Confidential and Proprietary 8

This page intentionally left blank.

FedEx Confidential and Proprietary 9

Upload Location Request Elements

Element R/O/C Description

Print Online Upload Location Request

Web Authentication Detail R Descriptive data to be used in authentication of the sender's identity and right to use FedEx Web Services.

Client Detail R Descriptive data used to identify the client application.

Transaction Detail O Client-provided descriptive data used by the client to identify a transaction call.

Version R Descriptive data used to identify the Web Service that the client application intends to call.

Web Authentication Detail

User Key R Unique identifier assigned to each customer as part of their authentication credentials.

User Password R Second part of the authentication credential which has a direct relationship with the credential key.

Client Detail

Client Product ID R Data assigned by FedEx used to identify product.

Client Product Version R Data assigned by FedEx used to identify product version.

Integrator ID R Data assigned by FedEx used to identify integrator.

Transaction Detail

Customer Transaction ID O Client-provided descriptive data used by the client to identify a transaction call.

Version

Service ID R Data used by FedEx to identify the system or sub-system which will perform the requested operation.

• opol

Value:

FedEx Confidential and Proprietary 10

Element R/O/C Description

Major R Data used by FedEx to identify the service business level.

Intermediate R Data used by FedEx to identify the service interface level.

Minor R Data used by FedEx to identify the service code level.

FedEx Confidential and Proprietary 11

Upload Location Reply Elements

Element Description

Print Online Upload Location Reply

Highest Severity Identifies the highest severity encountered when executing the request.

Values (in order from high to low):

• FAILURE • ERROR • WARNING • NOTE • SUCCESS

See Notification Messages and Codes.

Notifications Descriptive data detailing the status of a submitted transaction.

Transaction Detail Client-provided descriptive data used by the client to identify a transaction call.

Version

The Transaction Detail from the request is echoed back to the caller in the corresponding reply.

Descriptive data used to identify the Web Service that executed the request.

Upload URL

Upload Status URL

Location provided to the client for uploading the file.

Location provided to the client to monitor document file upload progress and the subsequent launch of FedEx Office Print Online

Notification

.

Severity Identifies the severity of the notification.

Values (in order from high to low):

• FAILURE • ERROR • WARNING • NOTE • SUCCESS

See Notification Messages and Codes.

Message Contains text that explains this notification. See Notification Codes.

FedEx Confidential and Proprietary 12

Element Description

Code Identifies the code corresponding to this notification. Combined with Source, it uniquely identifies this message. See Notification Codes

Source

.

Identifies the FedEx system, sub-system, or component that generated the notification. Combined with Code, it uniquely identifies this message.

Values:

• prof • opol

See Notification Codes

Transaction Detail

.

Customer Transaction ID Client-provided descriptive data used by the client to identify a transaction call.

Version

Service ID Data used by FedEx to identify the system or sub-system that executed the requested operation.

Value:

• opol

Major Data used by FedEx to identify the service business level.

Intermediate Data used by FedEx to identify the service interface level.

Minor Data used by FedEx to identify the service code level.

FedEx Confidential and Proprietary 13

Use this operation to upload a document file to FedEx Office Print Online.

Upload Document File

Operation Details

The Upload Document File operation is used to upload a document file to the FedEx designated file upload location (Upload URL) returned within the Upload Location Reply message. The Upload Document File operation is not a native component of the Print Online Service and must be coded within the client software by the developer.

The following details apply:

Protocol: HTTPS

Method: POST

File upload location (Upload URL) element is returned within the Upload Location Reply.

File name must be passed as “file1”. Note: Multiple file uploads not currently supported.

Reply message will return the following: resultCode, fileAuthToken, errorMessage.

Coding Details

When uploading a file to FedEx Office:

Immediately upon initiating the Upload Document File operation, the client application must execute the launch of the user’s Web browser to the FedEx designated File Upload Status page (Upload Status URL). This page will convey the status of the Upload Document File operation via the display of a progress bar. See

Via HTTPS, execute a “multipart/form-data”-encoded POST of the document file to the FedEx designated file upload location (Upload URL) using “file1” as the file name.

Launch File Upload Status Page.

See Examples.

FedEx Confidential and Proprietary 14

This page intentionally left blank.

FedEx Confidential and Proprietary 15

Upload Document File Request Elements

Element Description

Upload Document File Request Protocol: HTTPS

Action Value = “UploadUrl”

See Upload Location Reply.

Enctype Value = “multipart/form-data”

Method Value = “POST”

content-length Content-length entity header required.

Type Value =”file”

Name Value =”file1”

File name must be “file1”.

Multiple file uploads not currently supported.

FedEx Confidential and Proprietary 16

This page intentionally left blank.

FedEx Confidential and Proprietary 17

Upload Document File Reply Elements

Element Description

Upload Document File Reply

Character set: ASCII

Format:

Key1=value1(URL encoded)&key2=value2(URL encoded)

Example:

resultCode=SUCCESS&fileAuthToken=1010101010101010101010101010101010101010

resultCode Identifies the severity of the request.

Values (in order from high to low):

• FAILED • SUCCESS

fileAuthToken Server assigned token associated with file.

errorMessage

Unpopulated. Client debugging.

FedEx Confidential and Proprietary 18

This page intentionally left blank.

FedEx Confidential and Proprietary 19

Use this operation to launch the user’s Web browser to a file upload status page and subsequently insert the user into the FedEx Office Print Online workflow.

Launch File Upload Status Page

The Launch File Upload Status Page operation is used to display the file upload status page location designated by FedEx. This location is returned within the Upload Location Reply.

Operation Details

The Launch File Upload Status Page operation is not a native component of the Print Online Service and must be coded within the client software by the developer.

After the file upload process is complete, the user’s Web browser will be automatically re-directed to FedEx Office Print Online.

The following details apply:

Protocol: HTTPS

Method: GET

File upload status page location (Upload Status URL) element is returned within the Upload Location Reply.

Not output parameters are returned in association with executing the Launch File Upload Status Page operation.

Coding Details

When launching the user’s Web browser to the designated URL:

Execute the Launch File Upload Status Page operation immediately after initiating the Upload Document File operation.

Upload Location and Upload Document File operations must be executed prior to executing Launch File Upload Status Page operation.

Use the GET method to launch the user’s browser via HTTPS to the file upload status page location (Upload Status URL).

Launch File Upload Status Page Successful (Production):

Launch File Upload Status Page Successful (Pre-Production Testing): When an Upload Location Request is processed using test credentials, the Upload Status URL returned by the routine will point to an alternate, static HTML page (Fig 2) instead of the aforementioned dynamic File Upload Status page. Additionally, the static page returned during testing will not automatically redirect the user’s browser to FedEx Office Print Online (as described below).

The resulting File Upload Status page (Fig 1) will communicate the status of the Upload Document File process via the display of a progress bar.

FedEx Confidential and Proprietary 20

Upload Document File Successful (Production): When the Upload Document File operation completes successfully, the user’s browser – currently opened to the File Upload Status Page - will be automatically redirected by FedEx to the appropriate page within the FedEx Office Print Online application (Fig 3 and Fig 4). The successfully uploaded document file will be available to the user to configure and order. At this point, the user will proceed through the typical FedEx Office Print Online workflow and (typically) no additional information is exchanged between the client software application and the Print Online Service for this session. Once the user has completed the configuration and submittal of their print order via FedEx Office Print Online, they may close their browser and return to the client software application.

Upload Document File Cancelled: The File Upload Status page (Fig 1) includes a Cancel button. If the Cancel button is clicked by the user, the FedEx application will terminate the File Upload Status process and automatically redirect the user’s browser to a page conveying a message that the Upload Document File operation has been cancelled. The File Upload Cancelled page (Fig 5) provides the user with a link to the FedEx Office Print Online home page as well as a link that will attempt to close the user’s browser. (Close Window link will not work if File Upload Cancelled page is displayed within an iframe.) Note: In cases where the user initiates the cancel of the Upload Document File operation (above), communication between FedEx and the client application ends at the moment the upload is terminated. As such, no resultCode will be returned to the client application as a result of a user initiated cancel.

Figures

The figures below are provided for reference purposes only.

File Upload Status (Production) - Fig 1

File Upload Status (Pre-Production) - Fig 2

FedEx Confidential and Proprietary 21

FedEx Office Print Online (Typical Landing) - Fig 3

FedEx Office Print Online (Exception Landing) - Fig 4

File Upload Cancelled - Fig 5

FedEx Confidential and Proprietary 22

This page intentionally left blank.

FedEx Confidential and Proprietary 23

Appendix

FedEx Confidential and Proprietary 24

This page intentionally left blank.

FedEx Confidential and Proprietary 25

Examples This section of the guide provides code and message examples associated with Print Online Service (OPOL) operations.

Operations Upload Location

Example: Upload Location Request - SOAP

Upload Location Reply (Successful) - SOAP

Upload Document File

Example: POST a “multipart/form-data” file to a specified URL - Java

Launch File Upload Status Page

Example: Launch Microsoft Internet Explorer to a specified URL - Java

Note: The examples provided herein are for illustrative purposes only and are not intended for

production application nor guaranteed to work for all programming languages, applications, and host systems.

FedEx Confidential and Proprietary 26

This page intentionally left blank.

FedEx Confidential and Proprietary 27

Upload Location Request

<?xml version="1.0" encoding="utf-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:v1="http://fedex.com/ws/officeprintonline/v1"> <soapenv:Header/> <soapenv:Body> <v1:UploadLocationRequest> <v1:WebAuthenticationDetail> <v1:UserCredential> <v1:Key>XXXXXXXX</v1:Key> <v1:Password>XXXXXXXXXXXXXXX</v1:Password> </v1:UserCredential> </v1:WebAuthenticationDetail> <v1:ClientDetail> <v1:ClientProductId>XXXX</v1:ClientProductId> <v1:ClientProductVersion>####</v1:ClientProductVersion> <v1:IntegratorId>###</v1:IntegratorId> <!--Optional:--> <v1:Localization> <v1:LanguageCode></v1:LanguageCode> <!--Optional:--> <v1:LocaleCode></v1:LocaleCode> </v1:Localization> </v1:ClientDetail> <!--Optional:--> <v1:TransactionDetail> <!--Optional:--> <v1:CustomerTransactionId></v1:CustomerTransactionId> <!--Optional:--> <v1:Localization> <v1:LanguageCode></v1:LanguageCode> <!--Optional:--> <v1:LocaleCode></v1:LocaleCode> </v1:Localization> </v1:TransactionDetail> <v1:Version> <v1:ServiceId>opol</v1:ServiceId> <v1:Major>#</v1:Major> <v1:Intermediate>#</v1:Intermediate> <v1:Minor>#</v1:Minor> </v1:Version> </v1:UploadLocationRequest> </soapenv:Body> </soapenv:Envelope>

FedEx Confidential and Proprietary 28

Upload Location Reply <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/> <soapenv:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <v1:UploadLocationReply xmlns:v1="http://fedex.com/ws/officeprintonline/v1"> <v1:HighestSeverity>SUCCESS</v1:HighestSeverity> <v1:Notifications> <v1:Severity>SUCCESS</v1:Severity> <v1:Source>opol</v1:Source> <v1:Code>0000</v1:Code> <v1:Message>Authorization was successful.</v1:Message> <v1:LocalizedMessage>Authorization was successful.</v1:LocalizedMessage> </v1:Notifications> <v1:TransactionDetail> <!--Optional:--> <v1:CustomerTransactionId></v1:CustomerTransactionId> <!--Optional:--> <v1:Localization> <v1:LanguageCode></v1:LanguageCode> <!--Optional:--> <v1:LocaleCode></v1:LocaleCode> </v1:Localization> </v1:TransactionDetail> <v1:Version> <v1:ServiceId>opol</v1:ServiceId> <v1:Major>#</v1:Major> <v1:Intermediate>#</v1:Intermediate> <v1:Minor>#</v1:Minor> </v1:Version> <v1:UploadUrl>https://printonline.fedexkinkos.com/partnerUpload.process?authToken=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&amp;partnerId= xxxxxx </v1:UploadUrl> <v1:UploadStatusUrl>https://printonline.fedexkinkos.com/html/PartnerUploadTestSuccess.html?authToken= xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx &amp;partnerId=xxxxxx</v1:UploadStatusUrl> </v1:UploadLocationReply> </soapenv:Body> </soapenv:Envelope>

FedEx Confidential and Proprietary 29

Upload Document File

Note: The below example is written in Java. It is provided for illustrative purposes only and is not intended for production application nor guaranteed to work for all programming languages, applications, and host systems.

public static String uploadFile(String filepath, String uploadUrl) {

String fileToken = null; try {

PostMethod filePost = null; HttpClient client = new HttpClient();

// client.getHostConfiguration().setProxy("your proxy url", your proxy port number);

File f = new File(filepath);

// Create the file part of the Multipart request - name must be"file1"

Part[] parts = { new FilePart("file1", f) };

filePost = new PostMethod(uploadUrl);

filePost.setRequestEntity(new MultipartRequestEntity(parts, filePost.getParams()));

int status = client.executeMethod(filePost);

if (status == HttpStatus.SC_OK) {

System.out.println(filePost.getResponseBodyAsString());

fileToken = filePost.getResponseBodyAsString().substring(

filePost.getResponseBodyAsString().indexOf("fileAuthToken=") + "fileAuthToken=".length());

} else {

System.out.println("Upload failed, response=" + HttpStatus.getStatusText(status));

}

} catch (Exception ex) {

ex.printStackTrace();

}

return fileToken;

}

FedEx Confidential and Proprietary 30

Launch File Upload Status Page Note: The below example is written in Java. It is provided for illustrative purposes only and is

not intended for production application nor guaranteed to work for all programming languages, applications, and host systems.

import java.lang.reflect.Method;

import javax.swing.JOptionPane;

public class LaunchFileUploadStatusPage {

public static void openURL(String UploadStatusURL) {

try {

Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler " + UploadStatusURL);

}

catch (Exception e) {

JOptionPane.showMessageDialog(null,"Error attempting to launch Web browser\n" + e.toString());

}

}

}

FedEx Confidential and Proprietary 31

Notification Messages and Codes This section details the possible reply notification messages and associated error codes. Notification objects include severity, source, code, and message elements.

Severity Descriptions There is a possibility of multiple Notification objects for a single request. The response notification severity values of ERROR, FAILURE and SUCCESS should never be combined in a single response. Value Definition FAILURE Code/message explains that your request could not be handled at this time;

please do not resubmit right now. ERROR Code/message identifies a problem with your request data; you may fix the

request data and try again. WARNING Your request was successful. However, the code/message explains what had to

be done to fulfill your request; you may need to determine whether that is what you intended, you may need to do this differently next time, or you may need to prepare for a future change. Request was completed.

NOTE Your request was successful. However, the code/message contains additional

information about how your request was fulfilled; you do not need to take any special action.

SUCCESS Your request was successful.

FedEx Confidential and Proprietary 32

Notification Codes Notification codes and the associated source, severity, and message values are noted below.

Code Source Severity Message

0000 opol SUCCESS Request was successful.

1000 prof ERROR Authentication failed. (Invalid Web Service credentials.)

4001 opol ERROR Client product ID is required.

4002 opol ERROR Client product version is required.

4003 opol ERROR Integrator ID is required.

4013 opol ERROR Authorization failed. (Invalid FedEx Office credentials.)

4014 opol ERROR Integration has been de-activated for this client and integrator.

4019 opol ERROR Integrator ID value is not recognized.

9000 opol ERROR Unable to complete the request due to a system error.

This page intentionally left blank.

This page intentionally left blank.