curl --request GET \
--url https://easy-peasy.ai/api/get-text-to-speech-voices \
--header 'x-api-key: <api-key>'import requests
url = "https://easy-peasy.ai/api/get-text-to-speech-voices"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://easy-peasy.ai/api/get-text-to-speech-voices', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://easy-peasy.ai/api/get-text-to-speech-voices",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://easy-peasy.ai/api/get-text-to-speech-voices"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://easy-peasy.ai/api/get-text-to-speech-voices")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://easy-peasy.ai/api/get-text-to-speech-voices")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_bodyGet TTS Voices
Retrieve a list of available voices for text-to-speech generation.
Returns all predefined voices (ElevenLabs and OpenAI) and optionally the user’s custom cloned voices.
Filtering:
- Filter by language using the
languagequery parameter - Filter by accent using the
accentquery parameter - Filter ready-made voices by
gender,ageanduse_case(values from/api/get-text-to-speech-config) - Filters can be combined
Authentication:
- Optional: Endpoint works without authentication for public voices
- Required for custom voices: Include
x-api-keyheader
curl --request GET \
--url https://easy-peasy.ai/api/get-text-to-speech-voices \
--header 'x-api-key: <api-key>'import requests
url = "https://easy-peasy.ai/api/get-text-to-speech-voices"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://easy-peasy.ai/api/get-text-to-speech-voices', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://easy-peasy.ai/api/get-text-to-speech-voices",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://easy-peasy.ai/api/get-text-to-speech-voices"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://easy-peasy.ai/api/get-text-to-speech-voices")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://easy-peasy.ai/api/get-text-to-speech-voices")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_bodyAuthorizations
API key for authentication. Get yours at https://easy-peasy.ai/settings/api
Query Parameters
Filter voices by language (e.g., "English", "Spanish", "French")
Filter voices by accent (e.g., "American", "British", "Australian")
Filter ready-made voices by gender
female, male, neutral Filter ready-made voices by age
young, middle_aged, old Filter ready-made voices by what they are made for
conversational, narrative_story, informative_educational, social_media, characters_animation, entertainment_tv, advertisement Include user's custom cloned voices in the response (requires authentication)
Response
Successfully retrieved voices
Array of voice objects
Show child attributes
Show child attributes
Total number of voices returned
50
Filters that were applied to the results
Show child attributes
Show child attributes
Available filter options based on current results
Show child attributes
Show child attributes
Was this page helpful?
