Skip to content

Seedance 2.0 APIpriced per second

One key for Seedance 2.0 Mini and Fast. Quote first, submit with an idempotency key, and get a webhook when the job is done.

Real renders not open yetBase URLhttps://api.pershot.app/v1

Real renders are not open yet

Leave your email and we will write once, when they open.

One email when paid rendering opens. No newsletter.

Developer API access is by application.

Request
curl https://api.pershot.app/v1/videos/generations \
  -H "Authorization: Bearer $API_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.0-fast",
    "prompt": "Perfume mist in hard side light. Slow push-in, black background, grain.",
    "duration": 5,
    "resolution": "720p",
    "aspect_ratio": "16:9",
    "generate_audio": true,
    "max_credits": 34
  }'
Response
{
  "id": "job_01J9ZK4T8W",
  "object": "job",
  "kind": "video",
  "status": "queued",
  "money_status": "reserved",
  "queue_position": 2,
  "requested_model": "seedance-2.0-fast",
  "credits_quoted": 34,
  "credits_charged": null
}

Per-second pricingby resolution

Billed per second of video. A job that reads a video also bills its input seconds, at a lower rate.

API price per billed second
Model480p720p
Seedance 2.0 MiniText or image input$0.020/s≈ 500 s per $10$0.042/s≈ 238 s per $10
Seedance 2.0 MiniWith video input$0.012/s≈ 833 s per $10$0.025/s≈ 400 s per $10
Seedance 2.0 FastText or image input$0.031/s≈ 322 s per $10$0.067/s≈ 149 s per $10
Seedance 2.0 FastWith video input$0.019/s≈ 526 s per $10$0.040/s≈ 250 s per $10

What every callcomes with

01

Async jobs and webhooks

Every generation returns 202 and a job id at once. Poll the job or get signed webhooks for each state change.

02

A cap on every call

Send a quote_id or a max_credits cap. We never charge above it, and an Auto request without a cap is refused.

03

Retries that never double-charge

The same Idempotency-Key within 24 hours returns the same job, so a retry after a timeout is safe.

04

Usage you can reconcile

Usage by day, key and model, as JSON or CSV. Prices come from the developer API price list, never from a key.

Coming fromfal or Replicate?

Field names follow the common Seedance inputs where they exist. Access is by application, for automating your own work. What changes:

Endpoint
POST https://api.pershot.app/v1/videos/generations, then GET https://api.pershot.app/v1/jobs/job_… with the returned id for the result.
Auth
Authorization: Bearer with a key that starts with sk_test_ or sk_live_.
Idempotency
An Idempotency-Key header on every generation request.
Price cap
A max_credits cap, or a quote_id from POST /v1/quotes.
Audio
generate_audio true or false; the price is the same.
User id
For approved developer accounts (by application): tag a request with your own user id in the optional end_user_id, and usage shows it.

Also in Claude and Codex

Sign in over MCP and it spends your creative balance, as in the studio, with a price check before anything is spent. That balance is separate from the developer API balance.

How to connect

APIquestions

Do API keys cost anything?

No. Keys are free, and access is by application: request it in the studio. Each call is paid from your developer API balance, which is separate from the creative balance.

How is a call priced?

Per billed second: $0.067 at 720p on Fast, $0.020 at 480p on Mini. Input video seconds count too, at a lower rate.

Am I charged for failed jobs?

No. The held credits are refunded when a job makes no video (it fails or the content is rejected) or a safety check blocks the result, and the job says why. A job that delivers a video is charged.

What are the limits?

60 requests per minute per key. The developer API account runs 3 jobs at once by default, more on request. A membership plan raises the creative account's limit, not this one, and extra keys do not add capacity.

When can I use it?

Real Seedance renders are not open yet. Leave your email on a model page and we write once, when they open.