Base URL:
https://api2.laozhang.ai/seedance/api/v3Endpoints:POST /contents/generations/tasks: create a video generation taskGET /contents/generations/tasks/{id}: query task status and resultGET https://api2.laozhang.ai/v1/videos/{id}/content: compatibility endpoint for downloading a completed video
id; poll the query endpoint until the task succeeds. You can download from the signed content.video_url, or use /v1/videos/{id}/content to download the final video file.Read this before reviewing billing logs
- One Seedance video task produces two billing logs, but this is not a duplicate charge. The first row is the submission pre-charge, and the second row is the final settlement after generation. Together they form the final cost of one task.
- The
SeeDance20.18xvalue is not a discount. It is the billing coefficient used to convert the upstream RMB pricing scale to the platform’s USD balance. LaoZhang API pricing is typically about10% - 20%above the official public reference price; the exact amount is determined by actual token usage and billing logs.
Token Setup
When creating a token for Seedance 2.0 in Token management, use:Billing And Pricing
The table below uses the official upstream RMB pricing as a cost-estimation
baseline. LaoZhang API balances and logs are displayed in USD, and the
SeeDance2 group uses a 0.18x coefficient to convert between the two billing
scales. Reconcile the final charge using the console model price, the task’s
usage.completion_tokens, and the sum of both billing logs. For planning,
estimate LaoZhang API pricing at approximately 10% - 20% above the official public
reference price.usage.completion_tokens returned by the task. It is not a fixed per-request price. Official estimation formula:
Official Pricing Examples
The examples below are from the official pricing page and assume16:9 output with a 5 second generated video.
When the request includes
video_url, official billing includes both
input-video processing and output-video generation. Reconcile final cost using
the task usage.completion_tokens, upstream billing records, and LaoZhang API
call logs.Why Does One Task Produce Two Billing Logs?
Seedance 2.0 runs asynchronously. When a task is created, the final token usage is not yet known, so the system cannot calculate the exact charge immediately. It first records an estimated pre-charge, then supplements or refunds the difference using the finalusage.completion_tokens.
One task therefore produces two logs. They are not two independent API calls, and they are not two full charges for the same video:
The second “streaming” row is generated by the settlement process. It does not
mean the client used a streaming video API, and it does not represent a new
request from another API key. It is normal for this row not to show the token,
group, or IP; use the first pre-charge row to identify the request source.
$0.90 followed by a supplement of about $3.58 produces one final task cost of about $4.48. These are not two separate video purchases. If actual usage is below the estimate, the second row may instead return the difference.
To reconcile a task:
- Search for
doubao-seedance-2-0in the call logs. - Use the pre-charge row to confirm the token, group, and source IP.
- Use the completion-settlement row to read the actual completion tokens.
- Match the task ID, submission time, and completion time in the asynchronous task page; do not count the two rows as two videos.
What Does the SeeDance2 0.18x Billing Coefficient Mean?
0.18x is not a discount, and it is not applied again to reduce the final bill. It is the Seedance 2.0 currency-conversion coefficient. Upstream model prices use an RMB-denominated scale, while LaoZhang API balances and billing logs are displayed in USD.
Use the following interpretation:
0.18 x 7 = 1.26 result explains the nominal currency-conversion coefficient; it does not mean that every task has a fixed 26% markup. Seedance tasks are still settled from the model price and actual token usage. For planning, LaoZhang API pricing is typically about 10% - 20% above the official public reference price. The final charge is the sum of both billing logs.
API Flow
1
Create task
Call
POST /contents/generations/tasks, put the plain model ID in model,
and provide the prompt plus optional assets in the content array.2
Poll status
Call
GET /contents/generations/tasks/{id} until status reaches a
terminal state.3
Download result
After the task succeeds, download the video from
content.video_url, or
call the compatibility download endpoint /v1/videos/{id}/content to
download the video file. If return_last_frame=true was set, read
content.last_frame_url as well.The Ark-style detail response from
GET /contents/generations/tasks/{id} uses
status=succeeded and content.video_url. A LaoZhang-compatible task object
may also expose status=completed, top-level result_url, and nested
data.content.video_url. Client code should tolerate these success shapes and
keep /v1/videos/{id}/content as a stable download entry point.Models
model must be a plain model ID. Do not use console endpoint IDs, and do not append human-readable labels to the model name.
Create Task
Create a Seedance 2.0 video generation task.
Headers
Request Parameters
content Items
Common
role values:
Text-to-Video
First and Last Frame
Image, Video, and Audio References
Query Task
Query the status of a video generation task.
Result URLs are temporary signed URLs, usually valid for 24 hours. In
production, download successful results immediately and copy them to your own
object storage.
Download Result
Download the video file for a completed task through the LaoZhang
compatibility endpoint.
https://api2.laozhang.ai/v1, not /seedance/api/v3. After the task succeeds, it resolves the stored task result server-side and returns or redirects to a downloadable MP4.
If the task detail response contains
content.video_url, you can download
that signed URL directly. If the detail body is abnormal, no URL can be
parsed, or you only need the video file, use /v1/videos/{id}/content.Full Python Example
Common Integration Questions
Why does one Seedance request produce two logs? Was I charged twice?
Why does one Seedance request produce two logs? Was I charged twice?
No. The first row is the pre-charge recorded when the task is created. The
second row is the supplement or refund calculated from the final
usage.completion_tokens. Together they form the complete settlement for one
task; add both amounts to get the final cost. It is normal for the second row
not to show the token, group, or IP, and it is not another API key request.Is the SeeDance2 0.18x value a discount?
Is the SeeDance2 0.18x value a discount?
No.
0.18x converts the upstream RMB pricing scale to the platform’s USD
balance; it is not an additional discount on the final bill. Using the
reference rate 1 USD ≈ 7 RMB, the nominal conversion is 0.18 x 7 = 1.26,
but this does not mean every task has a fixed 26% markup. LaoZhang API pricing
is typically about 10% - 20% above the official public reference price. The final
charge is based on actual token usage and the sum of both billing logs.Why does /seedance/v3/contents/generations/tasks return HTML?
Why does /seedance/v3/contents/generations/tasks return HTML?
The current path is
/seedance/api/v3/contents/generations/tasks. Do not remove /api from the official path.Can I add a Chinese label after the model name?
Can I add a Chinese label after the model name?
No. The request
model must be the plain model ID, such as
doubao-seedance-2-0-260128. Do not send doubao-seedance-2-0-260128 (2.0-audio-video).Can I pass an ep endpoint ID?
Can I pass an ep endpoint ID?
Not recommended. The LaoZhang relay matches channels by plain model ID, so do
not pass
ep-....Where is the final video URL?
Where is the final video URL?
In the Ark-style detail response, the final video URL is usually
content.video_url. LaoZhang-compatible task objects may also return
top-level result_url or nested data.content.video_url.For download-only clients, call the compatibility download endpoint:/v1/videos/{id}/contentCan audio be the only reference asset?
Can audio be the only reference asset?
No. Audio references must be sent with at least one image or video asset, otherwise the official API rejects the request.