ElevenLabs Voice Design 409: wait and retry, or new key on Sume?

Voice Design now returns 409 while a preview generation is in progress; ElevenLabs says retry. On Sume, reuse an Idempotency-Key only for the same payload.

4 min readSume
All posts

ElevenLabs Voice Design now returns 409 when a generation for the preview is already in progress, and its changelog says to retry the request after receiving it. That is a wait-and-retry signal. Sume's retry rules are a different shape: reuse an Idempotency-Key only for the same operation and payload, and use a new one to retry a failed Format run.

The ElevenLabs note is from its changelog; the Sume rules are from Jobs and results and Errors and credits, read 2026-10-01.

Which ElevenLabs calls return the 409?

The changelog lists Create voice from preview, Create voice previews, Design a voice and Remix a voice. The 409 means a generation for the preview is already in progress.

What does a 409 mean on Sume?

Sume's documented 409 codes are about job state: job_not_completed, job_not_cancelable or job_generation_already_started. The docs do not describe a 409 for "same work already running". Treat each code by name instead of retrying blindly.

Retry guidance, ElevenLabs changelog and Sume docs, read 2026-10-01.
SignalWhat the source says to do
ElevenLabs 409 (preview in progress)Retry the request
Sume 429Back off; use retry-after when present
Sume replay of the same createReuse the same key only for the same operation and payload
Sume failed Format runRetry with a new Idempotency-Key; the old one is bound to your receipt

How do I write the retry loop?

Keep one idempotency key per logical create. If you get a network error or a timeout, resubmit with the same key and body and Sume returns the existing job instead of a second paid one. If a Format run ended in an error status, mint a new key, or prefer continuing the run so the clips already made are kept. Do not retry unsafe submits without a key at all.

Does the same pattern apply to previews on Sume?

If you already hold a Sume job id, poll that job rather than starting another. See retrying a failed run for the full rule.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume