API public

Generează videoclipuri și imagini din propriile tale instrumente

Creează o cheie, apelează API-ul cu autentificare Bearer și verifică statusul sarcinii până când rezultatul tău este gata. Funcționează cu Claude Code, Codex și orice client HTTP.

Gestionează cheile

Ghid rapid

Pas 1

Creează o cheie

Generează o cheie API în dashboard-ul tău. Se afișează o singură dată, așa că păstreaz-o într-un loc sigur.

Pas 2

Apelează API-ul

Trimite o cerere POST cu cheia ta Bearer și un antet Idempotency-Key.

Pas 3

Sondează rezultatul

Interoghează endpoint-ul stării sarcinii până când starea este finalizată sau eșuată, apoi citește rezultatul.

Autentificare

Fiecare cerere este autentificată cu o cheie API Bearer în antetul Authorization.

http
Authorization: Bearer sk_live_your_api_key
Content-Type: application/json
Idempotency-Key: a-unique-id-per-request

Seedance 2 Video

Text, imagine sau media în video.

1

Trimite un job

POST
/api/v1/video/seedance2

Parametri

ParametruTipObligatoriuImplicitValori permise
mode

Generation mode.

stringOpționaltext-to-video
text-to-videoimage-to-videomedia-to-video
quality_tier

Quality tier.

stringOpționalstandard
ministandardpro
channel

Rendering channel.

stringOpționalstandard
standardrealwild
prompt

Text prompt.

stringObligatoriu
3–10000 chars
aspect_ratio

Aspect ratio.

stringOpțional16:9
1:121:94:33:416:99:16adaptive
duration

Clip duration.

stringOpțional5
4–15 (seconds)
resolution

Output resolution. 1080p-plus and 4k are available on pro only.

stringOpțional720p
720p1080p1080p-plus4k
image_url

Start frame — required for image-to-video.

string (URL)Opțional
public https URL
end_image_url

Optional end frame.

string (URL)Opțional
public https URL
media_urls

Required for media-to-video. Video URLs must support duration probing.

string[] (URL)Opțional
≤ 12 public https image/video URLs
generate_audio

Generate an audio track.

booleanOpționaltrue
truefalse
fixed_lens

Lock the camera lens.

booleanOpționalfalse
truefalse
seed

Not supported on the real channel or mini tier.

integerOpțional
-1 – 4294967295

Seedance prompt guide

Seedance prompts work best as concrete director instructions. Describe the subject, action, scene, camera motion, visual style, and constraints, then map every reference asset to the right API parameter.

  • Use image_url for the opening frame, end_image_url for the closing frame, and media_urls for character, motion, style, source-video, or extension references.
  • Describe asset roles in natural language inside prompt. Do not send raw asset ids, asset:// URLs, or in-app-only labels such as @图片1.
  • For edits say “strictly edit the supplied source video”; for extensions say “continue from the supplied previous clip.”
  • For complex scenes, use ordered shots plus a style and constraint package: stable faces, natural motion, no deformation, no watermark, no logo, and no subtitles unless intended.

Cerere

bash
curl -X POST https://seedance2ai.io/api/v1/video/seedance2 \
  -H "Authorization: Bearer $SEEDANCE_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: demo-video-001" \
  -d '{
    "mode": "text-to-video",
    "quality_tier": "standard",
    "prompt": "A cinematic shot of a glass train crossing a snowy mountain bridge",
    "aspect_ratio": "16:9",
    "duration": "5",
    "resolution": "720p"
  }'

Răspuns202

json
{
  "id": "sd2_xxxxx",
  "status": "processing",
  "model": "seedance2",
  "quality_tier": "standard",
  "channel": "standard",
  "credits_used": 30
}
2

Verifică starea sarcinii

GET
/api/v1/tasks/{id}

Cerere

bash
curl https://seedance2ai.io/api/v1/tasks/sd2_xxxxx \
  -H "Authorization: Bearer $SEEDANCE_API_KEY"

Răspuns200

json
{
  "id": "sd2_xxxxx",
  "status": "completed",
  "model": "seedance2",
  "quality_tier": "standard",
  "channel": "standard",
  "credits_used": 30,
  "credits_refunded": 0,
  "output": {
    "video_url": "https://...",
    "last_frame_url": "https://...",
    "seed": 123
  },
  "error": null,
  "created_at": "2026-06-03T10:00:00.000Z",
  "updated_at": "2026-06-03T10:03:12.000Z"
}

status: processing · completed · failed

coduri de eroare

All errors share this shape:

json
{ "error": { "code": "invalid_request", "message": "Invalid request body" } }
CodHTTPSemnificație
unauthorized401Missing, invalid, or revoked API key.
invalid_request400Bad input or unsupported field.
insufficient_credits402Not enough credits on the balance.
rate_limited429Too many requests — limit is 30 requests per 60 seconds per account. Retry after the Retry-After response header (in seconds).
idempotency_conflict409Same Idempotency-Key reused with a different body, or still running.
service_busy503Temporary upstream or credit-concurrency issue. Retry.
not_found404Task does not exist or does not belong to this key owner.
internal_error500Unexpected server-side failure.

Utilizare cu Claude Code

Apasă „Copy” ca AI-ul să preia întreg API-ul sub formă de Markdown curat, lipește-l în Claude Code sau Codex și lasă-l să configureze integrarea. Sau direcționează agentul direct către endpoint-ul de text brut.

Deschide llms.txt

Skill

Instalează skill-ul Seedance în Claude Code, Codex, sau orice agent — scrie prompt-uri cinematice și le redă prin API pentru tine.

bash
# Download the one-file skill from Seedance 2 AI
mkdir -p ~/.claude/skills/seedance
curl -L https://seedance2ai.io/downloads/seedance-skill.md -o ~/.claude/skills/seedance/SKILL.md

Întrebări frecvente

Cine poate folosi API-ul?

Oricine are credite. Nu există restricții de abonament — orice cont cu credite poate crea o cheie și poate apela API-ul.

Cum obțin credite?

Încarcă sau abonează-te pe pagina de prețuri. Creditele se adaugă instantaneu în soldul tău.

Creditele sunt partajate între site și API?

Da — soldul tău personal de credite acoperă atât generarea pe web, cât și apelurile API. Într-o echipă, apelurile API folosesc soldul personal al fiecărui membru, nu fondul comun al echipei.

Cum încep?

Creează o cheie API în panoul tău de control, apoi apelează endpoint-urile cu un token Bearer (vezi Quickstart mai sus).

Ce se întâmplă dacă un apel returnează insufficient_credits?

Soldul tău este gol — încarcă pe pagina de prețuri și încearcă din nou.