JDay

GET /v1/holidays

List all holidays for a country and year.

Parameters

NameTypeRequiredDescription
countrystringYesISO 3166-1 alpha-2 country code. Case-insensitive.
yearintegerYesMust be 2025, 2026, or 2027. Required in the REST API.
regionstringNoISO 3166-2 subdivision suffix. Requires paid plan. Regional holidays are only included when this is supplied.

Request

curl -X GET "https://jday-api.jday.workers.dev/v1/holidays?country=JP&year=2026" \
  -H "Authorization: Bearer jday_live_xxx" \
  -H "Accept: application/json"

Response

{
  "country": "JP",
  "year": 2026,
  "region": null,
  "holidays": [
    {
      "date": "2026-01-01",
      "official_date": null,
      "name": "New Year's Day",
      "local_name": "元日",
      "type": "public",
      "date_accuracy": "exact"
    },
    {
      "date": "2026-01-12",
      "official_date": null,
      "name": "Coming of Age Day",
      "local_name": "成人の日",
      "type": "public",
      "date_accuracy": "exact"
    }
  ]
}

Response Fields

FieldTypeDescription
countrystringNormalized country code.
yearintegerThe requested year.
regionstring | nullRegion code if provided, otherwise null.
holidaysarrayAll holidays for this country/year/region. Sorted by date, then name.

Holiday Object Fields

FieldTypeDescription
datestringEffective non-working date (what the engine uses).
official_datestring | nullLegal date when different from date, otherwise null.
namestringEnglish display name.
local_namestring | nullLocalized name when available, otherwise null.
typestring"public" or "regional".
date_accuracystring"exact" or "estimated".

Important Notes

  • year is required in the REST API. Missing year returns 400 missing_parameter.
  • The MCP server may default to the current UTC year as a convenience, but the REST API does not.
  • Regional holidays are only included when a valid region parameter is supplied.
  • local_name is always present (as null when unavailable).
  • date_accuracy is present on every entry.

Error Cases

ConditionError
Missing country or year400 missing_parameter
Malformed or unsupported year400 invalid_year
Unknown country400 invalid_country
Invalid region400 invalid_region
Region on Free plan403 plan_upgrade_required

On this page