🔑 1. Quản Lý API Key Của Bạn (Đặc Quyền Gói PRO)
Chỉ thành viên đang sở hữu Gói PRO còn hạn sử dụng tại tts.congnghe360.com mới được phép khởi tạo và kết nối API để tạo giọng nói AI thông qua máy chủ xử lý của LT Studio.
📌 2. Tổng Quan & Cách Xác Thực (Authentication)
Toàn bộ yêu cầu gửi tới API LT Studio TTS được xử lý trực tiếp trên cụm máy chủ AI của hệ thống (bao gồm hàng đợi đa luồng thông minh, kho 70+ giọng đọc VieNeu TTS, Edge Neural TTS và giọng Nhân bản Clone Voice của bạn).
🌐 Base URL
🔐 Cách truyền API Key khi gọi Request
Bạn có thể truyền API Key của mình theo 1 trong 2 cách trong HTTP Header (khuyên dùng Cách 1):
# Cách 1: Truyền qua Header Authorization Bearer (Khuyên dùng) Authorization: Bearer lttts_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # Cách 2: Truyền qua Header X-API-Key X-API-Key: lttts_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
| Mã HTTP | Ý nghĩa | Cách xử lý |
|---|---|---|
200 OK |
Thành công | Đọc JSON kết quả hoặc lưu trực tiếp luồng âm thanh .mp3. |
401 Unauthorized |
Thiếu hoặc sai API Key | Kiểm tra lại API Key (hoặc bạn vừa bấm Tạo lại Key mới khiến Key cũ bị hủy). |
403 Forbidden |
Tài khoản không thuộc Gói PRO | Tài khoản chưa nâng cấp Gói PRO hoặc Gói PRO đã hết hạn sử dụng. |
GET 3. Kiểm Tra Thông Tin Tài Khoản & Hạn Gói PRO
Dùng để kiểm tra xem API Key của bạn có hợp lệ không, tên tài khoản và thời hạn Gói PRO.
curl -X GET "https://tts.congnghe360.com/api/v1/tts/me" \ -H "Authorization: Bearer YOUR_API_KEY"
📥 Phản hồi JSON mẫu (200 OK)
{
"ok": true,
"user": {
"id": 12,
"username": "thanhvien_pro",
"plan_id": "pro",
"plan_expires_text": "30/11/2026 15:30"
},
"api_key_info": {
"has_key": true,
"masked_key": "lttts_live_8a9f...3c1d",
"updated_text": "31/10/2026 09:45"
},
"queue": {
"running": 0,
"queued": 0,
"max_concurrent": 2
}
}
GET 4. Lấy Danh Sách 70+ Giọng Đọc & Giọng Clone
Trả về danh sách toàn bộ giọng đọc mặc định (VieNeu TTS 70+ giọng, Edge TTS) cùng với các giọng mà bạn đã nhân bản (Clone Voice) trên tài khoản Gói PRO. Sử dụng trường id để truyền vào voice_id khi tạo giọng.
curl -X GET "https://tts.congnghe360.com/api/v1/tts/voices" \ -H "Authorization: Bearer YOUR_API_KEY"
📥 Phản hồi JSON mẫu
{
"ok": true,
"total": 72,
"voices": [
{
"id": "Ngọc Huyền",
"name": "Ngọc Huyền (Nữ chuẩn)",
"gender": "female",
"engine": "vieneu",
"is_clone": false,
"description": "Giọng nữ miền Bắc truyền cảm, tự nhiên"
},
{
"id": "Adam Miền Bắc",
"name": "Adam Miền Bắc",
"gender": "male",
"engine": "vieneu",
"is_clone": false,
"description": "Giọng nam review phim trầm ấm"
}
]
}
POST 5. Tạo Giọng Nói Từ Văn Bản (Text-to-Speech qua Server)
Gửi văn bản lên máy chủ LT Studio để tổng hợp thành giọng nói AI chất lượng cao. Không giới hạn số từ đối với thành viên Gói PRO.
📋 Bảng Tham Số Body (JSON)
| Tham số | Kiểu | Bắt buộc | Mô tả chi tiết |
|---|---|---|---|
text |
string | Có | Nội dung văn bản tiếng Việt cần chuyển thành giọng nói. |
voice_id |
string | Không | Mã giọng đọc lấy từ /api/v1/tts/voices. Mặc định: "Ngọc Huyền". |
speed |
float | Không | Tốc độ đọc từ 0.6 đến 1.8. Mặc định: 1.0. |
response_format |
string | Không |
• "json" (Mặc định): Chờ xử lý xong và trả về JSON chứa audio_url, download_url, duration_sec.• "mp3" (hoặc "audio"): Trả trực tiếp dữ liệu nhị phân (binary audio/mpeg) để lưu thành file .mp3 ngay.• "async": Trả về ngay lập tức job_id để tự kiểm tra tiến độ qua /api/v1/tts/jobs/{job_id} (phù hợp văn bản cực dài hàng chục nghìn từ).
|
🔹 Ví dụ 1: Nhận kết quả JSON chứa Link tải MP3 (response_format: "json")
curl -X POST "https://tts.congnghe360.com/api/v1/tts/synthesize" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"text": "Chào mừng các bạn đã đến với hệ thống tạo giọng nói tự động của LT Studio.",
"voice_id": "Ngọc Huyền",
"speed": 1.0,
"response_format": "json"
}'
{
"ok": true,
"job_id": "tts_api_91a8f20c11b4",
"status": "completed",
"voice_id": "Ngọc Huyền",
"speed": 1.0,
"word_count": 15,
"char_count": 74,
"duration_sec": 4.35,
"size_mb": 0.08,
"filename": "tts_pro_91a8f20c11b4.mp3",
"audio_url": "https://tts.congnghe360.com/api/files/tts_studio_jobs/tts_api_91a8f20c11b4/tts_pro_91a8f20c11b4.mp3",
"download_url": "https://tts.congnghe360.com/api/files/tts_studio_jobs/tts_api_91a8f20c11b4/tts_pro_91a8f20c11b4.mp3"
}
🔹 Ví dụ 2: Tải trực tiếp ra file âm thanh output.mp3 (response_format: "mp3")
curl -X POST "https://tts.congnghe360.com/api/v1/tts/synthesize" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"text": "Đoạn văn bản này sẽ được lưu thẳng thành file output.mp3",
"voice_id": "Adam Miền Bắc",
"speed": 1.0,
"response_format": "mp3"
}' --output output.mp3
POST 6. Đọc Phụ Đề .SRT Khớp Timeline Qua API
Truyền nội dung file phụ đề .SRT vào srt_content, Server sẽ đọc từng câu thoại và tự động canh khớp chính xác theo mốc thời gian Start --> End.
curl -X POST "https://tts.congnghe360.com/api/v1/tts/srt" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"srt_content": "1\n00:00:00,500 --> 00:00:03,800\nXin chào mọi người đã quay lại kênh.\n\n2\n00:00:04,000 --> 00:00:07,500\nHôm nay chúng ta cùng xem tập phim mới nhé!",
"voice_id": "Ngọc Huyền",
"speed": 1.0,
"auto_fit_slot": true,
"response_format": "json"
}'
GET 7. Kiểm Tra Tiến Độ Tác Vụ Bất Đồng Bộ (Async Job)
Khi bạn truyền "response_format": "async" ở API /synthesize hoặc /srt, Server sẽ trả về ngay lập tức một job_id. Bạn gọi endpoint này mỗi 1–2 giây cho tới khi status === "completed".
💻 8. Code Mẫu Tích Hợp (Python, Node.js, PHP, C#)
Chọn ngôn ngữ lập trình của bạn để sao chép đoạn code mẫu tích hợp sẵn:
import requests
API_KEY = "YOUR_API_KEY"
API_URL = "https://tts.congnghe360.com/api/v1/tts/synthesize"
headers = {
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"
}
payload = {
"text": "Xin chào, đây là giọng đọc AI được gọi tự động từ ứng dụng Python qua LT Studio TTS.",
"voice_id": "Ngọc Huyền",
"speed": 1.0,
"response_format": "json" # Hoặc đổi thành "mp3" để nhận trực tiếp bytes file nhạc
}
resp = requests.post(API_URL, headers=headers, json=payload, timeout=300)
data = resp.json()
if data.get("ok"):
print("Tạo giọng thành công! Thời lượng:", data["duration_sec"], "giây")
print("Link tải MP3:", data["audio_url"])
# Tải file MP3 về máy
mp3_bytes = requests.get(data["audio_url"]).content
with open("lt_studio_voice.mp3", "wb") as f:
f.write(mp3_bytes)
print("Đã lưu file lt_studio_voice.mp3")
else:
print("Lỗi:", data)
⚡ 9. Test Thử API Trực Tiếp Trên Trình Duyệt (Live API Tester)
Nhập API Key Gói PRO của bạn và bấm chạy thử để kiểm tra phản hồi thực tế từ endpoint POST /api/v1/tts/synthesize: