{"id":"5a028ea1-f4db-41d6-ae9a-97b5ed99b938","shortId":"473wsk","kind":"skill","title":"seedance-video","tagline":"Generate AI dance and motion videos with Seedance (ByteDance) via AceDataCloud API. Use when creating videos from text prompts or animating images into motion videos. Supports multiple models with configurable resolution, aspect ratio, duration, and optional audio generation.","description":"# Seedance Video Generation\n\nGenerate AI dance and motion videos through AceDataCloud's Seedance (ByteDance) API.\n\n> **Setup:** See [authentication](../_shared/authentication.md) for token setup.\n\n## Quick Start\n\n```bash\ncurl -X POST https://api.acedata.cloud/seedance/videos \\\n  -H \"Authorization: Bearer $ACEDATACLOUD_API_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"model\": \"doubao-seedance-1-0-pro-250528\", \"content\": [{\"type\": \"text\", \"text\": \"a dancer performing contemporary ballet in a misty forest\"}], \"callback_url\": \"https://api.acedata.cloud/health\"}'\n```\n\n> **Async:** See [async task polling](../_shared/async-tasks.md). Poll via `POST /seedance/tasks` with `{\"task_id\": \"...\"}`.\nThis returns a task ID immediately. Poll for the result:\n\n```bash\ncurl -X POST https://api.acedata.cloud/seedance/tasks \\\n  -H \"Authorization: Bearer $ACEDATACLOUD_API_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"task_id\": \"<task_id from above>\"}'\n```\n\n## Models\n\n| Model | Type | Best For |\n|-------|------|----------|\n| `doubao-seedance-1-0-pro-250528` | Text+Image-to-Video | General-purpose, reliable quality |\n| `doubao-seedance-1-0-pro-fast-251015` | Text+Image-to-Video | Faster Pro generation |\n| `doubao-seedance-1-5-pro-251215` | Text+Image-to-Video | Latest model, highest quality, audio support |\n| `doubao-seedance-1-0-lite-t2v-250428` | Text-to-Video only | Lightweight text-to-video |\n| `doubao-seedance-1-0-lite-i2v-250428` | Image-to-Video only | Lightweight image-to-video |\n\n## Workflows\n\n### 1. Text-to-Video\n\nPass a text content item in the `content` array.\n\n```json\nPOST /seedance/videos\n{\n  \"model\": \"doubao-seedance-1-0-pro-250528\",\n  \"content\": [\n    {\"type\": \"text\", \"text\": \"a street dancer doing breakdancing moves in an urban setting\"}\n  ],\n  \"resolution\": \"1080p\",\n  \"ratio\": \"16:9\",\n  \"duration\": 5\n}\n```\n\n### 2. Image-to-Video\n\nInclude an image content item (with an optional `role`) alongside the text.\n\n```json\nPOST /seedance/videos\n{\n  \"model\": \"doubao-seedance-1-5-pro-251215\",\n  \"content\": [\n    {\"type\": \"text\", \"text\": \"the person starts dancing gracefully\"},\n    {\n      \"type\": \"image_url\",\n      \"role\": \"first_frame\",\n      \"image_url\": {\"url\": \"https://example.com/dancer.jpg\"}\n    }\n  ],\n  \"resolution\": \"720p\",\n  \"duration\": 5\n}\n```\n\nImage roles:\n- `first_frame` — image is used as the opening frame\n- `last_frame` — image is used as the closing frame\n- `reference_image` — image is used as a style/content reference\n\n### 3. First-frame + Last-frame\n\nProvide both a start and end frame image:\n\n```json\nPOST /seedance/videos\n{\n  \"model\": \"doubao-seedance-1-0-pro-250528\",\n  \"content\": [\n    {\"type\": \"text\", \"text\": \"smooth transition between two scenes\"},\n    {\"type\": \"image_url\", \"role\": \"first_frame\", \"image_url\": {\"url\": \"https://example.com/start.jpg\"}},\n    {\"type\": \"image_url\", \"role\": \"last_frame\", \"image_url\": {\"url\": \"https://example.com/end.jpg\"}}\n  ]\n}\n```\n\n## Parameters\n\n| Parameter | Values | Description |\n|-----------|--------|-------------|\n| `model` | see Models table | Model to use (required) |\n| `content` | array | Input items: text and/or image_url objects (required) |\n| `resolution` | `\"480p\"`, `\"720p\"`, `\"1080p\"` | Output resolution (default: 720p for pro, 480p for lite) |\n| `ratio` | `\"16:9\"`, `\"4:3\"`, `\"1:1\"`, `\"3:4\"`, `\"9:16\"`, `\"21:9\"`, `\"adaptive\"` | Aspect ratio (default: 16:9) |\n| `duration` | `2` – `12` | Duration in seconds |\n| `frames` | 29–289 (must satisfy 25+4n) | Frame count — mutually exclusive with `duration` |\n| `seed` | -1 to 4294967295 | Seed for reproducible results (-1 = random) |\n| `generate_audio` | `true` / `false` | Generate audio (only supported by `doubao-seedance-1-5-pro-251215`) |\n| `camerafixed` | `true` / `false` | Fix the camera position during generation |\n| `watermark` | `true` / `false` | Add a watermark to the generated video |\n| `return_last_frame` | `true` / `false` | Return the last frame of the generated video |\n| `service_tier` | `\"default\"`, `\"flex\"` | Processing tier (default: default) |\n| `execution_expires_after` | number | Task timeout threshold in seconds |\n\n## Inline Parameter Syntax\n\nYou can also embed generation parameters directly in the text prompt using the `--param value` syntax:\n\n```\nA kitten yawning at the camera. --rs 720p --rt 16:9 --dur 5 --fps 24 --seed 42\n```\n\nSupported inline params: `--rs` (resolution), `--rt` (ratio), `--dur` (duration), `--frames`, `--fps` (24 only), `--seed`, `--cf` (camera_fixed), `--wm` (watermark).\n\n## Gotchas\n\n- Model names use the `doubao-*` convention (e.g. `doubao-seedance-1-0-pro-250528`) — old short names like `seedance-1.0` are not valid\n- The `content` array replaces the old `prompt` + `image_url` fields; always use `content`\n- Image and text scenarios are mutually exclusive per content item — each item has either `text` or `image_url`, not both\n- `first_frame`, `last_frame`, and `reference_image` roles are mutually exclusive scenarios — pick one pattern per request\n- `generate_audio: true` is only supported by `doubao-seedance-1-5-pro-251215`; other models ignore this field\n- Lite models are split: `*-lite-t2v-*` only accepts text, `*-lite-i2v-*` only accepts image-to-video\n- Resolution options are `480p`, `720p`, `1080p` — there is no 360p or 540p\n- `service_tier` values are `\"default\"` and `\"flex\"` (not \"standard\"/\"premium\")\n- Duration range is **2–12 seconds** — values outside this range will fail\n- Task states use `\"succeeded\"` (not \"completed\") — check for this value when polling\n\n> **MCP:** `pip install mcp-seedance` | Hosted: `https://seedance.mcp.acedata.cloud/mcp` | See [all MCP servers](../_shared/mcp-servers.md)","tags":["seedance","video","skills","acedatacloud","acedata-cloud","agent-skills","agentskills","ai-image","ai-music","ai-tools","ai-video","claude-code"],"capabilities":["skill","source-acedatacloud","skill-seedance-video","topic-acedata-cloud","topic-agent-skills","topic-agentskills","topic-ai-image","topic-ai-music","topic-ai-tools","topic-ai-video","topic-claude-code","topic-cursor","topic-gemini-cli","topic-github-copilot","topic-mcp"],"categories":["Skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/AceDataCloud/Skills/seedance-video","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add AceDataCloud/Skills","source_repo":"https://github.com/AceDataCloud/Skills","install_from":"skills.sh"}},"qualityScore":"0.453","qualityRationale":"deterministic score 0.45 from registry signals: · indexed on github topic:agent-skills · 7 github stars · SKILL.md body (5,658 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T19:14:03.554Z","embedding":null,"createdAt":"2026-05-18T13:21:34.424Z","updatedAt":"2026-05-18T19:14:03.554Z","lastSeenAt":"2026-05-18T19:14:03.554Z","tsv":"'+4':504 '-0':90,164,181,216,235,273,402,654 '-1':513,520 '-1.0':662 '-250528':92,166,275,404,656 '-251215':200,324,537,729 '-5':198,322,535,727 '/_shared/async-tasks.md':116 '/_shared/authentication.md':60 '/_shared/mcp-servers.md':814 '/dancer.jpg':345 '/end.jpg':437 '/health':110 '/mcp':809 '/seedance/tasks':120,140 '/seedance/videos':72,267,316,396 '/start.jpg':425 '1':89,163,180,197,215,234,251,272,321,401,478,479,534,653,726 '1080p':291,463,759 '12':494,780 '16':293,474,483,490,615 '2':297,493,779 '21':484 '24':620,634 '25':503 '250428':220,239 '251015':185 '289':500 '29':499 '3':379,477,480 '360p':763 '4':476,481 '42':622 '4294967295':515 '480p':461,470,757 '5':296,349,618 '540p':765 '720p':347,462,467,613,758 '9':294,475,482,485,491,616 'accept':743,749 'acedatacloud':14,52,76,144 'adapt':486 'add':550 'ai':5,46 'alongsid':311 'also':592 'alway':676 'and/or':455 'anim':24 'api':15,56,77,145 'api.acedata.cloud':71,109,139 'api.acedata.cloud/health':108 'api.acedata.cloud/seedance/tasks':138 'api.acedata.cloud/seedance/videos':70 'application/json':83,151 'array':264,451,668 'aspect':35,487 'async':111,113 'audio':40,210,523,527,717 'authent':59 'author':74,142 'ballet':101 'bash':66,134 'bearer':75,143 'best':158 'breakdanc':284 'byted':12,55 'callback':106 'camera':543,611,638 'camerafix':538 'cf':637 'check':794 'close':368 'complet':793 'configur':33 'contemporari':100 'content':81,93,149,259,263,276,305,325,405,450,667,678,687 'content-typ':80,148 'convent':648 'count':507 'creat':18 'curl':67,135 'd':84,152 'danc':6,47,332 'dancer':98,282 'default':466,489,572,576,577,770 'descript':441 'direct':596 'doubao':87,161,178,195,213,232,270,319,399,532,647,651,724 'doubao-seed':86,160,177,194,212,231,269,318,398,531,650,723 'dur':617,630 'durat':37,295,348,492,495,511,631,776 'e.g':649 'either':692 'emb':593 'end':391 'example.com':344,424,436 'example.com/dancer.jpg':343 'example.com/end.jpg':435 'example.com/start.jpg':423 'exclus':509,685,709 'execut':578 'expir':579 'fail':787 'fals':525,540,549,561 'fast':184 'faster':191 'field':675,734 'first':338,352,381,418,699 'first-fram':380 'fix':541,639 'flex':573,772 'forest':105 'fps':619,633 'frame':339,353,360,362,369,382,385,392,419,431,498,506,559,565,632,700,702 'general':173 'general-purpos':172 'generat':4,41,44,45,193,522,526,546,555,568,594,716 'gotcha':642 'grace':333 'h':73,79,141,147 'highest':208 'host':806 'i2v':238,747 'id':123,128,154 'ignor':732 'imag':25,169,188,203,241,247,299,304,335,340,350,354,363,371,372,393,415,420,427,432,456,673,679,695,705,751 'image-to-video':168,187,202,240,246,298,750 'immedi':129 'includ':302 'inlin':587,624 'input':452 'instal':802 'item':260,306,453,688,690 'json':265,314,394 'kitten':607 'last':361,384,430,558,564,701 'last-fram':383 'latest':206 'lightweight':226,245 'like':660 'lite':218,237,472,735,740,746 'lite-i2v':236,745 'lite-t2v':217,739 'mcp':800,804,812 'mcp-seedanc':803 'misti':104 'model':31,85,155,156,207,268,317,397,442,444,446,643,731,736 'motion':8,27,49 'move':285 'multipl':30 'must':501 'mutual':508,684,708 'n':505 'name':644,659 'number':581 'object':458 'old':657,671 'one':712 'open':359 'option':39,309,755 'output':464 'outsid':783 'param':603,625 'paramet':438,439,588,595 'pass':256 'pattern':713 'per':686,714 'perform':99 'person':330 'pick':711 'pip':801 'poll':115,117,130,799 'posit':544 'post':69,119,137,266,315,395 'premium':775 'pro':91,165,183,192,199,274,323,403,469,536,655,728 'pro-fast':182 'process':574 'prompt':22,600,672 'provid':386 'purpos':174 'qualiti':176,209 'quick':64 'random':521 'rang':777,785 'ratio':36,292,473,488,629 'refer':370,378,704 'reliabl':175 'replac':669 'reproduc':518 'request':715 'requir':449,459 'resolut':34,290,346,460,465,627,754 'result':133,519 'return':125,557,562 'role':310,337,351,417,429,706 'rs':612,626 'rt':614,628 'satisfi':502 'scenario':682,710 'scene':413 'second':497,586,781 'see':58,112,443,810 'seed':512,516,621,636 'seedanc':2,11,42,54,88,162,179,196,214,233,271,320,400,533,652,661,725,805 'seedance-video':1 'seedance.mcp.acedata.cloud':808 'seedance.mcp.acedata.cloud/mcp':807 'server':813 'servic':570,766 'set':289 'setup':57,63 'short':658 'skill' 'skill-seedance-video' 'smooth':409 'source-acedatacloud' 'split':738 'standard':774 'start':65,331,389 'state':789 'street':281 'style/content':377 'succeed':791 'support':29,211,529,623,721 'syntax':589,605 't2v':219,741 'tabl':445 'task':114,122,127,153,582,788 'text':21,95,96,167,186,201,222,228,253,258,278,279,313,327,328,407,408,454,599,681,693,744 'text-to-video':221,227,252 'threshold':584 'tier':571,575,767 'timeout':583 'token':62,78,146 'topic-acedata-cloud' 'topic-agent-skills' 'topic-agentskills' 'topic-ai-image' 'topic-ai-music' 'topic-ai-tools' 'topic-ai-video' 'topic-claude-code' 'topic-cursor' 'topic-gemini-cli' 'topic-github-copilot' 'topic-mcp' 'transit':410 'true':524,539,548,560,718 'two':412 'type':82,94,150,157,277,326,334,406,414,426 'urban':288 'url':107,336,341,342,416,421,422,428,433,434,457,674,696 'use':16,356,365,374,448,601,645,677,790 'valid':665 'valu':440,604,768,782,797 'via':13,118 'video':3,9,19,28,43,50,171,190,205,224,230,243,249,255,301,556,569,753 'watermark':547,552,641 'wm':640 'workflow':250 'x':68,136 'yawn':608","prices":[{"id":"97182523-5739-4179-881a-b864700837fe","listingId":"5a028ea1-f4db-41d6-ae9a-97b5ed99b938","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"AceDataCloud","category":"Skills","install_from":"skills.sh"},"createdAt":"2026-05-18T13:21:34.424Z"}],"sources":[{"listingId":"5a028ea1-f4db-41d6-ae9a-97b5ed99b938","source":"github","sourceId":"AceDataCloud/Skills/seedance-video","sourceUrl":"https://github.com/AceDataCloud/Skills/tree/main/skills/seedance-video","isPrimary":false,"firstSeenAt":"2026-05-18T13:21:34.424Z","lastSeenAt":"2026-05-18T19:14:03.554Z"}],"details":{"listingId":"5a028ea1-f4db-41d6-ae9a-97b5ed99b938","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"AceDataCloud","slug":"seedance-video","github":{"repo":"AceDataCloud/Skills","stars":7,"topics":["acedata-cloud","agent-skills","agentskills","ai-image","ai-music","ai-tools","ai-video","claude-code","cursor","gemini-cli","github-copilot","mcp","npm","openai-codex","roo-code"],"license":"other","html_url":"https://github.com/AceDataCloud/Skills","pushed_at":"2026-05-18T07:35:03Z","description":"Agent Skills for AceDataCloud AI services — music, image, video generation, web search, and more. Compatible with Claude Code, GitHub Copilot, Gemini CLI, and all agentskills.io-compatible agents.","skill_md_sha":"ddb885b46495e541f0cac33c68c068e4fa9e1d76","skill_md_path":"skills/seedance-video/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/AceDataCloud/Skills/tree/main/skills/seedance-video"},"layout":"multi","source":"github","category":"Skills","frontmatter":{"name":"seedance-video","license":"Apache-2.0","description":"Generate AI dance and motion videos with Seedance (ByteDance) via AceDataCloud API. Use when creating videos from text prompts or animating images into motion videos. Supports multiple models with configurable resolution, aspect ratio, duration, and optional audio generation.","compatibility":"Requires ACEDATACLOUD_API_TOKEN in .env file (see _shared/authentication.md). Optionally pair with mcp-seedance for tool-use."},"skills_sh_url":"https://skills.sh/AceDataCloud/Skills/seedance-video"},"updatedAt":"2026-05-18T19:14:03.554Z"}}