---
title: "Video Upscaler - Upscale video"
method: POST
path: "/v1/ai/video-upscaler"
tags: ["video-upscaler"]
---

# Video Upscaler - Upscale video

`POST /v1/ai/video-upscaler`

## Request

- Base URL: `https://api.magnific.com`
- URL: `https://api.magnific.com/v1/ai/video-upscaler`
- Auth: API key in header `x-magnific-api-key`

Upscales a video while enhancing visual quality and resolution.
Supports various output resolutions (720p, 1k, 2k, 4k) with optional creativity, sharpening, and grain controls.

## Request body

- RequestContent4
  - `video` string, required: Source video to upscale. Must be a publicly accessible HTTPS URL pointing to the video.
  - `creativity` integer: Creativity intensity. Controls how much creative freedom is applied during upscaling. Valid values range from 0 (no creativity) to 100 (maximum creativity). Default is 0.
  - `resolution` '720p' | '1k' | '2k' | '4k': Output resolution for the video upscaling: - `720p`: HD output - `1k`: Standard definition output - `2k`: High definition output (default) - `4k`: Ultra high definition output
  - `fps_boost` boolean: Enable FPS boost to increase the frame rate of the upscaled video.
  - `sharpen` integer: Video sharpness intensity control. Higher values increase edge definition and clarity. Valid values range from 0 (no sharpening) to 100 (maximum sharpness). Default is 0.
  - `smart_grain` integer: Applies a film grain effect to the output video. Helps preserve natural film grain and texture detail. Valid values range from 0 (no grain) to 100 (maximum grain). Default is 0.
  - `flavor` 'vivid' | 'natural': Video processing flavor that determines the upscaling style: - `vivid`: Enhanced colors and contrast for more vibrant output - `natural`: Preserves original colors and natural appearance
  - `output_format` 'h264' | 'prores_422_hq': Output video format. `h264` (default) returns an H.264 MP4. `prores_422_hq` returns an Apple ProRes 422 HQ master (.mov) alongside an H.264 preview. When `prores_422_hq` is selected the completed task's `generated` array contains both files: the H.264 MP4 preview and the ProRes master, which can be identified by its `.mov` extension.
  - `webhook_url` string, uri: Optional callback URL that will receive asynchronous notifications when the upscaling task completes. The webhook will be called with the task status and the upscaled video URL.

## Response `200`

OK - The task exists and the status is returned

- InlineObject4
  - `data` TaskDetail1, required
    - `task_id` string, uuid, required: Task identifier
    - `status` 'CREATED' | 'IN_PROGRESS' | 'COMPLETED' | 'FAILED', required: Task status
    - `generated` string[], required

## Other responses

- `400`: Bad Request - The server could not understand the request due to invalid syntax.
- `401`: Unauthorized - The client must authenticate itself to get the requested response.
- `500`: Internal Server Error - The server has encountered a situation it doesn't know how to handle.
- `503`: Service Unavailable

---

[API](https://skmtc.dev/magnific/apis/magnific-api.md) · [All operations](https://skmtc.dev/magnific/apis/magnific-api/llms.txt) · [OpenAPI document](https://skmtc.dev/magnific/apis/magnific-api/revisions/60711fb082c7?raw)
