Délai en jours ouvrés
Calculer une échéance en jours ouvrés au Sénégal avec /v1/delais, et compter les jours ouvrés d'une période avec /v1/jours-feries/ouvres.
Objectif : afficher une date de livraison, de remboursement ou de réponse juste, sans oublier les week-ends ni les jours fériés.
Pour l'API, un jour ouvré va du lundi au vendredi et n'est pas un jour férié
du jeu Jours fériés. Les dates sont au format
AAAA-MM-JJ. Le Sénégal est à l'heure GMT toute l'année.
Ajouter N jours ouvrés
GET /v1/delais?from=2026-10-01&days=10
{ "from": "2026-10-01", "days": 10, "date": "2026-10-15", "holidays": [], "warnings": [] }from: date de départ, non comptée.days: entier de 0 à 3 650.date: l'échéance.holidays: les jours fériés sautés.warnings: ce qui rend le résultat incertain.
Lire les avertissements
Les fêtes musulmanes dépendent de l'observation de la lune. Leurs dates sont prévisionnelles jusqu'à l'annonce officielle.
GET /v1/delais?from=2026-03-16&days=5
{
"from": "2026-03-16", "days": 5, "date": "2026-03-24",
"holidays": ["2026-03-20"],
"warnings": ["2026-03-20 (Korité (Aïd el-Fitr)) est une date prévisionnelle."]
}Le jeu couvre 2026 et 2027. Au-delà, seuls les week-ends sont exclus :
GET /v1/delais?from=2027-12-20&days=15
{
"from": "2027-12-20", "days": 15, "date": "2028-01-10",
"holidays": [],
"warnings": ["Aucun jour férié connu pour 2028 : seuls les week-ends sont exclus."]
}Affichez l'avertissement à l'utilisateur, par exemple « date estimée ». Ne promettez pas une date ferme qui dépend d'une fête lunaire.
Compter les jours ouvrés d'une période
GET /v1/jours-feries/ouvres?from=2026-12-01&to=2026-12-31 (bornes incluses)
{ "from": "2026-12-01", "to": "2026-12-31", "business_days": 22, "holidays": ["2026-12-25"], "warnings": [] }L'intervalle est limité à 10 ans. Si to précède from, l'API renvoie
400 INVALID_RANGE. Une date invalide renvoie 400 INVALID_DATE.
Code
const API = process.env.API_URL ?? 'http://localhost:8787';
export async function echeance(depart, jours) {
const res = await fetch(`${API}/v1/delais?from=${depart}&days=${jours}`);
const corps = await res.json();
if (!res.ok) throw new Error(corps.message);
return { date: corps.date, estimee: corps.warnings.length > 0, avertissements: corps.warnings };
}
// await echeance('2026-10-01', 10) → { date: '2026-10-15', estimee: false, avertissements: [] }Les réponses de cette page ont été obtenues sur l'API locale le 28 septembre 2026.
Et ensuite ?
Carte des communes
Télécharger le référentiel géographique du hub, lister les 553 communes avec leur population, et les placer sur une carte à partir des centroïdes disponibles.
Formulaire d'inscription
Valider un numéro sénégalais avec /v1/telephone/analyse et proposer région, département et commune en cascade avec /v1/geographie.