Jours ouvrés de projet
Du lundi 6 au vendredi 10 juillet 2026, un projet compte 5 jours ouvrés, et déclarer le 8 juillet férié en laisse 4. Indiquez début, fin et fermetures pour obtenir le total de jours travaillés. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Début
- 2026-07-06
- End
- 2026-07-10
- Jours ouvrés
- 5
- Jours calendaires
- 5
- Jours de week-end
- 0
- Jours fériés exclus
- 0
Les calendriers de projet ne signifient presque jamais des jours calendaires bruts. Lorsqu'un cahier des charges promet trente jours ouvrés à compter du lancement, ou qu'un client demande combien de jours facturables séparent deux jalons, les week-ends et les jours fériés faussent en silence toute soustraction naïve de deux dates ISO. Ce calculateur de jours ouvrés de projet accepte une date de début, une date de fin et une liste optionnelle de jours fériés, puis renvoie le décompte inclusif du lundi au vendredi restant après retrait de ces fériés.
Ce qu'est un jour ouvré de projet dans ce calculateur
Un jour ouvré de projet est tout jour du calendrier grégorien qui tombe un lundi, mardi, mercredi, jeudi ou vendredi et qui n'apparaît pas dans le tableau optionnel holidays. L'intervalle est inclusif : si la date de début est un jour ouvré et non un férié, elle compte comme le jour un de la fenêtre de projet ; si la date de fin est également un jour ouvré, elle compte aussi. Les samedis et dimanches ne comptent jamais, même au sein d'un engagement de plusieurs mois.
Les fériés qui tombent un week-end ne modifient pas le total, car ces jours étaient déjà exclus comme week-end ; seuls les fériés en jour ouvré réduisent le total de jours ouvrés, et ces dates apparaissent dans la liste holidays de la réponse pour que l'audit voie exactement quels jours ouvrables non travaillés ont été appliqués.
Où le décompte des jours ouvrés de projet est utile
Les équipes de livraison utilisent un calculateur de jours ouvrés de projet pour traduire des durées contractuelles en jours ouvrés vers des dates calendaires, ou pour mesurer combien de jours facturables se sont déjà écoulés entre le lancement et une revue d'état. Les chefs de produit qui planifient des sprints ont besoin de décomptes inclusifs de jours ouvrés qui ignorent les fériés d'entreprise listés une fois par région.
La finance et les opérations de services professionnels rapprochent les feuilles de temps du maximum théorique de jours ouvrés d'une période de facturation sans ouvrir un tableur de bureau pour chaque client.
Cas d’usage
Fenêtres de jours ouvrés dans contrats et SOW
Mesurez les jours ouvrés inclusifs entre le lancement du projet et la fin contractuelle, en soustrayant les week-ends et la liste de fériés du cahier des charges.
Capacité de sprint et période de facturation
Calculez la capacité maximale en jours ouvrés d'un sprint ou d'une période mensuelle pour que planification et finance partagent le même total.
Temps écoulé pour SLA et jalons
Indiquez combien de jours ouvrés se sont écoulés entre deux jalons dans les rapports d'état, sans compter samedis, dimanches ni fermetures listées.
Questions fréquentes
Comment compter les jours ouvrés de projet entre deux dates ?
Envoyez start et end au format YYYY-MM-DD. Passez éventuellement holidays comme tableau du même format.
Que se passe-t-il si un férié tombe un week-end ?
Les fériés de week-end ne modifient pas le total.
Le premier et le dernier jour sont-ils comptés ?
Oui. La période est inclusive : le premier et le dernier jour comptent comme jours ouvrés dès qu'ils tombent du lundi au vendredi et ne figurent pas dans votre liste de fériés.
Que se passe-t-il si la date de fin précède la date de début ?
Le calculateur refuse la paire au lieu d'inverser les dates. Un projet qui se termine avant d'avoir commencé est presque toujours une faute de saisie, et mieux vaut la repérer qu'obtenir un résultat trompeur.
Que se passe-t-il si je saisis deux fois le même férié ?
Les doublons sont ignorés : un férié inscrit deux fois ne retire qu'un seul jour. Le résultat liste aussi les fériés tombant en semaine qui ont été retirés, pour que chacun puisse les vérifier.
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/date/business-days-project \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"start":"2026-07-06","end":"2026-07-31"}'const res = await fetch("https://api.kit.forhosting.com/date/business-days-project", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"start": "2026-07-06",
"end": "2026-07-31"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/business-days-project",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"start": "2026-07-06",
"end": "2026-07-31"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/business-days-project", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"start":"2026-07-06","end":"2026-07-31"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"start":"2026-07-06","end":"2026-07-31"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/business-days-project", 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
{
"start": "2026-07-06",
"end": "2026-07-31"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.business_days_project",
"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
Une validation en échec n'est pas facturée ; les appels réussis utilisent le prix de base publié $0.002 sans jetons de modèle ni réseau sortant.
Ce qu'est un jour ouvré de projet dans ce calculateur
L'algorithme parcourt chaque jour civil du début à la fin par arithmétique pure : les numéros de série suivent Howard Hinnant days_from_civil, les jours de la semaine la méthode Sakamoto, et les années bissextiles la règle grégorienne selon laquelle les siècles ne sont bissextiles que s'ils sont divisibles par quatre cents. Aucun objet JavaScript Date n'est construit, donc la réponse est identique dans chaque région Worker et dans les tests hors ligne.
Contrat d'entrée, champs de réponse et erreurs
Chaque date est validée comme jour grégorien réel, y compris le 29 février uniquement les années bissextiles, de sorte que 2023-02-29 est rejeté et 2024-02-29 accepté. Exemple : start 2026-07-06 (lundi) et end 2026-07-10 (vendredi) sans fériés donne cinq jours ouvrés, cinq jours calendaires et zéro week-end. La même semaine avec holidays contenant 2026-07-08 donne quatre jours ouvrés et une entrée dans holidays. Envoyez un corps JSON avec start et end comme chaînes de calendrier ISO-8601 obligatoires au format YYYY-MM-DD. holidays est un tableau optionnel des mêmes chaînes ; omettez-le ou passez un tableau vide lorsque le projet n'a pas de fermetures hors week-end. Des alias sont acceptés pour la commodité : from, begin et project_start correspondent à start ; to, finish et project_end à end. start doit être antérieur ou égal à end ; une paire inversée échoue avec invalid_input plutôt que d'échanger les bornes en silence, car une fenêtre de projet inversée est presque toujours une erreur de saisie qu'il faut exposer. En cas de succès le corps renvoie les chaînes normalisées start et end, business_days comme décompte inclusif de jours ouvrés, calendar_days comme l'étendue inclusive de tous les jours, weekend_days comme le nombre de samedis et dimanches dans l'intervalle, holidays_excluded comme le nombre de fériés en jour ouvré qui ont réellement réduit le total, holidays comme la liste triée de ces fériés dans l'intervalle, et une courte chaîne formula décrivant la règle. Dates invalides ou manquantes, une valeur holidays qui n'est pas un tableau, ou un start après end lèvent invalid_input et ne sont pas facturés.
Où le décompte des jours ouvrés de projet est utile
Comme l'implémentation est pure parse de niveau A, chaque appel réussi coûte le prix de base publié $0.002 sans jetons de modèle de langage ni dépendance à une API de jours fériés — vous fournissez la liste des fériés de votre juridiction ou du calendrier d'entreprise. Gardez les requêtes petites, figez business_days dans les tests d'intégration, et vous obtenez des fenêtres de projet reproductibles pour outils Gantt, moteurs de SLA, aperçus de facture et workers en périphérie sans monter un service de calendrier complet à vous.
Questions techniques
Les dates de début et de fin sont-elles incluses ?
Oui. Les deux bornes sont inclusives : si start ou end est un jour ouvré et non un férié listé, il ajoute un à business_days.
start peut-il être après end ?
Non. La tâche échoue avec invalid_input lorsque start est postérieur à end, afin de ne pas échanger en silence des fenêtres de projet inversées.
Combien coûte le calculateur de jours ouvrés de projet ?
L'outil navigateur est gratuit. Les requêtes API utilisent le solde KIT prépayé à $0.002 par appel réussi ; une entrée invalide n'est pas facturée.