> ## Documentation Index
> Fetch the complete documentation index at: https://www.krea.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# ByteDance Seedance API on Krea

> Use ByteDance Seedance 2.5 and 2.0 through the Krea API. Generate video from text or images with REST and JavaScript examples, API keys, and pricing links.

Krea provides API access to ByteDance's Seedance video generation models. Use the Seedance API on Krea to generate videos from text, animate images, or guide generation with image, video, and audio references. Requests use a Krea API token and the `https://api.krea.ai` base URL.

## Available Seedance API models

| Model | POST endpoint | Video duration | Output resolution |
| - | - | - | - |
| Seedance 2.5 | `/generate/video/bytedance/seedance-2-5` | 4–30 seconds | 480p, 720p, 1080p |
| Seedance 2.0 | `/generate/video/bytedance/seedance-2` | 4–15 seconds | 480p, 720p, 1080p, 4K |
| Seedance 2.0 Fast | `/generate/video/bytedance/seedance-2-fast` | 4–15 seconds | 480p, 720p |
| Seedance 2.0 Mini | `/generate/video/bytedance/seedance-2-mini` | 4–15 seconds | 480p, 720p |

These models support text-to-video, start and end frames, reference media, and native audio. See the [API reference](https://www.krea.ai/docs/api-reference/introduction.md) for each model's current request schema. Check [API pricing ↗](https://www.krea.ai/app/api/pricing) before submitting a job; price depends on the model and generation settings.

> [!NOTE]
>
> Krea's Seedance 2.0 and 2.0 Fast endpoints include optional Krea prompt enhancement and upscaling beyond the base model. Seedance 2.5 includes optional Krea prompt enhancement. For Seedance 2.5 video-editing requests with `reference_videos`, the output length and aspect ratio come from the source video; `duration` and `aspect_ratio` are ignored for those requests.

## Get a Seedance API key

Create a Krea API token and add API balance using [API keys and billing](https://www.krea.ai/docs/developers/api-keys-and-billing.md). Store the token in the `KREA_API_KEY` environment variable on your server. Send it as `Authorization: Bearer $KREA_API_KEY`; never expose it in browser code.

Krea app compute and API balance are separate. Seedance requests through the Krea API use your workspace's API balance.

## Generate a video

Submit a prompt to the Seedance 2.5 endpoint for text-to-video generation. These examples request a five-second, 720p landscape video.

```bash cURL theme={"theme":{"light":"github-light-default","dark":"vesper"}}
curl --fail-with-body https://api.krea.ai/generate/video/bytedance/seedance-2-5 \
  -H "Authorization: Bearer $KREA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "A slow camera orbit around a ceramic vase in warm studio light",
    "duration": 5,
    "aspect_ratio": "16:9",
    "resolution": "720p"
  }'
```

```javascript JavaScript theme={"theme":{"light":"github-light-default","dark":"vesper"}}
import { Krea } from "@krea-ai/sdk";

const krea = new Krea({ apiKey: process.env.KREA_API_KEY });

const job = await krea.video("bytedance/seedance-2-5", {
  prompt: "A slow camera orbit around a ceramic vase in warm studio light",
  duration: 5,
  aspect_ratio: "16:9",
  resolution: "720p"
});

const completed = await krea.jobs.wait(job.job_id);
console.log(completed.result.urls[0]);
```

Install the JavaScript SDK with `npm install @krea-ai/sdk`. The REST request returns a `job_id`, not the finished video. Poll `GET /jobs/{job_id}` every 2–5 seconds until `status` is `completed`, then read the video URL from `result.urls[0]`. Stop polling on `failed` or `cancelled`. The SDK's `jobs.wait` method handles polling for you.

```bash cURL theme={"theme":{"light":"github-light-default","dark":"vesper"}}
curl --fail-with-body "https://api.krea.ai/jobs/YOUR_JOB_ID" \
  -H "Authorization: Bearer $KREA_API_KEY"
```

For production integrations, use [webhooks](https://www.krea.ai/docs/developers/webhooks.md) to receive completion events. See [job lifecycle](https://www.krea.ai/docs/developers/job-lifecycle.md) and [errors and debugging](https://www.krea.ai/docs/developers/errors-and-debugging.md) for job states and failure handling.

## Animate an image

For Seedance image-to-video generation, use the same endpoint and add `start_image` to your request. Pass a publicly reachable image URL, an uploaded asset URL, or a base64 data URI.

```json theme={"theme":{"light":"github-light-default","dark":"vesper"}}
{
  "prompt": "The camera slowly moves closer as soft light shifts across the scene",
  "start_image": "https://your-domain.example/product.png",
  "duration": 5,
  "aspect_ratio": "16:9",
  "resolution": "720p"
}
```

Replace `start_image` with your own image URL. To control the final frame, add `end_image`. For reference-guided generation, use `reference_images`, `reference_videos`, and `reference_audios` according to the selected model's [API schema](https://www.krea.ai/docs/api-reference/introduction.md).

## Frequently asked questions

### Does Krea offer a ByteDance Seedance API?

Yes. Krea offers ByteDance Seedance 2.5, Seedance 2.0, Seedance 2.0 Fast, and Seedance 2.0 Mini through its REST API at `https://api.krea.ai`. Authenticate with a Krea API token and submit a request to a Seedance endpoint listed above.

### Can I use Seedance for both text-to-video and image-to-video?

Yes. Send a `prompt` for text-to-video, or add `start_image` to animate an image. Both workflows use the same Seedance model endpoint and return an asynchronous job.

### Do I need a separate ByteDance API key?

No. Calls to Seedance through Krea use your Krea API token and workspace API balance. You do not need to send a separate ByteDance credential with these requests.

### How much does the Seedance API cost on Krea?

See [Krea API pricing ↗](https://www.krea.ai/app/api/pricing) for current Seedance prices and available settings. API usage is billed separately from Krea app compute. Failed and cancelled jobs are not billed.

### Can I call Seedance from an AI agent?

Yes. Connect an agent to the [Krea MCP server](https://www.krea.ai/docs/developers/mcp.md) to discover available video models and their schemas. You can also call the REST API or JavaScript SDK directly from your application.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.