Public Holidays API in Java

Complete Java 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-Key from the dashboard

Complete Java Example

helix-public-holidays.java
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;

public class HelixApiExample {
    public static void main(String[] args) throws Exception {
        String url = "https://public-holidays-by-helix-api.p.rapidapi.com/holidays?country=US&year=2026";

        HttpRequest request = HttpRequest.newBuilder()
            .uri(URI.create(url))
            .header("X-RapidAPI-Key", "YOUR_API_KEY")
            .header("X-RapidAPI-Host", "public-holidays-by-helix-api.p.rapidapi.com")
            .GET()
            .build();

        HttpClient client = HttpClient.newHttpClient();
        HttpResponse<String> response = client.send(
            request, HttpResponse.BodyHandlers.ofString()
        );

        System.out.println("Status: " + response.statusCode());
        System.out.println("Body: " + response.body());
    }
}

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

StatusMeaningAction
200SuccessParse the response body normally
400Bad requestCheck your request parameters
401UnauthorizedVerify your X-RapidAPI-Key header
429Rate limitedWait and retry with exponential backoff
500Server errorRetry after a short delay

Java Best Practices

Java 11+ HttpClient

The example uses java.net.http.HttpClient, available since Java 11. No external libraries needed to call the Public Holidays API.

Spring RestTemplate / WebClient

In Spring Boot, use RestTemplate (blocking) or WebClient (reactive). Both handle serialization and error mapping.

Gson or Jackson for JSON

Parse the response body with Gson or Jackson to map it to a POJO. This gives you type safety and easy field access.

CompletableFuture for async

Use HttpClient.sendAsync() with CompletableFuture for non-blocking calls in high-throughput applications.

Public Holidays API Endpoints

GET
/holidays

All public holidays for a country and year

GET
/next

Upcoming holidays for a country (next 365 days)

GET
/countries

List all supported countries

Other Languages

View the Public Holidays API integration guide in another language:

Related APIs

Start building with real APIs today

Free tier on every API, a live demo on every page, and a guide for each. No credit card to explore.

Helix-API Newsletter

Get new API launches, integration guides, and code examples in your inbox.