Best for:
- Providing an interface to the Transport Management System (TMS)
- Customer-centric contract logistics solutions
- Business customers of DHL Supply Chain
The TMS APIs provide an interface to the Supply Chain's Transport Management System (TMS) operations.
Scope
This API covers services provided by DHL Supply Chain. More specifically, the covered areas of functionality are:
- Order - Also known as Consignment Order. This is a request from a customer to ship goods from one place to another.
Using the API
The API is accessed as REST API using OAuth 2.0 for authentication and authorization and JSON format for request and response messages.
The API uses HTTPS (over SSL) protocol.
Example Use Cases
DHL Supply Chain customers which would like to integrate their systems using standard APIs.
If you are not a DHL Supply Chain Customer, contact one of our experts here.
Get Access
To obtain the credentials please contact DHL Supply Chain Representative. You will receive separate credentials for the Sandbox and Production environment.
If you are not a DHL Supply Chain Customer, contact one of our experts here.
Authentication
The API Key and the key secret should be sent as HTTP basic authentication credentials. Also, the API Key has to be sent in an HTTP header named WSAPIKey.

This is the successful response which you will see when successfully authenticated.
HTTP Response Status Code 200
This is the failed response which you will see in the browser in case of invalid credentials.
HTTP Response Status Code 401 Unauthorized
{
"error" : "invalid_client",
"error_description" : "Client authentication failed (e.g. unknown client, no client authentication included, or unsupported authentication method).
The authorization server MAY return an HTTP 401 (Unauthorized) status code to indicate which HTTP authentication schemes are supported. "
}
Environments
The addressable API base URL/URI environments are:
| Environment | Description |
| https://apidsc-qa.dhl.com/tms/v1 | QA environment |
| https://apidsc.dhl.com/tms/v1 | Production environment |
Rate limits
Rate limits protect the DHL infrastructure from suspicious requests that exceed defined thresholds.
When the limit is reached, you will receive an HTTP Status code:
429: Too many requests.
Please contact api.dsc@dhl.com to get more information about it.
specifics for the use of transport management (dhl supply chain) API
- By sending and receiving data within Productive Use of the TRANSPORT MANAGEMENT SYSTEM (DHL SUPPLY CHAIN) API contracts with regards to i.a. Transportation Services, In- or Outbound Logistics Services (hereinafter “Individual Contracts”) are effected between You and the DHL Supply Chain entity which is the contractual party to Your warehouse and/or transportation agreement (hereinafter referred to as the “DSC Entity”).
- An Individual Contract effected by the use of the TRANSPORT MANAGEMENT SYSTEM (DHL SUPPLY CHAIN) API shall be concluded at the time and place where the set of data has been received in the receiving party’s communication facilities and the sending party´s communication facilities have received an automatic confirmation of receipt from the receiving party’s communication facilities.
- In case data has been sent/received outside of the DSC Entity’s business hours, the processing of data and/or execution of the Individual Contract will start according the terms and conditions as set out in the applicable (local) transportation services and/or warehouse agreement/s.
- Neither we nor the DSC Entity is responsible for storing a record of data (API-call or -request data or the actual contents of the data sets), that has been exchanged via the TRANSPORT MANAGEMENT SYSTEM (DHL SUPPLY CHAIN) API, unless expressly agreed upon in writing.
- You expressly waive any rights to contest the validity or conclusiveness of an Individual Contract effected by the use of the TRANSPORT MANAGEMENT SYSTEM (DHL SUPPLY CHAIN) API on the sole ground that it was effected via API.
- The system of record for the stock data (inventory) is the according DSC Entity’s system.
2.0.0
- Field naming adjustments per DHL Standards and Guidelines
- The v1 of the API is retired. Customers using the existing V1 version, will remain as function as per normal, but new customers should use v2.
1.0.5
- Initial Release