DHL Moves Post & Parcel Germany APIs to OAuth 2.0

DHL is retiring Basic Authentication for Post & Parcel Germany APIs in favor of OAuth 2.0. Here's the migration timeline and what breaks if you wait.

DHL Moves Post & Parcel Germany APIs to OAuth 2.0

What DHL changed on its Post & Parcel Germany APIs

DHL Group has been pushing a multi-stage overhaul of the APIs behind Post & Parcel Germany through 2026, and if your integration touches German domestic parcel or eCommerce tracking, at least one of these changes has already affected you. On its developer portal, DHL states plainly that with the modernization of our API landscape, we are gradually replacing the previous Basic Authentication with the more modern OAuth 2.0 supporting Authentication API. The same modernization push also touched the Unified Tracking API (UTAPI), the HTTP header format every integration depends on, and the TLS cipher suites your calling systems need to support.

This isn't one announcement. It's four separate, dated changes, and they didn't all land cleanly. One of them had to be rolled back within 24 hours of release.

The dated changes you need on your calendar

Here's the sequence as DHL published it on the Shipment Tracking - Unified notification page and the Post & Parcel Germany product page.

DateChange
25 Feb 2026, 14:45 CETUTAPI service post_de decommissioned, traffic rerouted to svb
14 Aug 2026HTTP response headers switched to lower-case across the modernized platform
20 Aug 2026, 9:00 CESTBackend modernization release deployed (ISO 8601 timestamps, product info, new URLs)
21 Aug 2026, 09:20Release reverted after a performance issue; prior backend restored
31 Aug 2026Destination City, State and ZIP Code fields removed from eCommerce tracking responses
Ongoing, no fixed cutoff publishedBasic Authentication phased out in favor of OAuth 2.0 across Post & Parcel Germany APIs

On the post_de retirement specifically, DHL's own language is reassuring but conditional: shipment tracking queries will be automatically rerouted to svb, but if your integration hard-codes the service value, update it from post_de to svb, and no action is required if the service is not explicitly set. If your code enumerates allowed service strings anywhere, that's the line to find.

The destination-field removal is the one nobody notices until it breaks something

As of 31 August 2026, for shipments trackable via the ecommerce service, the following fields are no longer included in Tracking responses: Destination City, Destination State, Destination ZIP Code. There's no error code for this. The API still returns 200, the shipment still tracks, the three fields are just gone.

If you surface delivery city or postal code in a customer-facing order status page, feed it into a WMS exception dashboard, or use it to estimate last-mile ETAs, that logic now silently returns null for any German eCommerce-service shipment. You need an alternate data source, whether that's your own order data at time of dispatch or a different DHL service endpoint that still carries destination detail.

This isn't unique to DHL. USPS retired its Web Tools API platform on January 25, 2026, and FedEx retired its legacy SOAP Web Services on June 1, 2026, forcing every affected shipper onto modern REST APIs, according to FreightWaves Checkpoint. Carriers are modernizing on overlapping timelines right now, and functional parity gaps like a missing field tend to surface weeks after a migration is declared complete, not during it.

What the OAuth 2.0 cutover actually requires from your team

DHL frames the move away from Basic Auth as a straight upgrade, and on paper it is. With Basic Authentication, username and password are sent with each request, increasing the risk of these details being intercepted and misused, while OAuth 2.0 uses tokens that have a limited lifespan (30 minutes) and grant specific access rights, and these are opaque tokens that do not contain any user data. DHL also claims a performance upside: by using OAuth 2.0, you can currently reduce authentication calls to one every 30 minutes, and using the received bearer token for functional API calls results in approximately 25% faster response times for your requests.

The practical work list:

  • Swap your Basic Auth credentials for OAuth 2.0 client credentials against DHL's Authentication API, and cache the bearer token for its full validity window rather than requesting a new one per call.
  • Make header parsing case-insensitive. As of 14 August 2026, DHL confirmed all HTTP header names will be delivered back in lower-case, as required by HTTP/2, and recommends you ensure your system treats header names as case-insensitive, as defined by the HTTP specification.
  • Update calling-system TLS configuration ahead of the Apigee X cutover, favoring current TLS 1.3 and TLS 1.2 cipher suites rather than legacy ciphers that older client libraries sometimes default to.
  • Expect this pattern across other Post & Parcel Germany products too. DHL's Returns and Shipping API changelogs both note the same shift: OAuth2 introduced in parallel with Basic Auth, with the warning that later API versions will no longer support Basic Auth.

DHL hasn't published a single hard retirement date for Basic Auth across the board, which is exactly why you shouldn't wait for one. Credentials, header handling, and cipher support are changes you can make now, independent of a deadline.

Why DHL rolled part of it back

The 20-21 August sequence is worth sitting with. DHL deployed a backend update to the tracking infrastructure, then reversed it the next morning, stating following the deployment of these changes, we identified an unexpected performance issue, and to safeguard service stability and maintain a consistently reliable experience, we have reverted the release and restored the previous functionality. A carrier's own modernization notice is not a guarantee of a smooth, on-schedule rollout. Teams that tested both the old and new response formats in parallel, rather than cutting over fully on day one, weren't caught off guard by the revert.

This is also the kind of churn that pushes larger shippers toward a connectivity layer that absorbs it on their behalf. Platforms like nShift, Sendcloud, ShipStation and AfterShip exist precisely to track carrier-side portal notifications so individual shipping teams don't have to, and TMS platforms such as MercuryGate or Descartes take on similar EDI/API maintenance. Cargoson takes the same approach for shippers managing dozens of carrier relationships at once, maintaining the connection so a Basic Auth deprecation notice doesn't turn into an engineering fire drill.

What to do this quarter

  1. Confirm which Post & Parcel Germany product APIs your stack calls, and whether they route through UTAPI.
  2. Search your codebase for hard-coded references to post_de and for case-sensitive header parsing.
  3. Check every workflow that reads destination city, state or ZIP from eCommerce tracking responses, and build a fallback before it silently degrades further.
  4. Register for OAuth 2.0 client credentials now rather than waiting for a final cutover date DHL hasn't published yet.
  5. If you're maintaining this exercise per carrier, per year, across 50 or 200 connections, weigh the engineering cost against a carrier-connectivity layer that absorbs these changes for you.

The dates that matter are already behind the first three changes. The one still open is the OAuth 2.0 cutover, and the fields that disappeared on 31 August aren't coming back. Get off Basic Auth and stop depending on data DHL no longer sends.