Datos abiertos de días festivos: JSON e ICS
Los días festivos de 131 países (2025–2030) para descargar o consultar directamente: sin registro, sin clave de API y con CORS abierto. Solo publicamos datos contrastados con fuentes independientes.
Direcciones (estables, versión 1)
Todos los archivos son estáticos y se almacenan en caché un día. Código de país = ISO 3166-1 alfa-2 en minúsculas; códigos de región = ISO 3166-2 sin prefijo de país.
https://toolboxday.com/data/v1/holidays/index.json
https://toolboxday.com/data/v1/holidays/{country}/{year}.json
https://toolboxday.com/data/v1/holidays/{country}/{year}.icsindex.json · /data/v1/holidays/de/2027.json · /data/v1/holidays/fr/2027.ics
{
"date": "2027-01-06",
"id": "heiligeDreiKoenige",
"name": "Epiphany",
"localName": "Heilige Drei Könige",
"nationwide": false,
"regions": [
"BW",
"BY",
"ST"
]
}Ejemplos de código
JavaScript
const res = await fetch('https://toolboxday.com/data/v1/holidays/de/2027.json');
const data = await res.json();
// nationwide holidays + holidays of one state (e.g. Bavaria = "BY")
const byState = data.holidays.filter(
(h) => h.nationwide || h.regions?.includes('BY')
);
console.log(byState.map((h) => `${h.date} ${h.name}`));Python
import json, urllib.request
url = "https://toolboxday.com/data/v1/holidays/de/2027.json"
data = json.load(urllib.request.urlopen(url))
for h in data["holidays"]:
where = "nationwide" if h["nationwide"] else ", ".join(h["regions"])
print(h["date"], h["name"], "-", where)curl + jq
curl -s https://toolboxday.com/data/v1/holidays/de/2027.json | jq '.holidays[] | select(.nationwide) | .date'Suscribirse en el calendario
Los archivos ICS contienen los festivos nacionales. Google Calendar: «Otros calendarios → Desde URL»; Outlook: «Agregar calendario → Suscribirse desde la web»; iPhone: «Ajustes → Calendario → Cuentas → Añadir calendario suscrito».
https://toolboxday.com/data/v1/holidays/fr/2027.icsLicencia
Nuestra recopilación está bajo licencia CC BY 4.0: puedes usarla, compartirla y adaptarla, también con fines comerciales, citando la fuente. Los datos de países distintos de Alemania se basan en python-holidays (licencia MIT); el aviso de licencia está enlazado y figura como fuente en cada archivo JSON. CC BY 4.0 · python-holidays (MIT)
Por favor, cita la fuente con un enlace
Si usas los datos en una web, una app o una documentación, te agradecemos un enlace visible a la fuente: nos ayuda a mantenerlos actualizados. Sugerencia (redacción libre, nofollow está bien):
Holiday data: <a href="https://toolboxday.com/">ToolboxDay</a> (CC BY 4.0)Cómo se comprueban los datos
- Alemania: calculada a partir de las 16 leyes regionales de festivos y del Tratado de Unificación, con pruebas automáticas.
- Resto de países: generados con python-holidays y contrastados con Nager.Date y los calendarios públicos de festivos de Google. Los países, años o regiones con discrepancias no se incluyen.
- Las fiestas del calendario lunar llevan «estimated»: la fecha puede variar un día según el avistamiento de la luna. Sin garantía: prevalece la fuente oficial.
Vacaciones escolares
Los archivos JSON de Alemania incluyen además las vacaciones escolares de los 16 estados federados (fuente: KMK y ministerios regionales), en la medida en que estén publicadas.
Las vacaciones escolares de otros países (OpenHolidays API) están en un archivo aparte bajo la Open Database License (ODbL 1.0): /data/schulferien-welt.json
Todos los países y años
| País | ISO | Archivos |
|---|---|---|
| Afganistán | af | 2026: JSON ICS · 2027: JSON ICS |
| Alemania | de | 2025: JSON ICS · 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS · 2029: JSON ICS · 2030: JSON ICS |
| Andorra | ad | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Angola | ao | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Argelia | dz | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Armenia | am | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Aruba | aw | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Australia | au | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Austria | at | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Barbados | bb | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Baréin | bh | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Bélgica | be | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Belice | bz | 2026: JSON ICS · 2027: JSON ICS |
| Benín | bj | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Bermudas | bm | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Bielorrusia | by | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Bolivia | bo | 2026: JSON ICS · 2027: JSON ICS |
| Burundi | bi | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Camboya | kh | 2026: JSON ICS · 2027: JSON ICS |
| Caribe neerlandés | bq | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Catar | qa | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Chad | td | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Chequia | cz | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Chipre | cy | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Colombia | co | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Congo | cg | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Corea del Sur | kr | 2026: JSON ICS · 2027: JSON ICS |
| Côte d’Ivoire | ci | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Croacia | hr | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Curazao | cw | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Dinamarca | dk | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Dominica | dm | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| El Salvador | sv | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Eslovaquia | sk | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Eslovenia | si | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| España | es | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Estados Unidos | us | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Estonia | ee | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Etiopía | et | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Filipinas | ph | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Finlandia | fi | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Francia | fr | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Gabón | ga | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Georgia | ge | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Ghana | gh | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Gibraltar | gi | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Granada | gd | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Guatemala | gt | 2026: JSON ICS · 2027: JSON ICS |
| Guayana Francesa | gf | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Guernesey | gg | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Guinea | gn | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Haití | ht | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Hungría | hu | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Indonesia | id | 2026: JSON ICS · 2027: JSON ICS |
| Irak | iq | 2026: JSON ICS · 2027: JSON ICS |
| Irlanda | ie | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Islandia | is | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Islas Cook | ck | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Islas Feroe | fo | 2026: JSON ICS · 2027: JSON ICS |
| Israel | il | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Italia | it | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Japón | jp | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Jersey | je | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Kazajistán | kz | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Kenia | ke | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Lesoto | ls | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Líbano | lb | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Liberia | lr | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Liechtenstein | li | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Lituania | lt | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Luxemburgo | lu | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Macedonia del Norte | mk | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Malaui | mw | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Maldivas | mv | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Mali | ml | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Malta | mt | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Mauritania | mr | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Mayotte | yt | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| México | mx | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Micronesia | fm | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Moldavia | md | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Mónaco | mc | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Montenegro | me | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Mozambique | mz | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Nauru | nr | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Nicaragua | ni | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Noruega | no | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Nueva Caledonia | nc | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Nueva Zelanda | nz | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Países Bajos | nl | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Palaos | pw | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Paraguay | py | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Perú | pe | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Polinesia Francesa | pf | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Polonia | pl | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Portugal | pt | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| RAE de Macao (China) | mo | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Reino Unido | gb | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| República Centroafricana | cf | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Reunión | re | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Ruanda | rw | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Rumanía | ro | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Rusia | ru | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Samoa | ws | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| San Bartolomé | bl | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| San Marino | sm | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| San Pedro y Miquelón | pm | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Santa Lucía | lc | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Santo Tomé y Príncipe | st | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Senegal | sn | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Seychelles | sc | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Singapur | sg | 2026: JSON ICS · 2027: JSON ICS |
| Sint Maarten | sx | 2026: JSON ICS · 2027: JSON ICS |
| Somalia | so | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Sri Lanka | lk | 2026: JSON ICS |
| Sudáfrica | za | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Sudán | sd | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Suiza | ch | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Surinam | sr | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Svalbard y Jan Mayen | sj | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Tanzania | tz | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Tayikistán | tj | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Timor-Leste | tl | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Tokelau | tk | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Turquía | tr | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Uganda | ug | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Venezuela | ve | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Wallis y Futuna | wf | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Yibuti | dj | 2026: JSON ICS · 2027: JSON ICS |
| Zambia | zm | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Zimbabue | zw | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
¿Has encontrado un error o falta un país? Escríbenos: info@saracai.de