{
  "meta": {
    "dataset": "HolidayGrid national public holidays",
    "datasetVersion": "1.0.0",
    "generatedAt": "2026-07-27",
    "license": "https://creativecommons.org/licenses/by/4.0/",
    "attribution": "HolidayGrid (https://holidaygrid.net), CC BY 4.0",
    "sourceDataset": "https://github.com/commenthol/date-holidays",
    "sourceLicense": "ISC and CC BY 3.0",
    "documentation": "https://holidaygrid.net/data",
    "countingRule": "A holiday moved off a weekend is counted once, on the day it is observed. Totals therefore match official government counts and are lower than on sites that list both the original date and its replacement."
  },
  "version": "1.0.0",
  "license": "https://creativecommons.org/licenses/by/4.0/",
  "endpoints": [
    {
      "url": "https://holidaygrid.net/data/countries.json",
      "returns": "Every country, with per-year counts."
    },
    {
      "url": "https://holidaygrid.net/data/holidays.json",
      "returns": "Every country and every covered year in one file."
    },
    {
      "url": "https://holidaygrid.net/data/{country}.json",
      "returns": "One country, all covered years."
    },
    {
      "url": "https://holidaygrid.net/data/{country}/{year}.json",
      "returns": "One country and year."
    },
    {
      "url": "https://holidaygrid.net/data/year/{year}.json",
      "returns": "One year, every country."
    },
    {
      "url": "https://holidaygrid.net/corrections.json",
      "returns": "Every correction, with its source."
    }
  ],
  "fields": {
    "holiday.date": "ISO 8601. The nominal calendar date the holiday belongs to.",
    "holiday.observedDate": "ISO 8601. Present only when the day off was moved. Take observedDate ?? date for the day people are actually off.",
    "holiday.endDate": "ISO 8601. Present only for a holiday running more than one day.",
    "holiday.days": "Number of calendar days the holiday covers.",
    "holiday.name": "English name.",
    "holiday.localName": "Local-language name, where it differs from the English one.",
    "holiday.weekday": "Full weekday name of the day off.",
    "holiday.movingRule": "How the date is worked out: fixed, fixed-observed, weekday, easter, orthodox, julian, islamic, lunisolar, astronomical, announced, substitute or other.",
    "holiday.scope": "Always national. Regional days are not in this dataset.",
    "holiday.corrected": "Present when this row exists or was changed by a correction, with the source behind it.",
    "status.status": "gazetted (an authority has published this exact year), statutory (set in standing law), or computed (past the point the authority has settled).",
    "country.countryCode": "ISO 3166-1 alpha-2.",
    "country.dateFormat": "How dates are conventionally written in that country."
  },
  "notes": [
    "Every date field is ISO 8601. Localised strings never appear in machine-readable output.",
    "A holiday moved off a weekend is counted once, on the day it is observed. Totals therefore match official government counts and are lower than on sites that list both the original date and its replacement.",
    "Attribution is required under CC BY 4.0. A link to holidaygrid.net is enough."
  ]
}