Async Jobs
Async Jobs
Use job endpoints when a request may take longer than a client should wait.
Job endpoints return immediately with a job_id, then you can poll for status,
download results, or receive a webhook callback.
Create A Job
Transcription job from a local audio file:
Speech translation job from a local audio file:
Text to speech job:
Set output_format to wav (the default) or mp3. The completed job's download
keeps the requested format. The same option works in text to speech batch items.
This example uses Soynade's default packaged voice and therefore needs no
voice-rights attestation. When a text-to-speech job contains reference audio,
include voice_rights_attested=true and a voice_rights_basis of self or
authorized; see Voice Rights and Safety.
Response:
Code
Poll Status
Common statuses:
| Status | Meaning |
|---|---|
QUEUED | The job is waiting for a worker. |
PROCESSING | The job is currently running. |
COMPLETED | The result is ready. |
FAILED | The job failed and may be retried internally. |
FAILED_PERMANENTLY | The job failed after retry attempts. |
CANCELLED | The job was cancelled. |
Download Results
For text to speech jobs:
The response is audio/wav for WAV jobs or audio/mpeg for MP3 jobs. For a job
created with "output_format": "mp3", save the examples below to speech.mp3
instead of speech.wav; the download URL stays the same.
For translation and transcription jobs, use the corresponding /result
endpoint shown in the API reference.
Audio job endpoints accept the same input styles as synchronous audio endpoints:
multipart local files, JSON audio_url, or JSON audio_base64. See
Task-Specific APIs for synchronous examples.
Webhooks
Some job and batch endpoints accept webhook_url. When provided, Soynade sends
a callback when the workload completes or fails.
Webhook receivers should:
- Respond quickly with a 2xx status.
- Treat callbacks as at-least-once delivery.
- De-duplicate by
job_idor batch id. - Verify signatures once webhook signing is configured for your workspace.