JMovie API

Video generation for business teams

Seedance 2.0 API

Choose Seedance 2.0, Fast or Mini with an explicit provider model ID. Compare the model and price row for your workload instead of routing through an ambiguous latest alias.

ModelTypeKey strengthsInputOutput
Seedance 2.0dreamina-seedance-2-0-260128
Video
High quality, general purpose
Text, image, audio, video
Video
Seedance 2.0 Fastdreamina-seedance-2-0-fast-260128
Video
Faster generation, lower cost
Text, image, audio, video
Video
Seedance 2.0 Minidreamina-seedance-2-0-mini-260615
Video
Lightweight, cost efficient
Text, image, audio, video
Video

Updated · JMovie API integration guide

Choose the right integration path

Use this API when your application needs administrator-issued Keys, persistent tasks and an independent USD wallet. Use JMovie’s production workspace when your team needs scripts, scenes, references and shot review. The two products do not share accounts or balances.

Standard, Fast or Mini?

Seedance 2.0 is the general-purpose option. Fast prioritizes faster generation; Mini is the lightweight option. These are separate model versions and price rows, not interchangeable aliases. Check the supported parameters and current rates before selecting one.

The 2.5 Draft-to-Final workflow is not offered for these 2.0 variants. Unsupported model and parameter combinations are rejected before a provider request.

From request to usable output

  1. Upload or import authorized references. File validation and required provider library approval are distinct steps; an asset must belong to your API customer.
  2. Create a video task with an Idempotency-Key. Query the persistent task for generation, billing and storage states; a client disconnect does not cancel a submitted task.
  3. Use the actual completion_tokens reported by the provider to settle the locked rate. Missing usage remains pending settlement, not an estimated final charge.
  4. Retrieve private media through an expiring Spaces link. Query the task to refresh the link while the output is retained. API outputs are retained for 72 hours; download them for long-term use.

Token billing, not a flat per-second price

Video charge = actual completion_tokens ÷ 1,000,000 × your agreed USD-per-million-token rate. Resolution, input-video facts and Draft/Final mode select the price row. Reservations are released or supplemented after verified usage is known.

Your agreed rate is independent of payment size or funding batches. New tasks lock the model, catalog and customer rate when accepted. This API wallet is separate from the JMovie production workspace.

View current pricing and settlement units

A request you can integrate

Set JMOVIE_API_KEY and a persistent JMOVIE_REQUEST_ID for one business action. Save the returned task ID, then query it. These examples do not automatically repeat the paid POST after a timeout. A provider response loss requires reconciliation; a polling deadline is not a refund or a cancellation.

This example uses Seedance 2.0. Use an exact enabled model ID from the table for another version and check its supported parameters in the API documentation.

curl -X POST https://api.j-movie.com/api/v3/contents/generations/tasks \
  -H "Authorization: Bearer $JMOVIE_API_KEY" \
  -H "Idempotency-Key: $JMOVIE_REQUEST_ID" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "dreamina-seedance-2-0-260128",
    "content": [{"type":"text", "text":"A serene coastal town at sunset"}],
    "duration": 5,
    "resolution": "720p",
    "ratio": "16:9"
  }'

# Save the returned id; polling is read-only. Do not repeat POST on a timeout.
curl https://api.j-movie.com/api/v3/contents/generations/tasks/$TASK_ID \
  -H "Authorization: Bearer $JMOVIE_API_KEY"

Read generation, storage and billing separately

A successful generation is not proof that archival or billing has finished. The native video status stays running while media is being stored; wait for storage_status = ready before using its link. billing_status can remain pending when trusted usage is missing. Preserve the task ID and inspect the task instead of generating a replacement.

This is a request example, not a benchmark or a completed customer generation. Unsupported combinations are rejected before supplier submission. See the documentation for reference limits, Draft inheritance, editing and extension requirements.

Creative scope and provider policies

Provider content policies still apply. We do not promise moderation-free generation, approval of every reference or a bypass of provider restrictions.

Is Seedance API uncensored? Read the policy guide

Prefer a production workspace? Explore JMovie