Skip to main content
BytePlus Video Enhancement improves clarity, reduces noise and compression artifacts, upscales resolution, and optionally interpolates frames. Use the public model ID byteplus-video-enhancement.

Workflow

  1. Submit a public source URL to POST /api/gengen/v1/video/enhancements with your GENGEN API key.
  2. Save the returned id. Query GET /api/gengen/v1/video/enhancements/{id} with the same API key until the status is succeeded or failed. Use a polling interval of at least 10 seconds.
  3. Read the video URL from outputs.videos[0] and download it before outputs.expiresAt.
GENGEN receives BytePlus completion notifications and also reconciles tasks in the background. Closing your client does not cancel processing. This release does not provide customer webhook subscriptions, task cancellation, or a dedicated list endpoint. Submit each job once; a new POST creates a new billable job.
Result URLs normally expire after 24 hours. The returned outputs.expiresAt is the applicable deadline. GENGEN does not archive or transfer these results to permanent storage. After that deadline, retrieval returns the task record with an empty outputs.videos array; it does not regenerate or extend the result.

Source requirements

  • A public HTTP or HTTPS URL reachable without headers or cookies. Signed URLs are accepted; keep the URL valid while the job waits and processes.
  • BytePlus supports source video up to 2K and recommends files no larger than 10 GB. Media compatibility is checked by BytePlus during processing.
  • Supply assets.sourceVideo; direct file uploads and asset:// identifiers are not accepted here.
GENGEN validates request fields and URL syntax, then reserves a fixed balance amount. It does not download or probe the video before submission. Source download or format errors may therefore appear as an asynchronous task failure.

Options

Omit scene for Professional. natural favors a natural appearance; hd favors stronger sharpness. Output uses the upstream default MP4 format. Prompt text, custom codecs, bit depth, and arbitrary provider parameters are not supported.

Example

Billing and failures

A fixed amount is reserved before processing; it is not a quote or a maximum charge. Successful jobs are charged by actual output duration, enhancement version, resolution, and frame-rate tier. Any unused reservation is released. Costs above the reservation use additional available balance. If the final balance is insufficient, retrieval returns HTTP 402; top up and retry retrieval of the same task. Output expiration still applies. Repeated retrieval and duplicate completion notifications do not charge again. Failed jobs release their reserved balance. Check live customer pricing before use. Statuses are pending, running, succeeded, and failed. A failed result includes failureReason. Invalid requests return HTTP 400, invalid API keys return 401, insufficient balance returns 402, and tasks unavailable to the requesting key return 404. If submission acceptance is uncertain, the task can remain in progress while GENGEN reconciles it; avoid submitting a replacement job automatically. See Create task and Retrieve task for the endpoint schemas.