Feriados CR
API gratuita y abierta con los feriados de Costa Rica. Sin registro ni clave, con CORS habilitado.
Referencia interactiva (Swagger) · OpenAPI · Estado
Próximo feriado
Cargando…
Endpoints
GET /api/v1/{año}
Todos los feriados del año. Filtro opcional ?pago=obligatorio o ?pago=no-obligatorio.
curl https://feriados.santiagosanchez.dev/api/v1/2026
GET /api/v1/proximo
El próximo feriado desde hoy (hora de Costa Rica), con los días que faltan.
GET /api/v1/hoy
Indica si hoy es feriado.
GET /api/v1/fecha/{AAAA-MM-DD}
Indica si una fecha específica es feriado.
GET /api/v1/{año}.ics
Calendario para importar en Google Calendar, Outlook o Apple Calendar. Acepta el mismo filtro pago.
GET /health
Estado del servicio y versión.
Respuesta
{
"year": 2026,
"country": "CR",
"count": 12,
"holidays": [
{
"date": "2026-01-01",
"name": "Año Nuevo",
"name_en": "New Year's Day",
"mandatory_pay": true,
"weekday": "jueves",
"weekday_en": "Thursday"
}
]
}
Errores
Los errores responden en JSON con un campo error:
{ "error": "Year must be between 2025 and 2100" }
| Código | Cuándo |
|---|---|
| 200 | Respuesta correcta |
| 400 | Año fuera de 2025–2100, fecha inexistente (por ejemplo 2026-02-30) o filtro pago inválido |
| 404 | Ruta que no existe o fecha con formato distinto de AAAA-MM-DD |
| 405 | Método distinto de GET |
Ejemplos
JavaScript
const res = await fetch('https://feriados.santiagosanchez.dev/api/v1/proximo');
const feriado = await res.json();
console.log(`${feriado.name} en ${feriado.days_until} días`);
Python
import requests
data = requests.get("https://feriados.santiagosanchez.dev/api/v1/2026",
params={"pago": "obligatorio"}, timeout=10).json()
for feriado in data["holidays"]:
print(feriado["date"], feriado["name"])
Feriados
| Fecha | Feriado | Pago |
|---|
Notas
Basado en los artículos 147 a 152 del Código de Trabajo y el calendario oficial del Ministerio de Trabajo (MTSS). Desde 2025 los feriados se celebran en su fecha natural; los traslados a lunes de la Ley 9875 solo aplicaron de 2020 a 2024. Años disponibles: 2025 a 2100.