RevealTheme logo

Convertisseur de timestamp Unix

Convertissez entre les timestamps Unix et les dates lisibles. Mise à jour en temps réel.

Qu'est-ce qu'un timestamp Unix et pourquoi les API l'utilisent-elles ?

Un timestamp Unix (aussi appelé temps epoch ou temps POSIX) est un entier unique qui représente le nombre de secondes écoulées depuis le 1er janvier 1970 à 00:00:00 UTC, un instant connu sous le nom d'« époque Unix ». Cette convention remonte au premier système d'exploitation Unix des laboratoires Bell dans les années 70. Son avantage par rapport aux dates lisibles est qu'il s'agit d'un nombre unique, indépendant du fuseau horaire, facile à comparer et à manipuler arithmétiquement, et sans ambiguïté entre les systèmes. Toute base de données, fichier journal, JWT, jeton OAuth et la plupart des API modernes utilisent des timestamps Unix en interne. La revendication « exp » d'un JWT est un timestamp Unix ; le « created_at » de la plupart des API est un timestamp Unix ou une chaîne ISO 8601 qui en dérive ; les heures de modification des fichiers sous Linux/macOS sont stockées sous forme de timestamps Unix. Il existe deux variantes courantes à distinguer : les secondes (la convention Unix originale, utilisée dans les JWT, OAuth et les métadonnées de fichiers Linux) et les millisecondes (utilisées par Date.now() en JavaScript, System.currentTimeMillis() en Java et de nombreuses API modernes). Un timestamp à 10 chiffres est en secondes ; un timestamp à 13 chiffres est en millisecondes. Cet outil gère les deux : collez n'importe quel format dans n'importe quel champ et nous le détecterons et le convertirons automatiquement. L'autre concept utile à connaître : ISO 8601 est le format lisible standard (2025-12-31T23:59:59Z), strictement classé par ordre alphabétique et analysable partout. Lorsque vous avez le choix entre stocker des timestamps sous forme d'entiers Unix ou de chaînes ISO 8601, préférez Unix pour les performances et ISO 8601 pour la lisibilité.

Cas d'usage courants

  • Décodez le claim 'exp' ou 'iat' de la charge utile d'un JWT pour voir quand il expire.

  • Convertissez les horodatages des réponses d'API vers votre fuseau horaire local pour le débogage.

  • Générez des horodatages pour définir les en-têtes d'expiration des cookies.

  • Traduisez les horodatages de la base de données (secondes epoch) en ISO 8601 pour l'analyse des journaux.

  • Calculez le temps écoulé entre deux événements en soustrayant leurs horodatages Unix.

  • Planifiez des tâches cron avec la commande at en utilisant des horodatages Unix explicites.

Questions fréquentes

Pourquoi 1970 ?
C'est une convention des premiers systèmes Unix des laboratoires Bell. Le choix était arbitraire mais s'est imposé. L'entier signé de 32 bits qui le stockait à l'origine déborde à 2:14:07 UTC le 19 janvier 2038 : le « problème de l'an 2038 ». Les systèmes modernes utilisent des entiers de 64 bits, repoussant le débordement à l'an 292 277 026 596.
Secondes ou millisecondes ?
Les timestamps Unix sont en secondes (nombres à 10 chiffres en 2025). Date.now() en JavaScript et System.currentTimeMillis() en Java utilisent des millisecondes (13 chiffres). Vérifiez toujours ce qu'attend l'API que vous appelez : un facteur 1000 oublié ou en trop est l'erreur de timestamp numéro un en production.
Comment afficher ce timestamp dans mon fuseau horaire ?
Les timestamps Unix sont indépendants du fuseau horaire : ils représentent le même instant partout. Affichez-le dans votre fuseau local en passant le timestamp au formateur de dates de votre langage avec le fuseau approprié. En JavaScript : new Date(ts*1000).toLocaleString('fr-FR', { timeZone: 'America/New_York' }).
Quelle est la différence entre le temps Unix et UTC ?
Le temps Unix est un nombre unique ; UTC est une représentation qui inclut l'année, le mois, le jour, l'heure, la minute et la seconde. Les timestamps Unix sont toujours en UTC par convention : il n'existe pas de « temps Unix en EST ». L'affichage peut se faire dans n'importe quel fuseau, mais le nombre sous-jacent est universel.
Comment les secondes intercalaires sont-elles gérées ?
Le temps Unix ignore les secondes intercalaires : il fait comme si chaque jour comptait exactement 86 400 secondes. Cela signifie que le temps Unix peut brièvement revenir en arrière ou se figer pendant les insertions de secondes intercalaires. Pour la plupart des applications, c'est invisible ; pour les systèmes de haute précision (GPS, trading financier), utilisez le TAI (Temps Atomique International).
Les timestamps Unix peuvent-ils être négatifs ?
Oui : ils représentent alors des dates antérieures à 1970. Les timestamps négatifs fonctionnent dans la plupart des langages, même si certains systèmes hérités les rejettent.
Qu'est-ce qu'un timestamp ISO 8601 ?
ISO 8601 est la norme internationale pour le format de date/heure lisible : AAAA-MM-JJTHH:MM:SSZ (Z = UTC, ou +HH:MM pour d'autres décalages). Exemple : 2025-12-31T23:59:59Z. Les chaînes ISO 8601 se classent alphabétiquement dans l'ordre chronologique, ce qui les rend excellentes pour les fichiers journaux et les requêtes de bases de données.

Outils connexes