Fenêtre de sécurité des restes au réfrigérateur : calculateur
Une viande cuite mise au frigo le 20 juillet 2026 se garde jusqu'au 23 ou 24 juillet, soit 3 à 4 jours. Choisissez la catégorie de reste et le jour de mise au froid, puis ajoutez la date du jour pour voir les jours restants. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Catégorie
- Cooked meat
- Date de mise au réfrigérateur
- 2026-07-20
- Aujourd'hui
- 2026-07-23
- Libellé de catégorie
- Cooked meat and meat casseroles
- Jours minimum recommandés
- 3
- Jours maximum recommandés
- 4
- À consommer à partir du
- 2026-07-23
Tôt ou tard, toute personne qui cuisine à la maison se retrouve devant son réfrigérateur avec la même question : ce plat de chili est-il encore consommable ? Les recommandations générales de sécurité alimentaire, comme les consignes de conservation au froid publiées par l'USDA, attribuent à chaque catégorie de restes une durée de vie courte au réfrigérateur, mesurée en jours, et cet outil transforme ces consignes en dates calendaires concrètes. Indiquez la catégorie d'aliment et la date de mise au réfrigérateur à quarante degrés Fahrenheit ou moins, et le calculateur renvoie la fenêtre de consommation recommandée sous forme de plage de jours et de dates calendaires absolues, calculée par arithmétique entière pure sur les jours juliens, sans horloge hôte. Ajoutez une date de référence facultative pour savoir depuis combien de jours l'aliment est conservé, combien de jours il reste avant la fin de la fenêtre de sécurité, et s'il se trouve encore dans la fenêtre ou déjà au-delà. Les catégories inconnues et les dates calendaires impossibles sont rejetées avec une erreur de validation claire au lieu d'une estimation hasardeuse.
Comment la fenêtre de consommation est calculée
Le calculateur part d'une table fixe de plages de jours inspirées des consignes de conservation au froid de type USDA, avec une entrée par catégorie de restes : viande cuite, volaille cuite, poisson cuit, soupes et ragoûts, riz et pâtes cuits, légumes cuits, charcuterie, pizza, plats à base d'œufs cuits, viande hachée crue, morceaux de volaille crus et œufs durs.
Chaque entrée indique un nombre minimal et maximal de jours pendant lesquels l'aliment est généralement considéré comme sûr lorsqu'il est conservé dans un réfrigérateur à quatre degrés Celsius ou moins, à compter du jour de sa mise au froid. La date de réfrigération fournie est validée comme un jour calendaire ISO strict, en tenant compte des règles grégoriennes des années bissextiles, puis convertie en numéro de jour julien astronomique selon la formule entière de Fliegel et Van Flandern.
L'ajout du minimum de jours donne la date de consommation la plus proche, et l'ajout du maximum la date la plus lointaine ; la conversion entière inverse transforme ensuite ces deux numéros de jours en chaînes ordinaires année, mois, jour. Lorsque vous fournissez aussi une date de référence, l'outil soustrait les deux numéros de jours pour obtenir les jours déjà écoulés, en déduit les jours restants avant la date limite la plus tardive et ajoute un simple indicateur de statut.
Contexte de sécurité alimentaire et limites honnêtes
Ces fenêtres sont des consignes générales, pas des mesures de laboratoire sur votre boîte précise.
Le tableau de conservation au froid de type USDA suppose que l'aliment a été refroidi rapidement, en deux heures environ après la cuisson, et maintenu en continu à quatre degrés Celsius ou moins dans un récipient propre et hermétique ; un réfrigérateur trop chaud, un plat resté toute la nuit sur le plan de travail ou une contamination croisée peuvent raccourcir nettement la durée de sécurité, tandis que la congélation arrête complètement l'horloge et reste la bonne solution pour tout ce que vous ne mangerez pas dans la fenêtre.
La lecture prudente reste la règle classique : en cas de doute, jetez, car les bactéries responsables des intoxications alimentaires ne changent souvent ni l'odeur, ni le goût, ni l'aspect. Les services de préparation de repas, les cuisines professionnelles et les traiteurs utilisent ce type d'outil pour étiqueter les boîtes avec des dates de rebut calculées et contrôler les réfrigérateurs par rapport à des registres écrits, tandis que les ménages s'en servent pour planifier la semaine afin de manger d'abord les restes les plus anciens.
Rappelez-vous que le résultat exprime une consigne générale destinée aux adultes en bonne santé ; les femmes enceintes, les personnes âgées et les personnes immunodéprimées doivent suivre les conseils plus stricts de leur autorité locale de sécurité alimentaire.
Cas d’usage
Vérifier les restes au quotidien à la maison
Saisissez la catégorie et le jour de mise au réfrigérateur pour voir les dates limites exactes : le repas du soir repose sur des consignes, pas sur un test d'odeur.
Questions fréquentes
D'où viennent les plages de jours ?
Elles suivent les consignes générales de conservation au froid de type USDA pour les réfrigérateurs à 4 °C (40 °F) ou moins : la plupart des restes cuits se gardent trois à quatre jours, certaines catégories un peu plus ou un peu moins. Ce sont des consignes générales, pas une mesure de votre boîte précise.
Pourquoi pas de « jours restants » automatique sans champ today ?
La capacité est déterministe et ne lit jamais l'horloge hôte.
Quel format de date les champs exigent-ils ?
Le format ISO strict YYYY-MM-DD avec une année à quatre chiffres et un mois et un jour à deux chiffres. Les dates calendaires impossibles comme 2025-02-29 sont rejetées avec une explication au lieu d'être silencieusement reportées.
Peut-on savoir à l'odeur si des restes sont encore bons ?
Non. Les bactéries responsables d'intoxications alimentaires ne changent souvent ni l'odeur, ni le goût, ni l'aspect : un plat peut sembler normal sans être sûr. Dans le doute, jetez-le.
Qu'est-ce qui peut gâter des restes avant la fin de la fenêtre ?
Les durées supposent un refroidissement en deux heures environ et une conservation à 4 °C (40 °F) ou moins dans une boîte propre et fermée. Un frigo trop tiède, une nuit sur le plan de travail ou une contamination croisée les raccourcissent ; la congélation arrête le compteur.
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/leftover-food-safety-window \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"category":"cooked_meat","refrigerated_date":"2026-07-20"}'const res = await fetch("https://api.kit.forhosting.com/life/leftover-food-safety-window", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"category": "cooked_meat",
"refrigerated_date": "2026-07-20"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/life/leftover-food-safety-window",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"category": "cooked_meat",
"refrigerated_date": "2026-07-20"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/life/leftover-food-safety-window", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"category":"cooked_meat","refrigerated_date":"2026-07-20"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"category":"cooked_meat","refrigerated_date":"2026-07-20"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/life/leftover-food-safety-window", 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
{
"category": "cooked_meat",
"refrigerated_date": "2026-07-20"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "life.leftover_food_safety_window",
"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.
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
Ce que vous envoyez et ce que vous recevez
Un champ today facultatif fournit la date de référence servant à calculer le temps écoulé et restant ; l'omettre est un choix délibéré et utile, car la plage absolue de consommation n'exige aucune date courante, ce qui garde la capacité déterministe et sûre à exécuter partout. Envoyez deux champs obligatoires : category, choisie dans la liste fermée et documentée des catégories de restes, et refrigerated_date, le jour ISO strict de mise au réfrigérateur. En cas de succès, la réponse renvoie la catégorie normalisée avec un libellé lisible, la date de réfrigération, les jours minimaux et maximaux des consignes, ainsi que les dates calendaires use_by_earliest et use_by_latest. Avec une date de référence, elle retourne aussi days_stored, days_remaining_to_latest (qui devient négatif une fois la fenêtre fermée) et un status valant within_window ou past_window. Chaque échec est une erreur typée invalid_input qui nomme le champ fautif : une catégorie inconnue liste les valeurs acceptées, une date mal formée ou impossible explique le format attendu, et une date de référence antérieure à la date de réfrigération est rejetée comme absurde. Les échecs de validation ne sont pas facturés ; les appels API réussis coûtent le tarif de base publié de $0.002 par élément.
Contexte de sécurité alimentaire et limites honnêtes
Le prix API d'une consultation réussie est de $0.002 par élément, et comme les erreurs de validation sont gratuites, vous pouvez sans risque intégrer la capacité dans des scripts d'inventaire qui sondent de nombreuses catégories.
Cas d'intégration
Étiquetage de meal-prep et dates de rebut
Les plats cuisinés en grande quantité peuvent être étiquetés avec la date use_by_latest calculée, transformant une session de cuisine hebdomadaire en réfrigérateur organisé et facile à faire tourner.
Audits de cuisines et de traiteurs
Des scripts peuvent fournir la catégorie et la date de réfrigération de chaque boîte enregistrée et signaler tout élément dont le status est past_window, automatisant une ligne fastidieuse de la liste de contrôle.
Questions techniques
Que se passe-t-il si j'envoie une catégorie inconnue ?
La requête échoue avec une erreur typée invalid_input listant les catégories acceptées, et elle n'est pas facturée. Les noms de catégories sont en snake_case minuscules, comme cooked_meat ou deli_meat.
Combien cela coûte-t-il ?
L'outil du navigateur est gratuit et s'exécute localement avec la même fonction que l'API. Les requêtes API réussies utilisent le solde KIT prépayé à raison de $0.002 par élément ; les entrées invalides ne sont jamais facturées.