Open data over feestdagen: JSON en ICS
De feestdagen van 131 landen (2025–2030) om te downloaden of direct op te halen – zonder account, zonder API-sleutel, met open CORS. We publiceren alleen gegevens die we met onafhankelijke bronnen hebben gecontroleerd.
Adressen (stabiel, versie 1)
Alle bestanden zijn statisch en worden een dag gecachet. Landcode = ISO 3166-1 alpha-2 in kleine letters, regiocodes = ISO 3166-2 zonder landprefix.
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"
]
}Codevoorbeelden
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'Abonneren in je agenda
De ICS-bestanden bevatten de landelijke feestdagen. Google Agenda: ‘Andere agenda’s → Via URL’; Outlook: ‘Agenda toevoegen → Abonneren via internet’; iPhone: ‘Instellingen → Agenda → Accounts → Voeg agenda-abonnement toe’.
https://toolboxday.com/data/v1/holidays/fr/2027.icsLicentie
Onze samenstelling valt onder CC BY 4.0: vrij te gebruiken, delen en bewerken, ook commercieel, met bronvermelding. Gegevens van andere landen dan Duitsland zijn gebaseerd op python-holidays (MIT-licentie); de licentietekst is gelinkt en staat als bron in elk JSON-bestand. CC BY 4.0 · python-holidays (MIT)
Graag een bronvermelding met link
Gebruik je de gegevens op een website, in een app of in documentatie? Een zichtbare bronlink helpt ons ze bij te houden. Voorstel (tekst vrij aan te passen, nofollow is prima):
Holiday data: <a href="https://toolboxday.com/">ToolboxDay</a> (CC BY 4.0)Hoe de gegevens gecontroleerd zijn
- Duitsland: berekend uit de 16 deelstaatwetten over feestdagen en het Eenmakingsverdrag, met automatische tests.
- Overige landen: gemaakt met python-holidays en vergeleken met Nager.Date en de openbare feestdagenagenda’s van Google. Landen, jaren of regio’s met afwijkingen zijn niet opgenomen.
- Feestdagen volgens de maankalender hebben ‘estimated’: de datum kan een dag verschuiven, afhankelijk van de maanwaarneming. Zonder garantie – de officiële bron is leidend.
Schoolvakanties
De JSON-bestanden van Duitsland bevatten ook de schoolvakanties van alle 16 deelstaten (bron: KMK en de ministeries), voor zover officieel gepubliceerd.
Schoolvakanties van andere landen (OpenHolidays API) staan in een apart bestand onder de Open Database License (ODbL 1.0): /data/schulferien-welt.json
Alle landen en jaren
| Land | ISO | Bestanden |
|---|---|---|
| Afghanistan | af | 2026: JSON ICS · 2027: JSON ICS |
| Algerije | dz | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Andorra | ad | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Angola | ao | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Armenië | am | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Aruba | aw | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Australië | au | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Bahrein | bh | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Barbados | bb | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Belarus | by | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| België | be | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Belize | bz | 2026: JSON ICS · 2027: JSON ICS |
| Benin | bj | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Bermuda | bm | 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 |
| Cambodja | kh | 2026: JSON ICS · 2027: JSON ICS |
| Caribisch Nederland | bq | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Centraal-Afrikaanse Republiek | cf | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Colombia | co | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Congo-Brazzaville | cg | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Cookeilanden | ck | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Curaçao | cw | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Cyprus | cy | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Denemarken | dk | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Djibouti | dj | 2026: JSON ICS · 2027: JSON ICS |
| Dominica | dm | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Duitsland | de | 2025: JSON ICS · 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS · 2029: JSON ICS · 2030: JSON ICS |
| El Salvador | sv | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Estland | ee | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Ethiopië | et | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Faeröer | fo | 2026: JSON ICS · 2027: JSON ICS |
| Filipijnen | ph | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Finland | fi | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Frankrijk | fr | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Frans-Guyana | gf | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Frans-Polynesië | pf | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Gabon | ga | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Georgië | 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 |
| Grenada | gd | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Guatemala | gt | 2026: JSON ICS · 2027: JSON ICS |
| Guernsey | gg | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Guinee | gn | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Haïti | ht | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Hongarije | hu | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Ierland | ie | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| IJsland | is | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Indonesië | id | 2026: JSON ICS · 2027: JSON ICS |
| Irak | iq | 2026: JSON ICS · 2027: JSON ICS |
| Israël | il | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Italië | it | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Ivoorkust | ci | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Japan | jp | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Jersey | je | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Kazachstan | kz | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Kenia | ke | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Kroatië | hr | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Lesotho | ls | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Libanon | 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 |
| Litouwen | lt | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Luxemburg | lu | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Macau SAR van China | mo | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Malawi | mw | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Maldiven | 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 |
| Mauritanië | mr | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Mayotte | yt | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Mexico | mx | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Micronesia | fm | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Moldavië | md | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Monaco | 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 |
| Nederland | nl | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Nicaragua | ni | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Nieuw-Caledonië | nc | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Nieuw-Zeeland | nz | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Noord-Macedonië | mk | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Noorwegen | no | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Oeganda | ug | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Oost-Timor | tl | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Oostenrijk | at | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Palau | pw | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Paraguay | py | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Peru | pe | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Polen | pl | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Portugal | pt | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Qatar | qa | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Réunion | re | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Roemenië | ro | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Rusland | ru | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Rwanda | rw | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Saint Lucia | lc | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Saint-Barthélemy | bl | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Saint-Pierre en Miquelon | pm | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Samoa | ws | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| San Marino | sm | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Sao Tomé en Principe | st | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Senegal | sn | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Seychellen | sc | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Singapore | sg | 2026: JSON ICS · 2027: JSON ICS |
| Sint-Maarten | sx | 2026: JSON ICS · 2027: JSON ICS |
| Slovenië | si | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Slowakije | sk | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Soedan | sd | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Somalië | so | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Spanje | es | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Spitsbergen en Jan Mayen | sj | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Sri Lanka | lk | 2026: JSON ICS |
| Suriname | sr | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Tadzjikistan | tj | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Tanzania | tz | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Tokelau | tk | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Tsjaad | td | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Tsjechië | cz | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Turkije | tr | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Venezuela | ve | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Verenigd Koninkrijk | gb | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Verenigde Staten | us | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Wallis en Futuna | wf | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Zambia | zm | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Zimbabwe | zw | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Zuid-Afrika | za | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
| Zuid-Korea | kr | 2026: JSON ICS · 2027: JSON ICS |
| Zwitserland | ch | 2026: JSON ICS · 2027: JSON ICS · 2028: JSON ICS |
Fout gevonden of ontbreekt er een land? Mail ons: info@saracai.de