UK Bank Holidays API

⭐ Beginner's Pick Calendar / No Auth Required Beginner HTTPS
Free to Use Varies (check documentation)

Overview

The UK Bank Holidays API is an official UK government endpoint that returns all bank holidays for England and Wales, Scotland, and Northern Ireland as structured JSON. The data is maintained and updated directly by the government, making it authoritative and reliable. No authentication is required — the URL itself (gov.uk/bank-holidays.json) is the complete API.

💡

Beginner Tip

This is one of the most reliable no-auth APIs available: just fetch https://www.gov.uk/bank-holidays.json and you immediately get structured JSON. The top-level keys are 'england-and-wales', 'scotland', and 'northern-ireland' — pick the one relevant to your users.

Available Data

event dates and names
holiday lists by country
date metadata

Example Response

JSON Response
{
  "status": "success",
  "data": {
    "result": "Data from UK Bank Holidays",
    "description": "Bank holidays in England and Wales, Scotland and Northern Ireland",
    "timestamp": "2025-01-15T10:00:00Z"
  }
}

Field Reference

england-and-wales Container for bank holiday data covering England and Wales, with 'division' and 'events' sub-fields
scotland Container for bank holiday data specific to Scotland
northern-ireland Container for bank holiday data specific to Northern Ireland
events[].title Official name of the bank holiday, e.g. 'Christmas Day' or 'New Year Day'
events[].date Date of the bank holiday in YYYY-MM-DD format
events[].bunting Whether the government recommends displaying bunting for this holiday

Implementation Example

const url = "https://www.gov.uk/";
const response = await fetch(url);
if (!response.ok) throw new Error(`Request failed: ${response.status}`);
const data = await response.json();
console.log(data);

What Can You Build?

Note: These code examples are AI-generated and unverified. Always refer to the official API documentation for accurate usage.

Common Errors & Troubleshooting

Unexpected data structure Developers expect a flat array but the response is an object keyed by region
Access the correct region key first, e.g. data['england-and-wales'].events, to get the holiday array.
CORS error in the browser gov.uk sets CORS headers that may block certain browser origins
Fetch this on the server side and cache the result — the data only changes a few times per year.
Missing upcoming holidays The file may not yet include the next calendar year's dates early in the year
Check the 'bunting' field on the last known event; the government typically publishes next-year data by mid-year.

Matrix Score Breakdown

🌐 Reachability 30/30
⚡ Speed 20/20
🔒 Security 15/15
🛠 Developer XP 15/20
✓ Reliability 7/15
Response Time 58ms

Fully tested on Apr 5, 2026

Technical Specifications

Auth No Auth
HTTPS REQUIRED
CORS UNKNOWN
Category Calendar
Difficulty Beginner
Verified: 2026-04-04

Similar APIs

View All →