This page only covers the overseas BytePlus Dreamina Seedance 2.0. The domestic Doubao Seedance 2.0 uses separate models, pricing, and asset capabilities.
asset://<AssetId>.
Endpoint
POSThttps://api.gregapi.com/volcark/api/v3/contents/generations/tasks
The overseas entry point is the BytePlus native task API. Task listing, cancellation/deletion, and asset library access are restricted to the current GregAPI tenant scope.
Authentication
Authenticate with your API key by addingAuthorization: Bearer $GRAPAPI_API_KEY to the request header. Callers only need the API token issued by GregAPI; the BytePlus API key, AK/SK, project name, and endpoint are all hosted by the platform.
Models
For the
model field, use the stable external model name on the left. For BytePlus official version compatibility, the platform also accepts the following official version names and normalizes them to the stable external model name in task queries, task lists, asset library responses, and billing audits:
dreamina-seedance-2-0-260128→dreamina-seedance-2-0dreamina-seedance-2-0-fast-260128→dreamina-seedance-2-0-fastdreamina-seedance-2-0-mini-260615→dreamina-seedance-2-0-mini
seedance-2-0, seedance-2-0-260128, seedance-2-0-fast, seedance-2-0-fast-260128, seedance-2-0-mini, and dreamina-seedance-2.0-mini are console or resource-page short IDs and are not accepted as the external model parameter. dreamina-seedance-2-0-filter-off-260128, dreamina-seedance-2-0-260128-filter-off, dreamina-seedance-2-0-fast-filter-off-260128, and dreamina-seedance-2-0-fast-260128-filter-off are not official BytePlus model names, and the platform does not map them. In query and list responses the model field echoes the GregAPI external model from the creation request to avoid exposing service configuration, billing details, or implementation specifics.
4K capability
The overseas standard model supports 4K: setresolution to 4k; output is 10-bit / H.265. The fast and mini models do not support 1080p or 4k and must fall back to 480p / 720p.
Overseas pricing
Only successfully rendered tasks are settled; failed tasks are not billed as successful renders.video means the request includes a video reference input; novideo means it does not. dreamina-seedance-2-0-filter-off reuses all SKUs of dreamina-seedance-2-0; dreamina-seedance-2-0-fast-filter-off reuses all SKUs of dreamina-seedance-2-0-fast. Logs and task audits keep the Filter-Off external model name from the creation request.
Request parameters
The overseas Mini supports only
480p / 720p and supports audio reference input. references.audio or native content[].type=audio_url is passed through as ordinary reference audio; service_tier=flex and draft=true are still rejected before calling BytePlus. The overseas Mini is delivered in the BytePlus AP region by default; the EU region must be probed before being opened.Create a task
model; other request fields stay the same as the ordinary overseas Dreamina 2.0:
Filter-Off request
Success response
Task creation is asynchronous; a successful response only returns the task ID. Query the task to retrieve the final video result. The GregAPI native response does not append
platform_id by default, preserving the BytePlus native response shape.Query a task
GEThttps://api.gregapi.com/volcark/api/v3/contents/generations/tasks/{task_id}
cURL
Success response
queued, running, succeeded, failed, expired, cancelled. Result URLs are usually valid for about 24 hours; save them promptly. If return_last_frame=true was requested, the success result may include content.last_frame_url.
List tenant tasks
GEThttps://api.gregapi.com/volcark/api/v3/contents/generations/tasks
cURL
Response example
The list endpoint is the BytePlus-compatible list within the current GregAPI tenant scope and does not return other tenants’ or account-level full task lists.
Cancel or delete a task
DELETEhttps://api.gregapi.com/volcark/api/v3/contents/generations/tasks/{task_id}
cURL
409:
409 response
409. You can only delete or cancel tasks that belong to the current tenant.
Video editing and extension
Video generation, editing, and extension are all expressed through the same creation endpoint. Pass the video, reference image, or reference audio to edit or extend viacontent[], and describe the target result with a text prompt.
GregAPI requires you to first upload images, videos, or audio through the asset library and wait until the asset becomes
Active before passing it as asset://<Asset_Id>. Tasks that include content[].type=video_url are billed under the video-reference-input SKU; tasks without video_url do not enter the *-video SKU.
Video editing
Video extension
Native callback
POST /volcark/api/v3/contents/generations/tasks supports a top-level callback_url. The platform validates the URL before submitting the creation request to the model service. Validation rules:
- It must be a string and must not be empty after trimming whitespace.
- It must use
https. - The domain must resolve to a publicly routable address; local, private, link-local, multicast, and CGNAT addresses are rejected.
- On validation failure, the platform returns HTTP
400with error codeinvalid_requestbefore submitting to the model service.
CallbackURL is normalized to callback_url. If both are present, callback_url takes precedence. This is native task callback passthrough, not a GregAPI webhook broker; callback delivery, retry, signing, and payload structure all follow the model service’s native capabilities.
Asset library workflow
The asset library comes with the overseas Dreamina 2.0. Use it to: create asset groups, upload image/video/audio assets, save theResult.Id returned by CreateAsset, and query the asset lifecycle with GetAsset (only Active assets can enter generation tasks).
All Asset APIs are mounted at POST /volcark/?Action={ActionName}&Version=2024-01-01.
Update*, Delete*, and Moderation.Strategy=Skip are not enabled. On success, CreateAssetGroup and CreateAsset return only Id in Result; asset status, URL, moderation, or preprocessing failure reasons are not expanded in the Create response.
Create asset group
cURL
Success response
Create asset
cURL
AssetTypesupportsImage,Video, andAudio.- Use the
URLfield; the platform also acceptsUrl/url. Result.Idis the stable asset ID used by subsequentGetAssetandasset://<Result.Id>calls.- Asset URLs must be publicly downloadable and must not rely on cookies, login state, or one-time links.
- Only assets with
Status=Activecan be used for video generation.
Success response
Query an asset
cURL
Processing, Active, Failed. After CreateAsset returns Result.Id, use GetAsset to query the lifecycle; if the status is still Processing, poll GetAsset with backoff until it enters Active or Failed. On success, pass it as asset://<Asset_Id> in the generation task.
List assets
cURL
Only assets with
Status=Active can be used for video generation. Asset URLs must be publicly downloadable. After CreateAsset returns Result.Id, poll GetAsset with backoff until the asset enters Active or Failed.