Zum Hauptinhalt springen

Authentifizierung

Die Login-API stellt JWT-Zugriffstoken bereit, die für alle geschützten Endpunkte erforderlich sind.

Basispfad: /api/v1


POST /api/v1/login

Standard-Anmeldung – gibt Zugriffs- und Refresh-Token zurück.

Authentifizierung: Keine (öffentlicher Endpunkt)

Anfrage:

{
"username": "max.muster",
"password": "SicheresP@sswort"
}
FeldTypPflichtfeldBeschreibung
usernameStringJaBenutzername
passwordStringJaPasswort

Antwort 200 OK:

{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"refreshToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}

Statuscodes:

CodeBeschreibung
200 OKAnmeldung erfolgreich
400 Bad RequestValidierungsfehler (fehlende Felder)
401 UnauthorizedUngültige Anmeldedaten

POST /api/v1/login-extended

Gibt Zugriffstoken plus zusätzliche Benutzerinformationen zurück (Depotcode, Ablaufzeitpunkt).

Authentifizierung: Keine (öffentlicher Endpunkt)

Anfrage: identisch mit /login

Antwort 200 OK:

{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"refreshToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"userName": "max.muster",
"depotCode": "0699",
"expireAt": "2025-10-30T18:30:00Z"
}
FeldTypBeschreibung
tokenStringJWT-Zugriffstoken
refreshTokenStringJWT-Refresh-Token
userNameStringAngemeldeter Benutzername
depotCodeStringErster nicht-leerer Depotcode aus Benutzer-Abholadressen
expireAtISO 8601Token-Ablaufzeitpunkt

Statuscodes:

CodeBeschreibung
200 OKAnmeldung erfolgreich
400 Bad RequestValidierungsfehler
401 UnauthorizedUngültige Anmeldedaten
403 ForbiddenAuto-Login-Kontext fehlt

Token verwenden

Fügen Sie das JWT in jede nachfolgende Anfrage ein:

curl -X GET "https://label-print-shipments.dpd.ch/api/v1/tracking/05305000123456" \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."

Token-Ablauf

  • Standard-TTL ist serverseitig konfiguriert (typischerweise 24 Stunden)
  • Eine 401 Unauthorized-Antwort bedeutet, dass das Token abgelaufen ist
  • Erneut mit /login authentifizieren, um ein neues Token zu erhalten

Sicherheits-Checkliste

  • In der Produktion immer HTTPS verwenden
  • Token in sicheren HTTP-only-Cookies oder sicherem Speicher ablegen – nie in localStorage
  • Token nie in URLs oder Log-Dateien preisgeben
  • Token bei Abmeldung löschen