Additionner heures, minutes et secondes
1 heure 45 minutes 30 secondes plus 80 minutes et 90 secondes donnent exactement 3 heures et 7 minutes. Additionnez des chapitres de podcast, des intervalles d'entraînement ou des segments de réunion et obtenez un total net. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Additionner plusieurs blocs de chronomètre est une corvée quotidienne qu'une face d'horloge ne résout pas : deux podcasts d'une heure quarante-cinq et de cinquante minutes, trois intervalles d'entraînement, un film plus bandes-annonces et publicités, un trajet avec deux correspondances. Cet additionneur de durées prend plusieurs durées données en heures, minutes et secondes, additionne chaque composante et normalise le total pour que les minutes et les secondes restent dans la plage habituelle de zéro à cinquante-neuf, tandis que les heures croissent autant que la somme l'exige. Ce n'est ni un outil horloge-plus-heures ni un additionneur de dates civiles : il n'y a ni franchissement de minuit ni fuseau horaire. Les heures, minutes ou secondes négatives sont rejetées comme entrée invalide, au lieu d'inventer une longueur signée qu'aucun minuteur de cuisine n'afficherait.
Ce que calcule vraiment l'addition de plusieurs durées
Une durée est une longueur de temps, non une heure du jour. Lorsque vous additionnez une heure quarante-cinq minutes trente secondes à quatre-vingts minutes et quatre-vingt-dix secondes, vous empilez des blocs de chronomètre, vous ne faites pas glisser une aiguille au-delà de minuit. Convertissez chaque bloc en une seule unité — les secondes — pour que l'arithmétique n'oublie pas une retenue : une heure vaut trois mille six cents secondes, une minute vaut soixante secondes, et les secondes restantes restent des secondes.
Additionnez ces totaux sur chaque ligne, puis redécoupez le grand total en heures, minutes et secondes par division entière ordinaire. Les secondes qui atteignent soixante deviennent une minute de plus ; les minutes qui atteignent soixante deviennent une heure de plus ; les heures peuvent dépasser vingt-quatre car une durée n'est pas une face d'horloge. C'est la normalisation que cet additionneur applique toujours.
Le même chemin refuse toute heure, minute ou seconde négative au lieu d'inventer une durée signée qu'aucun minuteur de cuisine n'afficherait. Rien ne consulte une horloge système, un fuseau horaire ou un calendrier : le résultat est une fonction pure des nombres que vous avez envoyés. Un outil horloge-plus-heures répond à une autre recherche — quelle heure est-il après huit heures.
Un additionneur de durées ISO-8601 répond à une autre — chaînes PnYnMnD. Une calculatrice de temps générale qui soustrait aussi ou convertit depuis des secondes totales répond à une requête plus large. Cette page n'est que l'additionneur heures-minutes-secondes que l'on tape dans un moteur comme additionneur de durées, et le contrat est volontairement étroit pour que la réponse ne dérive jamais vers le calcul d'horloge.
Où un additionneur de durées gagne sa place
Les monteurs et les podcasteurs additionnent longueurs de chapitre, blocs de bande-annonce et publicités en milieu de programme pour publier une durée de lecture qui corresponde au fichier qu'ils livreront. Les coachs et les athlètes additionnent échauffement, intervalles et retour au calme pour qu'un plan de séance affiche un seul nombre au lieu d'une colonne qui exige encore une calculatrice. Les chefs de projet additionnent segments de réunion et tronçons de trajet lorsqu'une journée se facture au chronomètre plutôt qu'à l'horloge du mur.
Les enseignants et les sites de préparation aux examens ont besoin d'un oracle déterministe qui marque quatre-vingts minutes plus quatre-vingt-dix secondes comme une heure trente-et-une minutes, non comme une horloge d'une heure avec des secondes restantes non retenues. Les équipes vidéo additionnent les longueurs de plan avant de monter un reel ; les parents additionnent blocs de devoirs et fenêtres de corvées avant de promettre une soirée.
Associez cet additionneur à un outil horloge-plus-heures lorsque vous voulez une heure de fin de journée, et à un outil date-plus-jours lorsque vous voulez une date civile plutôt qu'une longueur.
Cas d’usage
Additionner échauffement et intervalles
Additionnez échauffement, intervalles de travail, repos et retour au calme donnés en heures, minutes et secondes pour obtenir une seule longueur de séance déjà normalisée.
Cumuler les durées de vidéo ou de podcast
Empilez longueurs de chapitre, bandes-annonces et publicités pour que la durée publiée corresponde au fichier que vous livrerez, retenue déjà appliquée.
Totaliser trajets ou segments de réunion
Additionnez chaque tronçon d'un voyage ou chaque bloc d'une journée facturée et recevez une seule durée au lieu d'une colonne qui exige encore une calculatrice.
Questions fréquentes
Comment additionner plusieurs durées en heures, minutes et secondes ?
Envoyez durations comme un tableau d'objets avec hours, minutes et seconds (les parties absentes valent 0).
Que se passe-t-il si une composante est négative ?
Une composante de durée ne peut pas être négative ; l'additionneur n'inventera pas une longueur signée. Une validation en échec n'est pas facturée.
Les minutes et les secondes doivent-elles rester sous 60 ?
Pas à l'entrée. Quatre-vingts minutes ou quatre-vingt-dix secondes sont acceptées sur une ligne. Après la somme, secondes et minutes sont retenues pour que le résultat tienne dans la plage habituelle 0–59 et que les heures croissent au besoin.
Est-ce la même chose qu'ajouter des heures à une heure d'horloge ?
Non. Cet additionneur de durées empile des longueurs de chronomètre et renvoie une durée. Un outil horloge-plus-heures fait glisser une heure du jour et signale un franchissement de minuit. Utilisez l'outil qui correspond à la recherche que vous visiez.
Le total peut-il dépasser 24 heures ?
Oui. Une durée est un temps écoulé, pas une heure de la journée : les heures augmentent autant que la somme l'exige et ne repartent jamais de zéro à minuit. Seules les minutes et les secondes sont reportées sur l'unité suivante.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/life/time-adder \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"durations":[{"hours":1,"minutes":45,"seconds":30},{"hours":0,"minutes":80,"seconds":90}]}'const res = await fetch("https://api.kit.forhosting.com/life/time-adder", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"durations": [
{
"hours": 1,
"minutes": 45,
"seconds": 30
},
{
"hours": 0,
"minutes": 80,
"seconds": 90
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/life/time-adder",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"durations": [
{
"hours": 1,
"minutes": 45,
"seconds": 30
},
{
"hours": 0,
"minutes": 80,
"seconds": 90
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/life/time-adder", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"durations":[{"hours":1,"minutes":45,"seconds":30},{"hours":0,"minutes":80,"seconds":90}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"durations":[{"hours":1,"minutes":45,"seconds":30},{"hours":0,"minutes":80,"seconds":90}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/life/time-adder", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"durations": [
{
"hours": 1,
"minutes": 45,
"seconds": 30
},
{
"hours": 0,
"minutes": 80,
"seconds": 90
}
]
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "life.time_adder",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
min_items | 1 |
max_items | 200 |
max_total_seconds | 1000000000000000 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Les appels API réussis utilisent le tarif de base publié $0.002 ; une validation en échec n'est pas facturée.
Contrat d'entrée, règles de retenue et forme de la réponse
Chaque objet peut porter hours, minutes et seconds comme nombres finis non négatifs ; une composante absente vaut zéro, si bien qu'une ligne de seules minutes est un bloc de chronomètre valide. À l'entrée, minutes et seconds peuvent dépasser cinquante-neuf — quatre-vingts minutes et quatre-vingt-dix secondes sont licites — car l'additionneur normalise après la somme, non avant. Exemple : une heure quarante-cinq minutes trente secondes plus quatre-vingts minutes et quatre-vingt-dix secondes font onze mille deux cent vingt secondes, qui se normalisent en trois heures, sept minutes et zéro seconde. Associez la réponse à votre propre affichage si vous devez extraire des jours de grands comptes d'heures ; ce point d'accès renvoie des heures sans plafond après retenue, non une horloge du jour. Envoyez un corps JSON avec un champ obligatoire : durations, un tableau d'au moins un objet. Les alias times, items et list sont acceptés afin que tableurs et formulaires typés réutilisent le même contrat. Toute composante négative échoue avec invalid_input et un message qui nomme le champ et dit qu'il ne peut pas être négatif ; ces échecs ne sont pas facturés. Une liste vide, un non-tableau ou une ligne qui n'est pas un objet échouent aussi avec invalid_input. En cas de succès, le corps inclut count (combien de lignes ont été additionnées), hours, minutes et seconds du total normalisé, total_seconds comme scalaire unique, decimal_hours pour les tableurs qui préfèrent une longueur décimale, hms comme chaîne H:MM:SS à zéros de tête, et une courte formule qui rappelle l'identité additionner-puis-retenir.
Où un additionneur de durées gagne sa place
Sur cette page le travail s'exécute entièrement dans votre navigateur ; via l'API chaque somme réussie coûte $0.002, une validation en échec n'est pas débitée, et rien n'est conservé après le retour de la réponse.
Questions techniques
Combien coûte l'additionneur de durées ?
L'outil du navigateur est gratuit. Les requêtes API utilisent un solde prépayé à $0.002 par appel réussi ; une entrée invalide n'est pas facturée.