Convertisseur de durées ISO 8601
Convertit la notation de durée ISO 8601 (ex. PT1H30M) en secondes et inversement. Pratique pour décoder les formats utilisés par l'API YouTube, les délais d'expiration AWS et les flux RSS de podcasts.
Exemples courants de durée ISO 8601
Une durée ISO 8601 commence par "P", suivi des années/mois/jours, puis par "T" suivi des heures/minutes/secondes. Voici des exemples courants et les secondes qu'ils représentent.
| Notation | Secondes au total | Remarque |
|---|---|---|
| PT30S | 30 | Une valeur de délai d'expiration courte typique, comme 30 secondes |
| PT1H30M | 5,400 | 1 heure 30 minutes, une façon courante d'exprimer la durée d'un film ou la longueur d'une vidéo YouTube |
| P1D | 86,400 | 1 jour (24 heures), souvent utilisé pour les durées de conservation des journaux ou l'expiration du cache |
| P3Y6M4DT12H30M5S | 110,842,205 | Un exemple combiné équivalant à 3 ans, 6 mois, 4 jours, 12 heures, 30 minutes et 5 secondes (les années/mois utilisent l'approximation de 365,25 jours) |
Qu'est-ce que la notation de durée ISO 8601 ?
La notation de durée ISO 8601 est une norme internationale qui exprime la « longueur » entre deux instants dans une seule chaîne, comme « P3Y6M4DT12H30M5S ». Alors qu'une date-heure indique un instant précis (« quand »), une durée exprime une différence (« combien de temps »), d'où l'existence d'une notation dédiée commençant par « P », distincte des formats d'horodatage.
Les développeurs rencontrent constamment cette notation : l'API de données YouTube indique ainsi la durée des vidéos, les API AWS et Google Cloud l'utilisent pour les délais d'expiration, et les flux RSS de podcasts l'emploient pour la durée des épisodes. Cet outil convertit instantanément entre chaînes de durée et secondes totales, afin de vérifier exactement le temps que représente une valeur.
Comment convertir des durées ISO 8601 et des secondes
- Collez une chaîne de durée pour la convertir en secondes Saisissez une chaîne de durée ISO 8601 comme « PT1H30M » dans le champ du haut : le total en secondes et un détail par unité s'affichent automatiquement.
- Essayez la valeur d'exemple Cliquez sur « Insérer un exemple » pour charger un cas combinant années, mois, jours, heures, minutes et secondes, et voir la conversion à l'œuvre immédiatement.
- Saisissez des secondes pour les convertir en chaîne de durée Indiquez le nombre total de secondes à convertir dans le champ du bas : la chaîne de durée ISO 8601 correspondante est générée.
- Choisissez un mode de conversion Sélectionnez « années/mois/jours » pour une notation compacte et lisible, ou « jours/heures/minutes/secondes uniquement » pour un résultat exact sans approximation calendaire.
- Copiez le résultat Copiez le total de secondes, minutes, heures ou jours affiché, ou la chaîne de durée générée, directement dans votre requête API ou votre fichier de configuration.
Astuces pour en tirer le meilleur parti
- Les durées incluant des années ou des mois n'ont pas, en réalité, un nombre fixe de secondes ; cet outil utilise donc une approximation fixe : 1 an = 365,25 jours et 1 mois = 30,44 jours.
- Lors de la génération d'une chaîne de durée à partir de secondes, choisissez "jours/heures/minutes/secondes uniquement" pour éviter totalement l'approximation des années/mois et obtenir un résultat exact, indépendant du calendrier.
- L'API de données YouTube renvoie la durée de la vidéo dans le champ contentDetails.duration au format ISO 8601 ; vous pouvez donc la coller directement ici pour obtenir le total en secondes.
- Des services cloud comme AWS Lambda et API Gateway utilisent parfois la notation de durée ISO 8601 pour configurer les délais d'expiration, ce qui rend cet outil utile pour vérifier ces valeurs.
- Les flux RSS de podcasts utilisent parfois le format de durée ISO 8601 dans la balise itunes:duration, en plus du format hh:mm:ss plus courant.
Où la conversion de durée ISO 8601 est utile
Analyser les réponses de l'API de données YouTube
Collez une valeur comme « PT4M13S » issue de contentDetails.duration pour voir instantanément combien de minutes et secondes dure une vidéo.
Déboguer les paramètres AWS et des services cloud
Vérifiez à combien de secondes ou d'heures correspond réellement une notation de durée dans un délai d'expiration Step Functions ou CloudFormation.
Vérifier la durée des épisodes dans un flux RSS de podcast
Lorsque la balise itunes:duration utilise le format ISO 8601, comparez-la à la notation hh:mm:ss plus courante pour confirmer la durée.
Intégration avec des API de calendrier et de planification
Partez d'un nombre de secondes pour construire l'intervalle de récurrence ou la durée de rappel exigés par des API comme Google Agenda.
Créer des cas de test pour un analyseur maison
Si vous développez votre propre analyseur de durées, utilisez cet outil pour vérifier le nombre exact de secondes de chaînes connues et l'utiliser comme valeur attendue dans vos tests.
Glossaire de la durée ISO 8601
- ISO 8601
- Une norme internationale qui définit comment représenter les dates, heures et durées. Outre la notation des dates comme « 2026-09-16 », elle définit aussi la notation de durée traitée par cet outil.
- Durée
- Une valeur représentant la longueur de temps entre deux points. Contrairement à une date-heure, qui indique un instant précis, une durée porte l'information du temps qui s'écoule.
- Notation PnYnMnDTnHnMnS
- Le format de base des chaînes de durée ISO 8601 : années (A), mois (M) et jours (J) après le « P », suivis des heures (H), minutes (M) et secondes (S) après le « T », en n'incluant que les unités nécessaires.
- Horodatage
- Une valeur représentant un instant précis. Contrairement à une durée (une différence), un horodatage exprime une position absolue — « quand » quelque chose s'est produit.
- RFC 3339
- Une spécification, fondée sur ISO 8601, pour exprimer les dates-heures sur Internet. Elle définit la notation d'horodatage, mais pas la notation de durée, qui reste propre à ISO 8601.
- Notation en semaines (PnW)
- Une abréviation comme « P2W » qui exprime une durée uniquement en semaines. Selon ISO 8601, cette forme autonome ne peut pas être combinée avec des composantes année/mois/jour ni avec la partie horaire.
Questions fréquentes
Anecdote — Pourquoi le monde informatique dispose-t-il d'un format dédié aux « durées » ?
ISO 8601 est surtout connue comme la norme internationale de représentation des dates et heures, mais cette même norme définit aussi une notation distincte pour les « durées » : la longueur de temps entre deux points, plutôt qu'un instant unique. Une date-heure répond à la question « quand », tandis qu'une durée répond à « combien de temps » ; bien qu'elles se ressemblent à première vue, elles représentent des types d'informations fondamentalement différents. La notation dédiée commençant par « P » existe précisément pour maintenir cette distinction claire.
L'une des raisons pour lesquelles la notation de durée est si utile en pratique est qu'elle évite les erreurs de confusion d'unités lors de l'échange de données entre systèmes. Si une réponse d'API renvoyait simplement le nombre « 30 », l'appelant devrait consulter la documentation pour savoir s'il s'agit de secondes ou de minutes. Avec « PT30S », la valeur et son unité voyagent ensemble dans une seule chaîne, si bien qu'un analyseur correctement implémenté ne peut jamais mal l'interpréter.
C'est exactement pour cette raison que l'API de données YouTube renvoie la durée des vidéos au format ISO 8601 : une chaîne comme « PT4M13S » signifie sans ambiguïté une vidéo de 4 minutes 13 secondes. Des plateformes cloud comme AWS et Google Cloud adoptent parfois le même format pour les paramètres de délai d'expiration, donc si vous repérez cette notation dans un fichier de configuration YAML ou une réponse JSON, la passer dans cet outil pour voir le nombre de secondes équivalent peut aider à mieux se représenter la valeur.
Dans le même temps, la norme présente une particularité intéressante : les durées incluant des années ou des mois n'ont pas de longueur absolue fixe. Le même « P1Y » peut représenter 365 ou 366 jours réels selon qu'il englobe ou non une année bissextile. En fin de compte, c'est exactement pour cette raison que cet outil doit recourir à une approximation dès qu'une conversion implique des années ou des mois.