Adam
MaleEnglish (United Kingdom)
ReadSpeaker speechCloud API
Send text to one REST endpoint, get back natural speech in 90 languages and 300 voices. SSML, custom pronunciation, and six audio formats, ready for production from the first call.
Already a customer? Sign in to the Customer PortalTrusted by 12,000 customers worldwide
Try a voice
Four voices across four languages. Same engine you'll integrate via the API.
English (United Kingdom)
Français (France)
Deutsch (Deutschland)
日本語 (Japan)
Want a custom voice or a language not listed? Browse all 300 voices →
Customer stories
Cloud-based speech generation
speechCloud API is a cloud-based, server-to-server text-to-speech service. Call it inside your own application to generate audio on the fly for end-users, or to produce audio in bulk for later playback. It replaces costly manual recordings and runs around the clock, so you never host or scale a text-to-speech engine yourself.
Add text-to-speech to a mobile app, a connected car, a medical or industrial appliance, a wearable or a kiosk. Stream audio on demand without bundling a TTS engine on-device, so footprint and battery stay low. Receive natural speech in 90 languages with a single REST call.
Generate audio in bulk for e-learning courses, assessments, training content, audiobooks, audio guides and dialog for movies or animations. Streamed audio can be served back to end-users from your own infrastructure when allowed by your contract. Custom pronunciation dictionaries make sure brand names and technical terms read correctly across every track.
Power phone systems, contact centers and LLM-powered voice agents with natural voices. A-law and μ-law output formats are the G.711 codecs used in telephony systems. Use SSML to control pacing, switch language inline and pronounce brand names via your custom dictionary. Concurrent real-time channels scale with your contract.
Features
Everything your product needs to talk back.
Pick from a deep, professional voice catalog per language. Voices are licensed individually; bring more on at any time.
Use SSML for pauses, phonetic transcriptions, and inline switching of voice or language within a single text. Standard SSML markup is supported.
Each customer can edit a voice-specific dictionary in the customer portal, to control how brand names, technical terms and unusual words are pronounced. ReadSpeaker linguists can correct mispronunciations on request.
RSDS returns audio and timing markers in a single response, saving credits compared to two separate calls. Useful for word and sentence highlighting in your UI. Available in MP3 48 kbps only, not on all voices.
MP3 (16, 24, 32, 48, 64, 128 kbit/s), Ogg VBR, μ-law, A-law, raw PCM, WAV. PCM and WAV at 22050, 16000 or 8000 Hz, 16-bit depth. Set per request via API parameters.
Set streaming=1 to start playback the moment audio is ready, ideal for live use. Or take the finished file as a single download.
API key included with each call. Query available languages, voices, current usage and remaining credits via the same REST interface.
Edit your pronunciation dictionary, track usage and remaining credits, and roll a new API key the moment misuse is suspected, all from one portal.
Hosted by ReadSpeaker in a high-security environment with redundancy and failover. Nothing to download or install.
Try it in your stack
A look at what a call looks like in four languages. Authenticate with your API key, sent with every request.
# Synthesise a sentence to MP3 (48 kbps)
curl -X POST "https://tts.readspeaker.com/a/eg/v2.0" \
-d "key=YOUR_API_KEY" \
-d "voice=Adam" \
-d "lang=en_uk" \
-d "audioformat=mp3" \
-d "audiobitrate=48" \
-d "text=Welcome to ReadSpeaker." \
--output speech.mp3
# With SSML, switching language inline
curl -X POST "https://tts.readspeaker.com/a/eg/v2.0" \
-d "key=YOUR_API_KEY" \
-d "voice=Adam" \
-d "lang=en_uk" \
-d "input=ssml" \
--data-urlencode 'text=<speak>Hello, <voice name="Roxane" xml:lang="fr-FR">bonjour</voice>.</speak>' \
--output greeting.mp3# Python 3 — requests library
import requests
resp = requests.post(
"https://tts.readspeaker.com/a/eg/v2.0",
data={
"key": "YOUR_API_KEY",
"voice": "Adam",
"lang": "en_uk",
"audioformat": "mp3",
"audiobitrate": 48,
"text": "Welcome to ReadSpeaker.",
},
)
if resp.status_code == 200:
with open("speech.mp3", "wb") as f:
f.write(resp.content)
else:
print("Error:", resp.status_code, resp.text)// Node.js 18+ — native fetch + fs/promises
import { writeFile } from "node:fs/promises";
const body = new URLSearchParams({
key: "YOUR_API_KEY",
voice: "Adam",
lang: "en_uk",
audioformat: "mp3",
audiobitrate: "48",
text: "Welcome to ReadSpeaker.",
});
const resp = await fetch("https://tts.readspeaker.com/a/eg/v2.0", {
method: "POST",
body,
});
if (!resp.ok) throw new Error(`SCAPI ${resp.status}`);
await writeFile("speech.mp3", Buffer.from(await resp.arrayBuffer()));<?php
// PHP 8 — cURL
$ch = curl_init("https://tts.readspeaker.com/a/eg/v2.0");
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => http_build_query([
"key" => "YOUR_API_KEY",
"voice" => "Adam",
"lang" => "en_uk",
"audioformat" => "mp3",
"audiobitrate" => 48,
"text" => "Welcome to ReadSpeaker.",
]),
CURLOPT_RETURNTRANSFER => true,
]);
$audio = curl_exec($ch);
$code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($code === 200) {
file_put_contents("speech.mp3", $audio);
} else {
error_log("SCAPI error: $code");
}Endpoint shape is illustrative. Refer to the latest Product Specification and the Customer Portal documentation for the current endpoint URL and parameter names.
Technical specifications
Authentication, transport, language coverage, throughput limits and audio formats. The answers your security and ops teams need before integration.
| Specification | Value |
|---|---|
| Authentication | API key, included with each request |
| Transport | REST over HTTPS |
| Languages supported | 90 languages |
| Voices available | 300 voices |
| Max text per request | 5,000 characters (excluding whitespace), default |
| Intended usage limit | ≤ 25,000 requests/day · peaks ≤ 2,000 requests within a single hour |
| Audio output formats | MP3 · Ogg VBR · μ-law · A-law · PCM · WAV |
| MP3 bitrates | 16, 24, 32, 48, 64, 128 kbit/s |
| PCM / WAV sample rates | 22050, 16000, 8000 Hz @ 16-bit |
| Input encoding | UTF-8 recommended; most common encodings supported |
| SSML support | Yes, pauses, phonetic transcriptions, inline voice/language switching |
| Timing data (RSDS) | Audio + timing in one response · currently MP3 48 kbit/s only · not all voices |
| Streaming mode | streaming=1 (default) → redirect to streaming server; streaming=0 → file delivered after full generation |
| Audio storage rules | No storage, reuse or redistribution unless explicitly agreed in order confirmation |
| Telephony integration | A-law and μ-law output formats (G.711 codecs) |
| Documentation | Product Specification (PDF) |
Pricing
speechCloud API uses a credits model. Production credits are ordered through your ReadSpeaker Account Manager and added to your account by the ReadSpeaker support team. New accounts typically receive a limited amount of trial credits for initial testing.
Start free: new accounts typically receive trial credits. Request access via the contact form.
Credits
Credits model1 credit = 1 character, excluding whitespace
How credits work
Licensed capacity is measured by
Compliance
ReadSpeaker is an ISO/IEC 27001:2022 certified organization, GDPR compliant, with Standard Contractual Clauses for cross-border data transfers.
ISO/IEC 27001:2022 (ISO/IEC 27001:2022 — Information security management)
ReadSpeaker organization
GDPR (General Data Protection Regulation)
Privacy Notice published
EU SCCs (EU Standard Contractual Clauses)
For cross-border transfers
EU based (European Union based organization)
Headquartered in Sweden (ReadSpeaker AB, Uppsala)
Per the ReadSpeaker Privacy Notice, ReadSpeaker's synthesised voices are blended voice models that do not constitute Personal Information under GDPR.
FAQ
speechCloud API (SCAPI) is a cloud-hosted text-to-speech REST API from ReadSpeaker. You send text to the ReadSpeaker servers via HTTPS and receive back high-quality audio in your choice of format (MP3, Ogg, PCM, WAV, A-law or μ-law). It supports 90 languages and 300 voices, SSML markup, custom pronunciation dictionaries and timing data for synchronized highlighting. It is server-based with no software to install; integration is done via API key and HTTP requests.
webReader and docReader are end-user products with their own user interface. webReader puts a Listen button on the HTML pages of your website; docReader does the same for the documents you publish. speechCloud API has no user interface. You call it server-to-server from your application to generate audio. Use it for connected devices, telephony and IVR, mobile apps, e-learning platforms that produce audio, audiobooks, or any product where you need text-to-speech inside your own software.
speechCloud API returns audio in six formats: MP3 (configurable bitrate 16, 24, 32, 48, 64 or 128 kbit/s), Ogg VBR, μ-law, A-law, raw PCM and WAV. PCM and WAV support sample rates of 22050, 16000 or 8000 Hz at 16-bit depth. The choice of format and audio parameters is set per request via the API parameters.
Each request takes up to 5,000 characters by default, counting everything except whitespace. The standard service is sized for up to 25,000 requests a day, with hourly peaks up to 2,000. Running higher or sustained traffic? Talk to ReadSpeaker about a dedicated configuration built for your volume.
Yes. SSML input is supported, including pauses, phonetic transcriptions, and inline switching of voice or language within a single text. Custom pronunciation dictionaries are also available: each customer can edit a voice-specific dictionary in the customer portal to control how brand names, technical terms or unusual words are pronounced.
Yes. speechCloud API can return RSDS which combines the audio and the timing information in a single response, saving credits compared to two separate requests. RSDS is currently available with MP3 at 48 kbit/s and is not available for every language or voice; contact ReadSpeaker for the current list.
speechCloud API runs on credits: one credit covers one character, counting everything except whitespace, plus any characters added by your pronunciation dictionary. You order production credits through your ReadSpeaker Account Manager, and new accounts usually start with trial credits. A per-second-of-speech model is available on request. Capacity can be licensed by characters, requests, speech time, concurrent channels, or generation speed. Contact ReadSpeaker for a quote matched to your volume.
ReadSpeaker as an organization is ISO/IEC 27001:2022 certified, and GDPR compliant. All API traffic uses HTTPS. For EU customers and cross-border data transfers, ReadSpeaker relies on Standard Contractual Clauses (SCCs). Per the ReadSpeaker Privacy Notice, ReadSpeaker's synthesised voices are blended voice models that do not constitute Personal Information under GDPR. Audio data must not be stored, reused or redistributed unless explicitly agreed in the order confirmation.
speechCloud API supports real-time use cases. By default, requests use streaming mode (streaming=1), where the response redirects to a streaming server that begins delivering audio as soon as possible, for the shortest time-to-audio. For batch delivery, set streaming=0 and the file is returned once fully generated. The number of concurrent real-time channels is part of your licensed capacity and can be scaled in the order confirmation.
Create an account with ReadSpeaker. New accounts typically receive a limited amount of trial credits so you can evaluate speechCloud API. Your API key is available in the SCAPI customer portal and must be included with each request. Implementation and user instructions, sample code in popular programming languages, and your editable pronunciation dictionary are also accessible from the portal. Contact ReadSpeaker to start your account.
VoiceLab
speechCloud API ships with our professional voice catalog.

For a fully custom brand voice built with you in studio, explore VoiceLab. ReadSpeaker's computational linguists have been crafting brand voices since 1999.