Get job status and audio URL
Changed onPoll this endpoint every 2–3 seconds until status is completed or failed. When completed, audioUrl contains a presigned S3 URL valid for 24 hours. With several jobs in flight, poll them together with GET /v1/tts?ids=… instead.
Request
- Base URLhttps://api.vieneu.io
- Auth
- API key in header X-API-Key
- or HTTP bearer
Path parameters
Response
Current job state; audioUrl is present once status is completed.
Example response
{
"jobId": "550e8400-e29b-41d4-a716-446655440000",
"status": "completed",
"audioUrl": "https://s3.amazonaws.com/bucket/tts/job.wav?X-Amz-Expires=86400&...",
"audioUrlExpiresIn": 86400,
"duration": 3.42,
"voiceId": "Tuyen",
"textLength": 150,
"createdAt": "2026-05-17T10:00:00Z",
"completedAt": "2026-05-17T10:00:08Z",
"queuePosition": 2,
"estimatedWaitSeconds": 8,
"error": "Generation failed after retries."
}Changes
- info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status
- info
- breaking
the response property
became optional for the status - breaking
the response property
became optional for the status - breaking
the response property
became optional for the status - breaking
response property
messagelist-of-types was widened by adding typesarrayto media typeapplication/jsonof response401 - breaking
response property
messagelist-of-types was widened by adding typesarrayto media typeapplication/jsonof response404 - breaking
response property
messagelist-of-types was widened by adding typesarrayto media typeapplication/jsonof response429 - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status
- breaking