The available integration instructions describe WaveSpeedAI’s API route for Alibaba Qwen3 TTS Flash—not a verified Alibaba-hosted or official Alibaba API. The documented submission endpoint is https://api.wavespeed.ai/api/v3/alibaba/qwen3-tts-flash. WaveSpeedAI’s page shows a Bearer-token POST request, then a separate task-result lookup using the returned task ID. (WaveSpeedAI documentation)
Submit a synthesis task
The endpoint-specific example uses these fields: text, voice, and language_type. It sends an API key as a Bearer token and expects JSON. The page says to read the task ID from data.id in the submission response.
Before running the example, create a WaveSpeedAI API key from the API Keys area: generate a key and copy it securely. WaveSpeedAI says keys are active once generated, provided the key, organization, and creator remain active and the creator’s role permits the endpoint. The available documentation does not establish any additional access prerequisite specific to this Qwen route. (API Authentication; REST API)
Set the key in an environment variable, then submit the documented example:
export WAVESPEED_API_KEY="your-api-key"
curl --fail-with-body --silent --show-error \
-X POST "https://api.wavespeed.ai/api/v3/alibaba/qwen3-tts-flash" \
-H "Authorization: Bearer ${WAVESPEED_API_KEY}" \
-H "Content-Type: application/json" \
-d '{
"text": "A clear example input",
"voice": "Cherry",
"language_type": "Auto"
}'
This is the provider’s documented example, not an independently tested request. The page’s endpoint documentation refers readers to an Authentication Guide, and the linked guide provides key-generation instructions. It does not include a complete sample submission response. (WaveSpeedAI documentation; API Authentication)
Poll the task and inspect its result
Use the data.id returned by submission in the result URL:
TASK_ID="your-task-id"
curl --fail-with-body --silent --show-error \
"https://api.wavespeed.ai/api/v3/predictions/${TASK_ID}/result" \
-H "Authorization: Bearer ${WAVESPEED_API_KEY}"
The documented example polls this URL, checks data.status, and inspects data.outputs when the status is completed. It lists failed, cancelled, timeout, and deleted as terminal failure statuses. Its general response description says outputs are usually URL strings, but may vary by model; it does not provide a complete Qwen-specific result or explain audio download steps or output-URL expiration.
Retry carefully: the example allows retrying temporary errors while polling, including dropped connections, HTTP 429, and 5xx responses; it says to honor Retry-After. It separately warns against automatically repeating a task-submission request after an unclear failure, because the first request may already have created a billed task. (WaveSpeedAI documentation)
Request fields: use the endpoint-specific schema as a starting point
The endpoint-specific parameter table lists text and voice as required, with language_type optional and defaulting to Auto. It lists these voice values: Cherry, Ethan, Nofish, Jennifer, Ryan, Katerina, Elias, Jada, Dylan, Sunny, li, Marcus, Roy, Peter, Rocky, Kiki, and Eric. Its language_type list is Auto, Chinese, English, German, Italian, Portuguese, Spanish, Japanese, Korean, French, Russian, and Thai.
Treat those as values listed by the provider’s endpoint-specific table—not as a guarantee that every voice or language is supported for your account or use case. The page describes the model’s language support most clearly as English and Chinese, and does not reconcile that description with the longer language_type list.
Do not combine that table with the page’s other examples into one request schema. A separate general-input section uses fields such as voice_id, language, speed, pitch, volume, emotion, sample_rate, and format. It also recommends fewer than 2,000 characters per request. Another example wraps inputs in model and input. The page does not explain how these formats relate to the named endpoint or confirm that those additional fields work with it. Before using them, confirm the endpoint-specific schema with the provider. The table also describes text as “Text to translate,” wording the page does not explain despite describing the model as text-to-speech. (WaveSpeedAI documentation)
What the available documentation does not establish
The WaveSpeedAI page characterizes Qwen3 TTS Flash as low-latency and describes English and Chinese speech synthesis, multiple voices, and uses such as real-time dialogue and narration. These are provider descriptions, not independent performance measurements or guarantees. The available documentation does not establish that the endpoint is Alibaba’s official API, provide a complete Qwen-specific result example, clarify audio URL behavior, or give an interpretable currency price. It displays a pricing formula and a base_price of 1000, but says the unit depends on platform configuration; that is not enough to calculate or state a price. (WaveSpeedAI documentation)
Sources
Alibaba Qwen3 TTS Flash API Documentation — WaveSpeedAI
