RequestBeam

Documentation

RequestBeam Docs

Seedance 2.0 Video Generation

Seedance 2.0 text, first/last-frame, multimodal, and audio generation parameters.

POSThttps://api.requestbeam.com/v1/video/seedance

Create an asynchronous Seedance 2.0 job. For Seedance 2.5, use its separate parameter reference.

Authentication

http
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json

Body

modelstringrequired

seedance-2.0 or its alias seedance-2-0.

promptstring

Video prompt. Required for text-only generation; may be omitted or blank when image or video references are supplied. Audio alone is not a valid input. Text items inside metadata.content are discarded; only this top-level prompt is used.

secondsstringDefault: 5

Integer string from "4" through "15". The numeric duration alias is also accepted. If both are supplied, they must agree. Automatic duration (-1) is not supported.

sizestringDefault: 720p

Output resolution: 480p, 720p, 1080p, or 4k. Not an aspect ratio. Resolution precedence: metadata.resolution, size, then resolution.

aspectRatiostringDefault: 16:9

16:9, 9:16, 1:1, 4:3, 3:4, 21:9, or adaptive. aspect_ratio and ratio are aliases; metadata.ratio takes precedence. Use one alias for each setting.

metadataobject

Accepts resolution, ratio, content, and generate_audio. Set generate_audio to a boolean to control generated audio. Top-level generateAudio / generate_audio are aliases; supply only one audio control.

imagesstring[]

Image shorthand: the first image is the first frame and the second is the last frame. For precise roles, use metadata.content. Existing imageUrls, imageUrl, image_urls, and image_url aliases remain accepted with the same frame semantics.

imageWithRolesobject[]

Images with url and role: first_frame, last_frame, or reference_image. image_with_roles is an alias. Both versions also accept typed metadata.content.

videoUrlsstring[]

Reference videos. videoUrl, video_urls, and video_url are aliases.

audioUrlsstring[]

Reference audio. audioUrl, audio_urls, and audio_url are aliases. Requires an image or video reference in the same request.

callback_urlstring

Optional native callback URL. Availability depends on the selected channel; use GET https://api.requestbeam.com/v1/jobs/{jobId} as the authoritative result.

Multimodal Content

Each metadata.content media item contains its matching nested URL object. Media URLs may use public HTTP(S) URLs or existing asset:// identifiers.

TypeURL fieldRoles
image_urlimage_url.urlfirst_frame, last_frame, reference_image
video_urlvideo_url.urlreference_video
audio_urlaudio_url.urlreference_audio

Up to 9 images, 3 videos, and 3 audio files are accepted, including shorthand and typed content. Audio requires an image or video. draft_task is not supported. Use top-level prompt instead of type: "text" content items. Top-level first_frame_url, last_frame_url, reference_image_urls, reference_video_urls, and reference_audio_urls are role-specific shorthand. Unlisted fields inside content items are not forwarded.

Unsupported controls such as negativePrompt, seed, returnLastFrame, nsfwCheck, tools, webhook, watermark, outputFormat, and their snake-case aliases are rejected. width, height, fps, cfgScale, steps, and style are not supported.

Request Examples

Text-to-Video

json
{
  "model": "seedance-2-0",
  "prompt": "A quiet city street at dawn, slow forward camera movement",
  "seconds": "5",
  "size": "720p",
  "metadata": {"ratio": "16:9", "generate_audio": true}
}

First and Last Frames

json
{
  "model": "seedance-2.0",
  "seconds": "5",
  "metadata": {
    "resolution": "720p",
    "ratio": "9:16",
    "content": [
      {"type": "image_url", "image_url": {"url": "https://example.com/first.jpg"}, "role": "first_frame"},
      {"type": "image_url", "image_url": {"url": "https://example.com/last.jpg"}, "role": "last_frame"}
    ]
  }
}

Image and Audio References

json
{
  "model": "seedance-2.0",
  "prompt": "Animate the scene to match the rhythm",
  "metadata": {
    "resolution": "720p",
    "generate_audio": true,
    "content": [
      {"type": "image_url", "image_url": {"url": "asset://existing-image-id"}, "role": "reference_image"},
      {"type": "audio_url", "audio_url": {"url": "https://example.com/beat.mp3"}, "role": "reference_audio"}
    ]
  }
}

Submission and Result

Response data contains jobId, status, model, and message. Submission success means the job was accepted, not completed. Poll GET https://api.requestbeam.com/v1/jobs/{jobId} with the same account's API Key. See Get Async Job.

When status is COMPLETED, read data.outputResult. Accept both a string url and an array of URLs in each result object. Charges depend on actual completion tokens and output resolution; video references select the video-input rate, while image/audio-only references do not.