🎧 Introduction
Do you want to turn text into natural-sounding speech directly inside your website or application?
With TTSForFree's TTS Forge API, you can easily integrate a professional Text-to-Speech engine into your projects — supporting 70+ languages and 1,800+ voices with fast processing and simple integration.
This tutorial will guide you step-by-step to integrate the TTS API, watch a live demo, and download ready-to-use source code for quick testing.
🚀 Video Tutorial & Live Demo
Here’s what you can explore in this demo:
🔑 Register your API Key
🌐 HTML Preview Demo
🟩 JavaScript Example
🐍 Python (⬇️ Download)
🐘 PHP (⬇️ Download)
🧩 C# (⬇️ Download)
⚙️ How the TTS Forge Engine Works: Our Forge architecture is built for developers who need reliability and speed.
TTSForFree uses an asynchronous Text-to-Speech pipeline:
- You send a job creation request via REST API
- The system queues it using RabbitMQ
- A Python worker processes and saves the audio file
- Once completed, you receive updates via SignalR or Webhook
👉 This architecture ensures low latency and massive scalability, handling thousands of requests in parallel.
🔐 Sign in with Google and click “Register API Key” to get started instantly.
After logging in, you’ll receive 30,000 characters per month in your free quota.
🔐 Authentication:
For detailed header security and signature validation, check our TTS Forge Documentation.
All API requests require the following header:
Your API key is managed in your account dashboard.
Keep it on the server side — do not embed it directly in client or frontend code.
🌍 Get the List of Languages and Voices
List of available voices:
🧠 Create a Text-to-Speech Job
Example using cURL:
Result:
The system returns a jobId and an initial status of PENDING.
Once processing is complete, you’ll receive a SUCCESS status along with a link to the generated audio file.
🔁 Check Job Status
Polling API:
Or receive the result automatically via Webhook:
Demo html:
🔢 API Quotas & Unlimited Options
To ensure system performance and fair usage among users, TTSForFree applies the following limits:
- ✏️ Up to 20,000 characters per request
- 📅 Up to 30,000 characters per month per account
- ⚙️ When the limit is exceeded, the API returns 429 Too Many Requests or 403 Forbidden.
- 💾 You can compress or split long text into smaller segments, or use hash caching to reduce repeated requests.
- 🚀 Upgrade to a commercial plan to increase your quota (contact via email or License page).
✅ Best Practices
- Split long text into smaller paragraphs before sending
- Use hash-based caching to save requests for identical content
- Implement exponential backoff retries for
429or5xxerrors - Use ConnectionId to receive realtime updates through SignalR
📚 Documentation & Specifications
👉 Check out the official Open API documentation:
https://api.ttsforfree.com/swagger/index.html
⚖️ License & Terms of Use
The free plan is intended for personal and non-commercial use only.
If you plan to integrate the API into a commercial product, please contact [email protected] to obtain a commercial API license.
