> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.holidays.rest/holidays-rest-api/languages/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.holidays.rest/_mcp/server. # languages GET https://api.holidays.rest/v1/languages This endpoint retrieves all languages that are supported by holidays.rest when retrieving public holidays. By default, the API returns holiday names in all languages that are listed by this endpoint. However, if you want to filter specific languages, you can use the `lang` query parameter and `alpha2` code of the language. Reference: https://docs.holidays.rest/holidays-rest-api/languages ## Authentication - `Authorization` header (bearer token, required) — Bearer authentication of the form `Bearer `, where token is your auth token. ## Response ### 200 OK - `list of V1LanguagesGetResponsesContentApplicationJsonSchemaItems` ## Types ### V1LanguagesGetResponsesContentApplicationJsonSchemaItems - `alpha2` (string, required) - `name` (string, required) - `supported` (boolean, required) ## Examples **Response** ```json [ { "alpha2": "ar", "name": "Arabic", "supported": true }, { "alpha2": "bn", "name": "Bengali", "supported": true }, { "alpha2": "zh", "name": "Chinese", "supported": true }, { "alpha2": "en", "name": "English", "supported": true }, { "alpha2": "fr", "name": "French", "supported": true }, { "alpha2": "de", "name": "German", "supported": true }, { "alpha2": "he", "name": "Hebrew", "supported": true }, { "alpha2": "hi", "name": "Hindi", "supported": true }, { "alpha2": "ja", "name": "Japanese", "supported": true }, { "alpha2": "ko", "name": "Korean", "supported": true }, { "alpha2": "pt", "name": "Portuguese", "supported": true }, { "alpha2": "ru", "name": "Russian", "supported": true }, { "alpha2": "es", "name": "Spanish", "supported": true }, { "alpha2": "tr", "name": "Turkish", "supported": true } ] ``` **SDK Code** ```python languages_example import requests url = "https://api.holidays.rest/v1/languages" headers = {"Authorization": "Bearer "} response = requests.get(url, headers=headers) print(response.json()) ``` ```javascript languages_example const url = 'https://api.holidays.rest/v1/languages'; const options = {method: 'GET', headers: {Authorization: 'Bearer '}}; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); } ``` ```go languages_example package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.holidays.rest/v1/languages" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("Authorization", "Bearer ") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` ```ruby languages_example require 'uri' require 'net/http' url = URI("https://api.holidays.rest/v1/languages") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer ' response = http.request(request) puts response.read_body ``` ```java languages_example import com.mashape.unirest.http.HttpResponse; import com.mashape.unirest.http.Unirest; HttpResponse response = Unirest.get("https://api.holidays.rest/v1/languages") .header("Authorization", "Bearer ") .asString(); ``` ```php languages_example request('GET', 'https://api.holidays.rest/v1/languages', [ 'headers' => [ 'Authorization' => 'Bearer ', ], ]); echo $response->getBody(); ``` ```csharp languages_example using RestSharp; var client = new RestClient("https://api.holidays.rest/v1/languages"); var request = new RestRequest(Method.GET); request.AddHeader("Authorization", "Bearer "); IRestResponse response = client.Execute(request); ``` ```swift languages_example import Foundation let headers = ["Authorization": "Bearer "] let request = NSMutableURLRequest(url: NSURL(string: "https://api.holidays.rest/v1/languages")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0) request.httpMethod = "GET" request.allHTTPHeaderFields = headers let session = URLSession.shared let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in if (error != nil) { print(error as Any) } else { let httpResponse = response as? HTTPURLResponse print(httpResponse) } }) dataTask.resume() ```