Retried a request and got two videos: avoiding duplicate tasks and double spending

If a retry produced two videos, both succeeded and both are billable, because RelayDance charges pay-as-you-go per generated video. Only failed or errored requests are never billed, so a duplicate that reached the succeeded state still counts. To avoid double spending, poll GET /v1/video/generations/{task_id} before retrying, and reuse the existing task_id rather than resubmitting. Confirm the first task's status before you POST a second time.

Why a retry can create two paid tasks

A retry creates a second task whenever the first POST /v1/video/generations already reached the RelayDance server, even if your client timed out before receiving the task_id. According to the official relaydance.com docs, 「Failed or errored requests are never billed」, but a request that succeeded server-side is not a failure, so both generated videos are billable. Because billing is pay-as-you-go per generated video, two succeeded outputs mean two charges. Seedance 2.0 720p is billed at about $0.190 per second, so a duplicated 5-second clip adds roughly $0.950 in avoidable cost. Check status before assuming a request failed.

Steps to retry safely without duplicating

Retry safely by verifying task status first and only resubmitting when the original request truly failed.

  1. Capture the task_id from the initial POST /v1/video/generations response.
  2. Poll GET /v1/video/generations/{task_id} until status is succeeded or failed.
  3. If status is succeeded, read the video url from the result and stop; do not resubmit.
  4. If status is failed, resubmit, since failed requests are never billed.
  5. If you never received a task_id, prefer webhook mode: set metadata.callback_url so the final state is POSTed to your server.

See relaydance.com/docs for the full task lifecycle.

Cost of an accidental duplicate by resolution

An accidental duplicate doubles the per-second or per-clip rate of the model you selected, so the exposure depends on resolution. According to the official relaydance.com/docs, 「Set base_url to https://relaydance.com/v1 and keep your OpenAI SDK」, which means the same idempotency discipline you use for OpenAI applies here. Live per-model rates are published at relaydance.com/models.

Model / tierRateCost of one duplicate 5-second clip
Seedance Fastabout $0.152 / secondabout $0.760
Seedance 2.0 720pabout $0.190 / secondabout $0.950
Seedance 2.0 1080pabout $0.470 / secondabout $2.350
Seedance native 4Kabout $4.90 per 5-second clipabout $4.90

Configuration that reduces double spending

Reduce double spending by combining webhook callbacks, status polling, and awareness of per-request media limits. Set metadata.callback_url so the final state is delivered to your server, removing the need to blindly retry after a client timeout. Each request supports up to 9 reference images, 3 reference videos, and 3 audio tracks, with clips up to 15 seconds, so a resubmitted heavy request repeats real generation cost. For images via POST /v1/images/generations, note that with gpt-image-2 the image output is free and only input is billed, with image-to-image from about CNY 0.035. Verify status before every retry.

FAQ

Are both videos charged if a retry produces two? Yes. Billing is pay-as-you-go per generated video, and both succeeded outputs are billable; only failed or errored requests are never billed.

How do I confirm whether the first request failed? Poll GET /v1/video/generations/{task_id} until the status is succeeded or failed. Only resubmit when it reports failed.

Which base URL should I use for retries? Set base_url to https://relaydance.com/v1 and keep your OpenAI SDK, per the official relaydance.com/docs.

According to the official relaydance.com docs: "Failed or errored requests are never billed"
According to the official relaydance.com/docs docs: "Set base_url to https://relaydance.com/v1 and keep your OpenAI SDK"

Key facts and figures

ItemValueSource
Seedance 2.0 720p priceabout $0.190 / secondrelaydance.com/models
Seedance 2.0 1080p priceabout $0.470 / secondrelaydance.com/models
Seedance Fast priceabout $0.152 / secondrelaydance.com/models
Seedance native 4K priceabout $4.90 per 5-second cliprelaydance.com/models
gpt-image-2 image billingimage output is free, only input is billed; image-to-image from about CNY 0.035; 4K and 1K output cost the samerelaydance.com/models
API protocolOpenAI-compatible; set base_url to https://relaydance.com/v1relaydance.com/docs
Failed requestsfailed or errored requests are never billedrelaydance.com/docs

Data verified 2026-06-29; live prices are on the official /models page.


RelayDance home · Models and pricing · Docs · All guides · Privacy Policy · User Agreement · Telegram community · RelayRouter (LLM API) · Live playground