{"name":"hldays","description":"Public holidays down to the municipality level, with a source on every entry","countries":["PT"],"years":{"min":2016,"max":2099},"openapi":"/openapi.json","logo":"/logo.svg","endpoints":[{"method":"GET","path":"/ping","summary":"Health check. Public (no API key); returns status, server time and loaded data counts.","params":[],"example":"/ping"},{"method":"GET","path":"/v1/countries","summary":"List supported countries with coverage statistics.","params":[],"example":"/v1/countries"},{"method":"GET","path":"/v1/countries/{code}","summary":"One country: weekend days, jurisdiction levels and coverage.","params":[{"name":"code","required":true,"description":"ISO 3166-1 alpha-2 code."}],"example":"/v1/countries/PT"},{"method":"GET","path":"/v1/jurisdictions","summary":"List jurisdictions (country, subdivisions, municipalities).","params":[{"name":"country","required":false,"description":"ISO 3166-1 alpha-2 code."},{"name":"level","required":false,"description":"country, subdivision or municipality."},{"name":"parent","required":false,"description":"Parent jurisdiction id, e.g. PT-11."},{"name":"q","required":false,"description":"Search by name or alias (accent-insensitive, partial match), up to 20 results, best first."}],"example":"/v1/jurisdictions?country=PT&level=municipality"},{"method":"GET","path":"/v1/holidays","summary":"All holidays that apply in a jurisdiction in a year, including inherited regional and national ones.","params":[{"name":"jurisdiction","required":true,"description":"Jurisdiction id (e.g. PT-M-1106) or name/alias (e.g. lisboa, Lisbon). Names prefer the most specific level."},{"name":"year","required":false,"description":"Year 2016-2099. Default: current year."},{"name":"country","required":false,"description":"ISO 3166-1 alpha-2 code to disambiguate names across countries."},{"name":"types","required":false,"description":"Comma-separated holiday types to include: public, local, optional. Default public,local."},{"name":"include_sources","required":false,"description":"Include source/quote on each holiday (default true). false gives much smaller responses."}],"example":"/v1/holidays?jurisdiction=lisboa&year=2026"},{"method":"GET","path":"/v1/holidays/on","summary":"Every jurisdiction in a country with a holiday on a date (e.g. which municipalities are off today).","params":[{"name":"date","required":true,"description":"Date YYYY-MM-DD."},{"name":"country","required":true,"description":"ISO 3166-1 alpha-2 code."},{"name":"types","required":false,"description":"Comma-separated holiday types to include: public, local, optional. Default public,local."},{"name":"include_sources","required":false,"description":"Include source/quote on each holiday (default true). false gives much smaller responses."}],"example":"/v1/holidays/on?date=2026-06-24&country=PT"},{"method":"GET","path":"/v1/business-day","summary":"Whether a date is a business day in a jurisdiction.","params":[{"name":"jurisdiction","required":true,"description":"Jurisdiction id (e.g. PT-M-1106) or name/alias (e.g. lisboa, Lisbon). Names prefer the most specific level."},{"name":"date","required":true,"description":"Date YYYY-MM-DD."},{"name":"country","required":false,"description":"ISO 3166-1 alpha-2 code to disambiguate names across countries."},{"name":"types","required":false,"description":"Comma-separated holiday types to include: public, local, optional. Default public,local."},{"name":"include_sources","required":false,"description":"Include source/quote on each holiday (default true). false gives much smaller responses."}],"example":"/v1/business-day?jurisdiction=porto&date=2026-06-24"},{"method":"GET","path":"/v1/business-days/add","summary":"Add (or subtract, if negative) business days to a date. The start date is not counted.","params":[{"name":"jurisdiction","required":true,"description":"Jurisdiction id (e.g. PT-M-1106) or name/alias (e.g. lisboa, Lisbon). Names prefer the most specific level."},{"name":"from","required":true,"description":"Date YYYY-MM-DD."},{"name":"days","required":true,"description":"Integer between -366 and 366."},{"name":"country","required":false,"description":"ISO 3166-1 alpha-2 code to disambiguate names across countries."},{"name":"types","required":false,"description":"Comma-separated holiday types to include: public, local, optional. Default public,local."}],"example":"/v1/business-days/add?jurisdiction=lisboa&from=2026-06-10&days=3"},{"method":"POST","path":"/v1/mcp","summary":"MCP server (Model Context Protocol, Streamable HTTP, JSON responses). Tools: list_countries, find_jurisdiction, get_holidays, holidays_on_date, is_business_day, add_business_days. Send JSON-RPC 2.0 messages.","params":[],"example":"/v1/mcp"}]}