Public Holidays API in Python
Complete Python integration guide for the Public Holidays API. Copy the code below, add your RapidAPI key, and start building.
Prerequisites
- 1.Sign up for a free account on RapidAPI
- 2.Subscribe to the Public Holidays API (free tier available)
- 3.Copy your
X-RapidAPI-Keyfrom the dashboard - 4.Install the dependency:
pip install requests
Complete Python Example
import requests
url = "https://public-holidays-by-helix-api.p.rapidapi.com/holidays?country=US&year=2026"
headers = {
"X-RapidAPI-Key": "YOUR_API_KEY",
"X-RapidAPI-Host": "public-holidays-by-helix-api.p.rapidapi.com"
}
response = requests.get(url, headers=headers)
data = response.json()
print(f"Status: {data.get('status')}")
print(f"Result: {data.get('data')}")Response Format
All Helix-API endpoints return a consistent JSON envelope:
{
"status": "ok",
"data": { ... },
"meta": {
"request_id": "req_abc123",
"latency_ms": 42
}
}On errors, status becomes "error" and a message field explains what went wrong.
Error Handling
| Status | Meaning | Action |
|---|---|---|
200 | Success | Parse the response body normally |
400 | Bad request | Check your request parameters |
401 | Unauthorized | Verify your X-RapidAPI-Key header |
429 | Rate limited | Wait and retry with exponential backoff |
500 | Server error | Retry after a short delay |
Python Best Practices
Use a session for multiple calls
Create a requests.Session() and set headers once. This reuses TCP connections and is faster when making many calls to the Public Holidays API.
Handle rate limits gracefully
Check for HTTP 429 responses and implement exponential backoff. The Retry-After header tells you how long to wait.
Type your responses
Use Pydantic models or TypedDict to validate API responses. This catches schema changes early and gives you autocomplete in your IDE.
Async for high throughput
Use aiohttp or httpx for async calls when you need to make many concurrent requests. Perfect for batch processing.
Public Holidays API Endpoints
/holidaysAll public holidays for a country and year
/nextUpcoming holidays for a country (next 365 days)
/countriesList all supported countries
Other Languages
View the Public Holidays API integration guide in another language: