Shipment tracking - uniform
v 1.4.1
Division: DPDHL group
Best for:
- grant access toshipment statusat any time
- IntegrateatspeciesDeutsche Post DHL shipments
- SeveralShips(z. B. e-trgovina, ekspres, teret, pismo, paket usw.)
Region: Global
Used to: persecution
review
The Shipment Tracking API provides updated shipment status reports. Users of this API can:
- Get tracking information.
- Identify the Deutsche Post DHL (DPDHL) service provider involved in the shipment.
- Make sure DPDHL uses the correct shipping address. This can reduce the number of incorrectly delivered shipments.
extent
This API covers services provided by DPDHL under these brands:
- Post and parcels Germany
- Registered Domestic, Registered Mail, Registered Return Receipt, Personal Registered Parcel, Registered, Value, Priority, Last Name, Registered International, Registered International Returned Receipt, Registered Personal International, Value Domestic, Registered Tracked International, Proof of Country, Postal Orders (PZA), Internet brand, goods post national, parcel
- Registered Domestic, Registered Mail, Registered Return Receipt, Personal Registered Parcel, Registered, Value, Priority, Last Name, Registered International, Registered International Returned Receipt, Registered Personal International, Value Domestic, Registered Tracked International, Proof of Country, Postal Orders (PZA), Internet brand, goods post national, parcel
- DHL Express
- DHL Express 9:00, DHL Express 10:30, DHL Express 12:00, DHL Express Express, DHL Express Envelope, DHL Express Easy, DHL Economy Select, DHL Express Domestic 9:00, DHL Express Domestic 10:30, DHL Express until 12 p.m., DHL Express until 6 p.m., DHL Medical Express, DHL Express Breakbulk
- DHL Express 9:00, DHL Express 10:30, DHL Express 12:00, DHL Express Express, DHL Express Envelope, DHL Express Easy, DHL Economy Select, DHL Express Domestic 9:00, DHL Express Domestic 10:30, DHL Express until 12 p.m., DHL Express until 6 p.m., DHL Medical Express, DHL Express Breakbulk
- DHL Global Forwarding (incl.DHL same day)
- Air freight and sea freight transport
- SameDay: SameDay Jetline unaccompanied shipping, SameDay Jetline accompanied shipping, SameDay Speedline, SameDay Sprintline
- E-Commerce Shipments
- DHL Freight
- EuroConnect, Eurapid, EuroLine, EuroNet, Customs Services, Cold Chain, Trade Shows & Events, Domestic Standard Pallet, Domestic Premium Pallet, Leading Logistics Provider, Transport Linked Warehousing, RailConnect, RailLine, Parcel, Home Delivery
- EuroConnect, Eurapid, EuroLine, EuroNet, Customs Services, Cold Chain, Trade Shows & Events, Domestic Standard Pallet, Domestic Premium Pallet, Leading Logistics Provider, Transport Linked Warehousing, RailConnect, RailLine, Parcel, Home Delivery
- DHL e-commerce solutions
- Cross-border products (Parcel Connect, Return Connect, Parcel International, Connect PLUS, Return International), worldwide air and road transport
- Inland, Expressversand, Expressversand Max, Paket International, Paket International
- Domestic Mail Asia Pacific
- DHL Supply Chain (will be reactivated in Q2 2023)
Not covered are:
- Services that require login (e.g. B2B systems).
The API provides tracking information to users:
- shipping location
- Delivery time of the shipment*
- Shipment Itinerary*
- Proof of delivery*
- Timestamp of sending
- Departure and destination information
- Shipment quantity*
- Item Level Events*
- Shipping dimensions*
- shipping weight*
* Not available for all DPDHL services.
Using the API
You must have the appropriate shipment tracking code and API subscription key (this key should be provided in the request header).
Examples of use cases
Find the location of the shipment
Using the API you can create a website or app that allows DPDHL customers to see the location of their shipment.
The API also identifies the DPDHL service provider involved.
Find out when the shipment arrives
Using the API you can create a website or app that allows DPDHL customers to see when to expect a delivery.
The system also identifies the DPDHL service provider involved.
Find out where the shipment was (location history)
Some customers want to know the itinerary of their shipments.
You can use the API to help create a website or application that allows DPDHL users to view location history data such as:
- weather sign
- Traveled places
The API also identifies the DPDHL service provider involved.
Make sure DPDHL ships to the correct address
They can help DPDHL customers to verify that the DPDHL service provider is using the correct delivery address.
You can use the API to create query forms that require users to enter a tracking ID for a shipment.
Find out which DPDHL service I used
You can help DPDHL customers to find out which DPDHL service provider will deliver their shipment.
You can use the API to create query forms that require users to enter a tracking ID for a shipment.
Get proof of delivery
With DHL's electronic proof of delivery, you'll receive delivery details and an image of the recipient's signature, if digitally captured. When the package is delivered by DHL, the recipient signs and writes their name on the driver's handheld device. The digital signature is available the next day after delivery.
Some customers want proof of delivery because they want to invoice their customers.
The API may provide users with proof of delivery.
The API also identifies the DPDHL service provider involved.
Find out about delivery delays
Some customers want to be informed about possible delivery delays.
The API can provide you with information about possible shipping delays.
The API also identifies the DPDHL service provider involved.
Customize my web application
You can use optional parameters and customize your web application according to user needs.
You can use the API to create language-specific web applications so that users can follow their broadcast in their native language.
User Guide
get access
You must request credentials for any apps you develop
To register your app and get API subscription keys:
- ClickMy applicationson the portal page.
- Click on+Add applicationTaste.
The Add Application form appears. - Fill out the form to add an application.
You can choose the APIs you want to access. - When you have filled out the form, clickAdd applicationTaste.
certification
A subscription key is required for each call to the API. This key should be passed via the request header (DHL API key).
To view API subscription keys:
- Out ofMy applicationsClick the name of your application on the screen.
The details screen appears. - If you have access to more than one API, click the appropriate API name.
Note:APIs are listed in the Credentials section. - Click onShowthe link among the stars that hidesconsumer key.
Theconsumer keyit appears.
environments
Addressable API base URL/URI environments are:
Surroundings | Description |
https://api-eu.dhl.com/track/shipments | Sandbox and production environment |
Tariff Limits
Tariff limits protect the DHL infrastructure from suspicious requests that exceed defined thresholds.
When you request access to Shipment Tracking - Unified API for the first time, you will receive an initial level of service that makes this possible250 calls a daywith most1 call per second.
Additional tariff caps are available and assigned according to your specific use case. If you would like to request additional restrictions, continue with the following steps:
- Build the application as described belowget accessSection.
- ClickMy applicationson the portal page.
- Click on the application you created
- Scroll down to the list of APIs and click the "Request Upgrade" button.
- Check out an example below:
When the limit is reached, you will receive an HTTP status code:
429: Too many requests.
More information
message format
This API usesRESTful JSON-Formatrepresent all resource possibilities and connect relationships between resources. Every answer without errorapplication/json
The media type is to be interpreted as defined inRESTful JSONSpecification.
JSON-LD
RESTful JSON responses are also includedJSON-LD compliantFormat.
General Conventions
Enumerations defined in API response entities can only contain a subset of possible values (e.g. new values can be added to the enumeration in future versions that don't break). If the value does not meet the customer's expectations, the customer should treat it as undefined.
error message format
In case of an errorapplication/problem+json
(Details of the issue) is used to communicate the details of the error.
Date and time format
The date and time always correspond to the ISO 8601 format, e.g. e.g.:21.06.2017T14:07:17+2:00
(date time) or06/21/2017 at 14:07:17
(date time) or21.06.2017
(Date). If no time zone information is provided, the time zone should be interpreted as the location of the shipping event in question.
responses to errors
This API can use the whole scopegeneral HTTP response statusas defined inRFC7231.
This API documentation only shows404
to illustrate what an error response might look like.
Language
An API request can return localized messages (for example, a human-readable description of the shipment status code). It is possible to specify the preferred language of the calling user agentLanguage
query parameters. If the requested language isn't available but the broadcast is still found, the API returns a successful response and specifies the actual language of the response in the Content Language header.
API client recommendation
API clients should be aware that enums defined in API response entities may contain only a subset of possible values (e.g. new values may be added to the enum in future non-executing versions). If the value does not meet the customer's expectations, the customer should treat it as undefined.
We advise customers that optional fields may not be included in the response if their value is not defined.
Selection of the desired language
An API request can return localized messages (for example, a human-readable description of the shipment status code).
To select the desired language:
- Use the language query parameter when invoking the user agent.
If the requested language is not available but the broadcast is still found, the API returns a successful response and marks the actual response language incontent languageletterhead.
Allowed HTTP Methods
HTTP-Methode | Use this to: |
---|---|
RECEIVE | data retrieval |
Questions and answers about DHL packages
DHL PACKAGE (Germany
You can book in addition to our parcel services in Germanyrecipient zip codeat your request. This will give you more detailed information about the shipment.
DHL Parcel Netherlands
For our parcel services in the Netherlands you can addrecipient zip codeat your request. This gives you more detailed information, such as status information.
An example API request
Example of a simple HTTP request
curl -X GET 'https://api-eu.dhl.com/track/shipments?trackingNumber=7777777770' -H 'DHL-API-Key:PasteHere_ConsumerKey'
Explanation of a simple example of an HTTP request
command | Description |
---|---|
Beckon | Curl is a command to run the cURL tool from the command line interface. cURL is a tool for transferring data to or from a server on the Internet. |
-X | -X is a command that allows you to send the "HTTP method" you want to use. Web browsers and web servers use HTTP methods to request information from each other. The most common HTTP methods are GET, POST, PUT, and DELETE. |
RECEIVE | GET is a command ("HTTP method") for requesting information from an API. |
https://api-eu.dhl.com/track/shipments | https://api-eu.dhl.com/track/shipments is the Endpoint Location (URI) of the "Resource" you are looking for. Resources are objects of information that an API can exchange. Resources are associated with data. |
? | ? tells the API that the request contains query string parameters. The ? followed by parameters, and their values are called the "query string". Parameters are options that you can send with your requests. Parameters are used to customize and filter the response you get from the API. The query string lists each parameter in turn, separated by & (not shown in this example). |
TrackingNumber=7777777770 | This query sequence requires information about a shipment with tracking number 7777777770. |
-H | -H is a command that allows you to pass an "http request header" to an API resource. Headers contain information about the request. It often contains security data, such as B. User Authentication Key. You need to replace PasteHere_ConsumerKey with the Consumer Key that you get from DHL on the MyApps screen. |
Example of a detailed HTTP request
curl -X GET 'https://api-eu.dhl.com/track/shipments?trackingNumber=7777777770&service=express&originCountryCode=NZ&requesterCountryCode=GB' -H 'DHL-API-Key:PasteHere_ConsumerKey'
The cURL example contains these parameters:
Parameter | Description | Example |
tracking number | The tracking number of the shipment for which you want tracking information. | 7777777770 |
Service | Advice on which service (provider) to use to resolve the tracking number. | to express |
Country of Origin Code | Indication of the country of origin of the shipment. This can be used for additional qualification Parameter for the tracking number ("trackingNumber") in the request. | New Zealand |
Country code of the applicant | Country code of the applicant. This allows display options to be adjusted. | GB |
Note:For more information on the available parameters, see the DHL Shipment Tracking API Reference Guide.
A simple Python code example
import http.clientimport urllib.parseimport jsonparams = urllib.parse.urlencode({ 'trackingNumber': '7777777770', 'service': 'express'})headers = { 'Accept': 'application/json', 'DHL-API -Key': 'ApiKeyHere'}connection = http.client.HTTPSConnection("api-eu.dhl.com")connection.request("GET", "/track/shipments?" + params, "", headers)response = Connection.getresponse()status = Response.statusreason = Response.reasondata = json.loads(response.read())print("Status: {} i razlog: {}".format(status, razlog))print(podaci )connection.close()
Legal Conditions
Details on the use of tracking data
- Data requested and received via the SHIPMENT TRACKING API – UNIFIED API, such as B. Shipping Status, Estimated Delivery Time, including Tracking Number, are hereinafter referred to as “Tracking Data”.
- Tracking Data is confidential information as defined in the Communications section of the Developer Portal Terms of Use. Except as provided below, you may not, without DP DHL's prior written consent, provide Tracking Data to any third party and/or analyze such data in any way, modify and/or derive any data/information specifically for competitive purposes derive - And.
- Tracking information will be made available to you and/or the legal entity that you are authorized to represent (hereinafter "you"/"your") via this SHIPMENT TRACKING API - UNIFORM API provided you retrieve the appropriate tracking number in accordance with applicable law have . , particularly in the area of data protection and competition law, and that you will only use Tracking Data for your own or legitimate purposes of tracking your customers.
- You may not combine Tracking Data with advertising or display it in any way that could be construed as advertising.
- Unless otherwise agreed, delete tracking information 30 days after completion of delivery (shipment) to the recipient.
- The tracking data is used in accordance with the following specification:
- Display "Delivered by Deutsche Post DHL Group" in the text (minimum font size) as soon as it is presented/delivered to the recipient and/or your customers.
- The use and transmission of Tracking Data – including transmission to any of your subcontractors – will always be in accordance with applicable laws and regulations, including but not limited to data protection and competition/non-competition laws.
- If you are neither the sender nor the recipient of a DP DHL Group shipment, the tracking information relates to the following:
- You must ensure that you are authorized to act on behalf of the sender and/or recipient;
- You will inform the Sender and/or the Recipient of the limitations set forth in this User Guide and the Developer Portal General Terms of Use;
- They inform the sender of the need to inform the recipient transparently about the processing of their personal data in accordance with the applicable data protection laws;
- You will transparently inform the sender and/or recipient that use of your application may result in information subject to postal secrecy and data protection laws being disclosed to third parties (including you).
waiver
3. June 2022
This section of the changelog is an abstract and optional representation of the actual API description changes. For detailed information about changes compared to the previous version, see the API description.
1.4.1
December 14, 2022
Updated service enumeration with value "ecommerce-europe"
1.3.2
1. June 2022
Added "Provider" to the shipping model, including the "destinationProvider" field.
1.3.1
July 8, 2021
- The sample tracking number listed in the Open API Specification has been updated
1.3.0
July 1, 2021
- Added "parcel-uk" to the "Services" list.
- Added pieceIds to the shipping event model.
- Updated comments section for date/time format.
1.2.0
29. June 2021
- Added "Same Day" to the "Services" list.
1.1.0
July 31, 2020
- Added post-de`toenumlist service.
1.0.13
July 31, 2020
- Updated to OpenAPI specification version 3.
- Added "serviceUrl" and "rerouteUrl" to the shipping model.
- Added "Reference" as a new reference type in the shipment detail model.
- Updated description for statusCode
1.0.12
July 31, 2020
- Fixed typo, maintenance release.
1.0.11
July 31, 2020
- Added "Consignment ID" to the list of possible answers.
1.0.10
July 31, 2020
- Added pagination.
1.0.9
July 31, 2020
- Release for maintenance
Coming Changes
July 20, 2020
- AbJuly 31, 2020, the latest you can getMail/Letter Tracking(owned by Post & Paket Germany) with package tracking - Unified API. You can check more detailsHere.
1.0.8
12. Lips. 2019
- Updated vocabulary location.
- Added a note about general conventions in the comments section.
- "House Account" has been added to the list of possible answers.
1.0.7
13. May 2019
- Removed example for "trackingNumber" and "recipientPostalCode".
- The format of the comments section of the API description has been changed.
Table of Contents
March 15, 2019
- Added "Legal details on the use of tracking data".
- The default "Speed Limits" have been adjusted
1.0.6
February 27, 2019
- Minor tippeller corrections in the comments section.
- Edited description of requesterCountryCode.
1.0.5
February 26, 2019
- The hostname introduced with version 1.0.4 has been corrected.
1.0.4
February 15, 2019
- Introduced new hostname and API key header name. The old names are deprecated but still functional for the time being. Switch to the new host and API header keys and stop using obsolete keys.
- Added a disclaimer in the Changelog section.
- Extended timestamp descriptions for value transfers can be ISO 8601 Date OR ISO 8601 Date/Time.
- broadcasts:
- Added a description for the "PossibleAdditionalShipmentsUrl" link relationship at the shipment level.
1.0.3
14.Professionals.2018
- Minor correction of the field descriptions "requesterCountryCode", "originCountryCode", "recipientPostalCode" and "Language".
- Added estimatedTimeOfDeliveryRemark field to Shipment response model.
- Added various examples.
- Added "Document URL" and deprecated "Signature URL" in the "ProofOfDelivery" response model.
- Added "possibleAdditionalShipmentsUrl" to reflect matches in other backends/services with "Shipment" response model.
- Fixed some warnings related to JSON syntax.
1.0.1
1. November 2018
- First launch
FAQs
Why is USPS tracking not available? ›
It could be because the barcode is not easy to scan. A barcode may be too light or blurry. They can also smudge or get torn during handling. Although the post office can enter barcodes manually, sometimes shipping time is tight, and they do not get scanned.
Why does my tracking number say information available soon? ›If the status of your shipment keeps saying 'information available soon,' it's probably due to one of these reasons: the current location of your shipment isn't known or hasn't changed recently. Or your shipment has yet to be scanned, so there's no tracking information.
Can USPS tracking be wrong? ›USPS Incorrect Scanning
If the tracking information has the correct address, then it is likely a clerical error on the part of the Post Office. If their scanner was set to "Delivered" instead of "Accepted" during the scan, it will update the tracking information with the Delivered status.
Currently, access to tracking information for non-signature items is limited to 120 days. Tracking information for signature items is available for 2 years. USPS Tracking Plus® provides options to extend access to the tracking history for anywhere from an additional 6 months up to 10 years for a small fee.
Why is USPS not moving my package? ›Generally, when USPS says a package is stuck in transit, it means your package has not been scanned at any distribution depot in the last 24 hours; therefore, nobody knows the current location of your shipment.
Can a USPS package be delivered without being scanned? ›The package may not have been scanned at the last checkpoint when it was loaded onto the mail truck. The item will be in the truck and will probably be delivered on time, but without being scanned before loading it up, the tracking page will still show the delivery scan holdup.
What happens if USPS tracking doesn't update for days? ›It might be “in transit” for days.
When USPS tracking shows that a package is “In Transit” it typically means that the item is moving within the network but may be taking longer than normal. If it has been a while since there was a scan update, the “In Transit” may simply be a placeholder until the item shows up again.
For its 1-800-ASK-USPS customer care line, the Postal Service employs an Interactive Voice Response (IVR) system to answer calls, automatically handling routine issues such as package tracking, finding post office locations and hours, and submitting hold mail requests.
What does it mean if my tracking number is not found? ›When the tracking number cannot locate the parcel, it does not necessarily imply that the package is lost. It may only mean that the courier did not scan the barcode or that the tracking information online has yet not been updated the information.
How do I know if my package is lost? ›Using the tracking numbers, you can check the delivery status online at USPS Tracking®. If seven (7) or more days have passed since the date of mailing and the recipient has confirmed the item has not arrived, you may either submit a search request for your lost mailpiece and/or email us.
Does USPS ever update tracking? ›
How often does USPS tracking update? Since USPS scans packages at every touchpoint in its network, you'll see updates to your package's tracking status during every step of its journey.
How do I track my USPS package accurately? ›Online: Use USPS Tracking® on the United States Postal Service® website. By text: Send a text to 28777 (2USPS) with your tracking number as the content of the message. Standard message and data rates may apply.
What are the three stages of USPS tracking? ›- USPS Pre-Shipment. "Pre-Shipment Info Sent to USPS, USPS Awaiting Item": USPS has received the electronic transmission of the manifest shipment information from the sender. ...
- USPS In Transit to Next Facility. ...
- Out for Delivery. ...
- Delivered. ...
- Alert.
- Contact The Recipient Immediately. Being proactive is the best remedy to the blowback that results from package delays. ...
- Contact Your Local Post Office. ...
- Submit a Search Query Online. ...
- Follow Up.
Let's say that your package has been seized by law enforcement. Your USPS tracking will say “Seized By Law Enforcement.” (Yes, they make it this obvious.) USPS will send you a letter telling you that they couldn't deliver your package.
Why is my USPS package stuck in one place? ›The package stays in transit until the driver/postman delivers it. When parcel is stuck in transit it means that the package is no longer progressing towards its destination and it is either kept in one of the courier company's depots for further checks or stuck in customs.
What if my UPS package hasn't moved in 7 days? ›Contact UPS Customer Service
And noticed that your UPS package is not moving, the first thing you should do is contact UPS customer service. They can help you track your package and provide you with updates on its status. In some cases, they may be able to resolve the issue and get your package moving again.
A very small fraction of one percent. Of this most is not actually lost, but is either damaged by or becomes trapped in the massive automated machinery used to process the mail. Letter mail gets processed on multiple automated machines, usually before anyone actually even looks at it.
Is it possible my package wasn't scanned? ›There are a few reasons why your package status may not be updated right away: If you drop your package off after hours, USPS or UPS won't scan it in until the next day. It's in queue at a USPS or UPS facility. The postal workers or UPS workers scanning packages simply didn't get to it that day.
Can a package still be delivered if it doesn t say out for delivery? ›It doesn't necessarily mean that your package is “out for delivery.” Once your package has left its originating post office, it will arrive at a sort facility where it will be sorted according to its destination. From there, it will be loaded onto a truck or plane and transported to the next sorting facility.
What happens if UPS package didn't arrive on delivery date? ›
With UPS, either the sender or receiver can file a claim, but make sure that only one party applies for a refund. The claim must be filed within 15 days of the quoted delivery date. The easiest way to file a claim with UPS is by filling out a form online. You also have the option of filing a claim by phone.
Why is the tracking number status not available? ›Reasons Why the Status May Not Be Available
Most commonly, the package has yet to be scanned into the package tracking system by its carrier or even shipped from the place of origin. If the package hasn't been scanned in yet, then it won't show up in package tracking tools.
Here are some reasons why tracking information may not be available: The first package scan may be on arrival at a regional hub near the destination. This is common when shipping volume is high and packages are processed in bulk. Until this first scan, the carrier may not acknowledge receipt of the package.
Can I see exactly where my USPS package is? ›You can track any USPS package with Circuit as long as you have the necessary USPS tracking number. You can use these steps: Look for the USPS tracking data for a package. The USPS tracking package number features 22 numbers scattered with five sets of four-digit numbers and one two-digit number at the end.
Can USPS deliver a package without updating tracking? ›Package Not Scanned or Updated
Of course, sometimes a piece of mail or a package being handled by USPS just doesn't get scanned or updated along every single stop on its journey. This happens a lot less frequently today than it used to in the past – but it still happens!
If your tracking number doesn't work or has errors, it could be that your shipping hasn't been picked up yet by the courier or the courier has not scanned it as received. Please allow up to 24 hours for your tracking number to be logged by the shipping courier.
How accurate is USPS tracking? ›How accurate is USPS expected delivery time? They're usually accurate to the day, but not always. Your local post office isn't the one that posts the Informed Delivery Daily Digest, so it may be off by a day or two.
How does USPS find lost packages? ›Here's how it works: the USPS processing centers send all their undeliverable mail to the Mail Recovery Center. They scan and open the packages to look for identifying info that may help get the package to its rightful owner—if the item has a value of $25 or more.
How late does USPS deliver? ›USPS usually delivers mail between 9:00 am – 5:00 pm, irrespective of the delivery service you use. However during peak seasons when there are a lot of mails to be delivered as late as 6.30 pm.