API DPD Label Print Expédition
L'API d'expédition vous permet d'intégrer les services d'envoi DPD dans vos applications — création d'envois, suivi, recherche de points de collecte et planification des enlèvements.
URL de base: https://label-print-shipments.dpd.ch
Version de l'API: v1
Authentification: Jeton JWT Bearer (voir Authentification)
Référence API
| API | Points de terminaison | Description |
|---|---|---|
| Authentification | 2 | Connexion utilisateur et génération de jetons JWT |
| Expéditions | 1 | Créer des envois avec génération automatique d'étiquettes |
| Suivi | 1 | Données de suivi en temps réel |
| Points de collecte | 3 | Rechercher des points de collecte DPD |
| Demandes de collecte | 1 | Planifier des collectes ponctuelles |
| Ordres d'enlèvement | 1 | Créer des plannings d'enlèvement récurrents |
Démarrage rapide
1. Obtenir un jeton d'accès
curl -X POST "https://label-print-shipments.dpd.ch/api/v1/login" \
-H "Content-Type: application/json" \
-d '{
"username": "votre_utilisateur",
"password": "votre_mot_de_passe"
}'
{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"refreshToken": "..."
}
2. Appeler les points de terminaison API
Incluez le jeton dans chaque requête :
curl -X GET "https://label-print-shipments.dpd.ch/api/v1/tracking/05305000123456" \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
Concepts communs
Validation des adresses
{
"name": "Nom de la société", // obligatoire, max 35 caractères
"countryCode": "CH", // obligatoire, code ISO à 2 lettres
"zipCode": "8000", // obligatoire, max 9 caractères
"city": "Zürich", // obligatoire, max 35 caractères
"street": "Bahnhofstrasse 1", // obligatoire, max 35 caractères
"phone": "+41441234567", // obligatoire pour GB
"email": "info@societe.ch" // obligatoire pour non-CH/LI
}
Exigences spécifiques aux pays :
- NL :
houseNumberobligatoire - GB :
phoneobligatoire (format international) - US/CA :
stateCodeobligatoire - Non-CH/LI :
emailobligatoire (sauf GB)
Codes de service
| Code | Service | Description | Poids max. |
|---|---|---|---|
| PSD | DPD Classic | Livraison nationale standard | 35 kg |
| PSI | DPD Classic International | Livraison internationale | 20 kg |
| PL | DPD Express Letter | Service lettre express | 2 kg |
| PBOX | DPD ParcelBox | Livraison en casier | 5 kg |
| RET | Service retour | Retours | variable |
Réponses d'erreur
{
"timestamp": "2025-10-30T10:30:00Z",
"status": 400,
"error": "Bad Request",
"message": "Échec de la validation",
"path": "/api/v1/shipments"
}
Langues prises en charge
| Langue | Valeurs locale |
|---|---|
| Allemand | de_CH, de_DE |
| Anglais | en_US, en_GB |
| Français | fr_CH, fr_FR |
| Italien | it_CH, it_IT |
Bonnes pratiques
- Jetons : stocker de manière sécurisée, renouveler avant expiration, ne jamais exposer dans les URLs ou les journaux
- Limitation de débit : gérer
429 Too Many Requests; mettre en cache les données des points de collecte - Gestion des erreurs : vérifier les codes HTTP ; implémenter une logique de nouvelle tentative pour les erreurs 5xx
- Validation : valider les données côté client ; respecter les règles spécifiques aux pays