Skip to content

Batch get the highest quality play URL of videos

POST/v1/api/douyin/web/multi-video-high-quality-play-url

This interface is currently on sale for $0.25, and will return to the original price of $0.5 after the event ends. If there are less than 50 videos, they will be charged as 50 videos. Batch get the highest quality (original upload quality) play URL of videos This interface will return the highest quality play URL, the original upload quality refers to the quality of the video when the user uploads it, usually the highest quality video has an uncompressed bitrate and the file header contains metadata. The highest quality video link cannot be obtained directly from the Douyin APP or web version, and must be obtained through this interface. This interface is very suitable for batch obtaining high-definition, watermark-free video links, suitable for scenarios that require high-quality videos, such as video editing, archiving, training models, etc. Use concurrent requests to improve batch acquisition efficiency. Support up to 50 video IDs.

Request body

Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.

Optional<string>aweme_ids

Video id list, separated by commas, for example: "123,456,789", up to 50.

Optional<string | null>region

Optional ISO country code (for example, CN, US, or HK). Pass CN for users in mainland China to get China-region CDN URLs for faster downloads.

Response Schema

A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.

stringidrequired

Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.

stringstatusrequired

Current public run status.

Allowed values: pending, running, completed, failed, timeout

stringmodelrequired

Public SandBase model name used for this run.

Optional<array<object>>outputs

Present only for completed runs. Contains exactly one item whose only field is data.

Optional<object | array>outputs[0].data

Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.

Optional<object>error

Present only for failed or timeout runs. Contains a public error type and sanitized message.

Optional<string>error.type

Stable public error category.

Optional<string>error.message

Sanitized error message safe to show to clients.

Optional<object>usage

Usage details when available.

API capabilities

array<string>capability_tagsrequired

Capabilities declared by the API registry.

Default: api, douyin

stringexecution_moderequired

Execution mode declared by the API registry.

Default: sync

pending response

{"id":"f3d2e8a1-7c4b-4a12-9d2e-123456789abc","status":"pending","model":"douyin/web/multi-video-high-quality-play-url"}

running response

{"id":"f3d2e8a1-7c4b-4a12-9d2e-123456789abc","status":"running","model":"douyin/web/multi-video-high-quality-play-url"}

completed response

{"id":"f3d2e8a1-7c4b-4a12-9d2e-123456789abc","status":"completed","model":"douyin/web/multi-video-high-quality-play-url","outputs":[{"data":{}}]}

failed response

{"id":"f3d2e8a1-7c4b-4a12-9d2e-123456789abc","status":"failed","model":"douyin/web/multi-video-high-quality-play-url","error":{"type":"upstream_error","message":"upstream request failed"}}

timeout response

{"id":"f3d2e8a1-7c4b-4a12-9d2e-123456789abc","status":"timeout","model":"douyin/web/multi-video-high-quality-play-url","error":{"type":"upstream_error","message":"upstream request failed"}}