Support
Find answers to frequently asked questions and any other support you might need.
FAQs
An API is the gateway between your current business application and the FedEx logistic solutions that power the global FedEx enterprise. Your application communicates with FedEx processing systems by sending requests over the internet and in return receives real-time information that can be presented to your customers in a unified manner. FedEx APIs can assist with tracking, order entry, customer service, reverse logistics and billing, as well as shipping operations. To learn more about our range of APIs — like Address Validation, Rate, and Track— explore our API Catalog. To learn more about APIs, explore What is an API?
No, FedEx APIs are a set of technical schematics provided in conjunction with documentation and examples, from which your IT support can incorporate numerous FedEx functionalities into your internal systems. For off-the-shelf solutions, explore our FedEx®Compatible solutions.
We offer two levels of assistance: consultation and general troubleshooting help. Please view the Support page to find out more.
Yes, a project can have multiple APIs. However, Track API is the exception. You create and manage this API independently in its own project. Track API cannot be added to an existing project with other APIs, and no other APIs can be added to a Track API project.
Each project has a transaction rate limit of 1,400 transactions in the span of 10 seconds. Throttling restrictions are applied if transactions exceed this limit during each 10-second timeframe.
Review the Transaction Quota and Rate Limits for specific quota limit information.
You can view these details on the Project Overview page for your project.
In order to use FedEx APIs, you must read and accept our Developer Portal License Agreement (DPLA) when creating a project. In addition to the DPLA, your company must execute an End User License Agreement for each shipping account added to your organization.
Depending on the API you’re using, you may need to submit your project for basic certification or shipping label certification. Some labels don’t need any certification. Visit the Certification page for more information.
FedEx APIs are a global solution that work well outside of the United States. For availability in your region, please check the Support page.
A webhook is an HTTPS callback function that allows lightweight, event-driven communication between sender and receiver applications. In this case, FedEx and your application. Using webhook allows you to receive near real-time updates about the events you want to know about. To learn more about webhook, explore What is a webhook?
No, FedEx webhook are a set of technical schematics provided in conjunction with documentation and examples, from which your IT support can incorporate numerous FedEx functionalities into internal systems. For off-the-shelf solutions, explore FedEx Compatible solutions.
There are two ways to subscribe to Shipment Visibility Webhook:
- Users can subscribe to Track Events by subscribing to 9-digit FedEx Account Number(s). Users can proactively monitor all inbound and outbound shipments, as well as third-party shipments billed to the Account Number.
- Tracking number based webhook, where user can subscribe with FedEx Tracking Number(s) and receive same information as available on FedEx.com. PII (Personal Identifier information) is not sent via tracking number webhook.
FedEx Ground, FedEx Ground Economy, FedEx Express and FedEx Freight (9-digit account number only) shipment tracking updates are supported through FedEx Shipment Visibility Webhook.
NOTE:
- FedEx Shipment Visibility Webhook only supports enterprise 9-digit freight accounts.
- Webhooks only supports 9-digit enterprise/parcel enabled accounts. Enterprise accounts enable the creation of shipments associated with all FedEx operating companies including FedEx Express and FedEx Ground.
- 9- digit account created for only LTL freight shipping are not supported, you must reach out to FedEx customer support to port an LTL only account to an enterprise account.
Shipment Visibility Webhook enables real-time push of in-transit shipment tracking events, ranging from ‘Label Creation’ to ‘Delivered’, including Picture Proof of Delivery.
Customers can configure webhook to select tracking events categories applicable for their business needs. Ex: If you intend to use ‘Delivered’ event to trigger ‘Package Delivered’ customer notification, you can pick ‘Delivery Notifications’ but skip other categories. Click here to view the list of all events.
- Create FedEx Developer Portal User Login.
- Create ‘Organization’ profile on FedEx Developer Portal.
- Add Eligible U.S. based Billing and Shipping account numbers to organization profile.
- Configure a webhook listener (destination/call back URL and security token) that accepts JSON payload notifications.
We offer two levels of assistance: consultation and general troubleshooting help. Please reach out to the customer service to find out more.
In order to use FedEx webhook, you must read and accept our FedEx Developer License Agreement when creating a webhook. In addition to the FDPLA, your company must execute an End User License Agreement for shipping account added to your organization and an Order Form.
Webhook are currently offered for US based billing and shipping accounts only.
FedEx Webhook will send HMAC based x-FedEx signature in the header with every payload notification. You can authenticate a payload by generating HMAC signature based on payload and security token to compare it with the x-FedEx signature to authenticate received payload.
To test the type of tracking data returned to your Destination (call back) URL. Use ‘TRY THIS WEBHOOK’ capability to send a test request. This helps to validate your URL and process webhook mock payload notification prior to creating a Shipment Visibility Webhook.
Please refer to Getting Started Guide for more details.
Webhook only accepts valid HTTPS connections that support a valid TLS (Version 1.2 & above) certificates issued by a well-known Certificate Authority (CA). Please do not use FedEx domain names or IP addresses in the destination (call back) URL set up. Please refer to the best practices section for more details.
For tracking number based Webhook, please add tracking numbers of those shipments that are in FedEx possession or will be in possession in next 24 hours. Please do not add tracking numbers before handing off the package to FedEx.
Whenever an event payload is failed to get acknowledged by the receiving sever, retry and redelivery logic kicks in. FedEx reattempts multiple times over a period of 6 hrs with exponential back off. All missed events are purged POST the period of redelivery.
In case of consistent failures, FedEx will pause the webhook project and, email notification about the pause is sent. Please refer retry section for more details.
Users can configure webhook to receive specific categories of the tracking event data (such as ship, in transit or exceptions or delivery events). Users can also opt to receive full history with each event or specific data about the latest event. For more details, refer to the configuration options section.
Whitelist the following IP addresses that FedEx webhook requests will be sent from, note the different environments:
Dev/Beta:
169.63.102.107
169.59.163.56
150.239.215.211
Production:
150.239.111.98
169.63.176.128
150.239.210.140
Please refer to Shipment Visibility Webhook Statuses and Status code reference guide.
NOTE: FedEx doesn’t guarantee delivery of events in the order in which they are generated.
- Customers can initiate a new webhook creation and save the details entered for a period of 90 days.
- If customer fails to complete the creation of a saved webhook in 90 days, the webhook is Deleted (and no meta data is available on portal).
- If a Webhook creation process is triggered, but webhook creation fails then webhook will be in failed status (Customers can re-attempt to create again). Any failed webhook is deleted after 30 days if no action is taken.
- If customers successfully complete creation of a webhook:
- Webhook will be in active status (where matching of shipments happens, and data is sent to the customer)
- Customers can pause webhook for any planned maintenances or outages (where matching of shipments is paused, and no data is sent to the customer). A paused webhook will be Cancelled after 30 days automatically if it’s not reactivated.
- Cancelled Webhook meta data is still available on FDP for a period of 90 days, and it cannot be reactivated.
- Any Cancelled Webhook is deleted after 90 days automatically.
On the My Projects page, select “Cancel” option from the dropdown menu (indicated by 3 vertical dots) beside the webhook with status Active or Paused that you wish to cancel.
Please refer to Master Platform Subscription Agreement for information on subscription terms.
- In each Organization profile, you can create up to 100 webhooks only.
- In each account number based webhook, you can add up to 1000 account numbers.
- For tracking number based webhook, you can add up to 1000 tracking numbers in each request.
You receive PII information such as sender name, sender address, sender contact information, recipient name, recipient address, recipient contact information, Signature image (SPOD), GPS Coordinates and Convenient Delivery Options (CDOs).
Please refer our getting started guide to create a webhook project that can be subscribed by tracking number. Once project is created, “Tracking Number Subscription API” is added to the project automatically. This API has 3 endpoints:
- Tracking Number Association -Use this endpoint to trigger an asynchronous job to associate one or multiple tracking number to a specific webhook project.
- Tracking Number Job Status - Use this endpoint to get the status of an asynchronous job or status of all the jobs submitted.
- Tracking Number Job Details - Use this endpoint to download JSON report for an asynchronous job that is in COMPLETED status.
For more details, refer our documentation.
OK now that you have good understanding of webhook, please register on our portal (we call this creation of Organization profile) and refer our getting started guide to get started with Webbooks.
A valid FedEx Account Number (9-digit number) must be associated with paid project(s) on FedEx Developer Portal, for billing purposes. You must add the account under your organization, prior to associating the account with a paid project. The invoices are usually sent by mail to the billing address on the account. We strongly recommend you create a new Account Number, to pay for paid services on FedEx Developer Portal to help you manage invoices, charges for API services, separate from transportation charges.
Both are FedEx Account(s) created on fedex.com but differ in functionality. An Account Number added for billing under FedEx Developer Portal organization, can be used by customers to pay for paid services on FedEx Developer Portal. It is not mandatory that the customer keep a separate Account Number for billing. You always have the option of using one of the existing Shipping Accounts to pay for paid services on FedEx Developer Portal. Please ensure the billing address on the Account Number is accurate, prior to associating with a paid project. We strongly recommend you create a new Account Number, to pay for paid services on FedEx Developer Portal to help you manage invoices, charges for API services, separate from transportation charges.
You can create a new FedEx Account Number on fedex.com.
Yes. It is preferable that you use one FedEx Account Number (9-digit number), pay for paid services on FedEx Developer Portal. This Account Number (9-digit number) is set as default for payment, whenever you create a new paid project.
The paper invoice will be mailed to you during the first week of each month, if applicable (only for U.S.-based customers). The invoice is mailed via the U.S. Postal Service, and we expect them to be delivered between 3-7 business days depending on where you live in the United States. Please refer to respective product information page for specifics on pricing.
The billing cycle closes as of 12 AM UTC on the last day of each month. The billing period always starts on the 1st of each month and ends on the last day of the calendar month. Invoice is sent out during the first week of the month based on the fee for previous month’s usage.
Your bill has details of the charges you incurred based on the pricing tier that is applicable to you. Each row in the bill refers to the pricing for each paid service offered on FedEx Developer Portal. This may include any discount(s) awarded to your organization.
At this point, we are sending all invoices by mail. If you need to verify or update your mailing address, please log into fedex.com to manage your account.
Projects are charged a monthly fee based on count of track numbers. To learn more, click here “Pricing.”
No! A canceled webhook project will receive a FINAL invoice in the next calendar month.
Ex: If a webhook project is canceled on Feb 19th,2024. Invoice for canceled webhook project will be sent in March,2024.
Yes. You need a FedEx user ID and password to log in to the FedEx Developer Portal, which is the same user ID and password that you can use at fedex.com. If you don’t have a user ID and password, you can sign up here.
Yes. FedEx Developer Portal administrators must associate FedEx accounts to their organization in order to run their transactions. You can create a personal or business account any time. There is no fee to open an account.
● Go to fedex.com to Sign Up or Log In
● Select My Profile from the dropdown menu
● Select Account Management to view your account number
Yes, each organization can have any number of accounts added to it. A minimum of one account is required to move API projects to production.
Only the administrator of an organization can add and verify FedEx accounts to their organization on the FedEx Developer Portal. Contributors and viewers in an organization cannot add accounts.
No. The FedEx Developer Portal assigns sandbox accounts based on the location(s) selected while creating the project. These accounts can be used for testing.
Yes, please explore our Best Practices Guide for more details.
Yes. We offer a testing environment as well as a production environment.
Sample code in a number of different programming languages can be found on the documentation pages for each software solution.
Yes. You can explore the FedEx API Versioning and Throttling Management guide and the Transaction Quota and Rate Limits guide for details.
Yes, you can track up to 30 shipments in a single transaction by using batch tracking.
FedEx Web Services encompass the systems that followed SOAP WSDL standards to communicate with FedEx processing systems. FedEx has elected to base future integrations on these new REST APIs to improve reliability and performance. To learn more about these differences and the benefits of migrating, visit the Why Migrate page.
FedEx APIs will not affect existing integrations that are built using FedEx Web Services. However, for future integrations, FedEx Web Services will not support all of the new features. To learn more the benefits of migrating, visit the Why Migrate page.
If you’re not ready to migrate, you still have access to the Developer Resource Center.
Yes, and there are many ways you can do this. Please reach out to Support to find out how.
The label buffer is a Base64 encoded string. You will need to decode the Base64 to see the label buffer in the format you selected in your request.
Unfortunately, no. The quality of a faxed label is below the acceptable evaluation standards, so we’re unable to evaluate faxed labels for approval.
There are four reference fields available: reference, invoice, department, and PO number. On the test server, FedEx reserves the right to return a fixed value in the reference field. The other three reference fields are available for testing your values.
Depending on the API you are using, you may need to submit your project for Label Certification, or no certification.
Proprietary Customers: Label Certification
Shipping Label Certification is a more advanced process for certain APIs. Please click here for more details.
Third-Party Providers: Solution Validation
In order to be able to move your FedEx API project to production and deploy your FedEx integration to customers, validation by FedEx is required. Please click here for more details.
Please click on Getting Started | FedEx Developer Portal for more information on API integration. If you need further assistance, please reach out to your CT or Sales rep.
Complete this form if you are using a solution developed by a third party, or if you are a third party developer yourself. Upon completing the form, you can expect guidance and support tailored to your needs for migrating your FedEx integration.
Please reach out to your respective channel manager for further assistance on this matter.
Can’t find what you need here? Explore our Integrated Solutions Support page for more resources.
Phone support
Technical Support
CALL: 1.877.339.2774
Support hours are Monday through Friday, 7AM to 9PM, and Saturday 7AM to 3PM CST.
Customer Service - FedEx Express, FedEx Ground & International Shipping Assistance:
CALL: 1.800.GOFEDEX 1.800.463.339
(For international, when prompted, please say "International Services".)
Customer Service - FedEx Express Freight:
CALL: 1.866.393.4585
Are you an existing FedEx Web Services customer?
If you’re not ready to try out our new FedEx APIs, you can still access documentation and WSDLs for FedEx Web Services within the Developer Resource Center.