---
title: "Partial Update Preset"
method: PATCH
path: "/delivery/v2.1/global/workspaces/{workspaceUUID}/presets/{resourceId}"
tags: ["CDN and DNS (v2.1)"]
---

# Partial Update Preset

`PATCH /delivery/v2.1/global/workspaces/{workspaceUUID}/presets/{resourceId}`

Partially updates an existing Preset object in the specified workspace with the provided configuration.

## Path parameters

- `resourceId` string, required
- `workspaceUUID` string, required

## Response `200`

The preset was successfully partially updated. 
The response contains the complete preset details including the assigned unique identifier.

- V2Preset
  - `apiVersion` 'delivery/v2' | 'delivery/v2.1', required — Version identifier of the API schema
  - `kind` 'Preset', required — The string value 'Preset' that identifies the schema
  - `metadata` V2ObjectMeta, required — Standard resource metadata fields
    - `creationTimestamp` string, date-time, required
    - `labels` object, required — Labels are key-value pairs attached to resources for organization and categorization
    - `name` string, required — User-provided name that uniquely identifies the resource within its workspace
    - `namespace` string, required — Namespace is the namespace in which the resource exists
    - `uid` string, required — System-generated unique identifier for the resource
  - `spec` V1PresetSpec, required — Desired configuration for the Preset
    - `audio` V1PresetAudio, nullable — Audio encoding configuration including codec, bitrate, and sample rate, required unless SkipAudio is true
      - `bitrate` string — Target audio bitrate (e.g., '64k', '128k', '192k', '320k', '1m'), higher bitrates provide better quality but larger file sizes, typical range 96k-320k.
      - `codec` string, required — Audio codec for encoding (aac, mp3, vorbis, opus, copy), 'copy' streams without re-encoding for faster processing, aac recommended for broad compatibility.
      - `sampleRate` integer — Audio sample rate of input audio to produce output audio in Hz (22050, 32000, 44100, 48000, 96000), 44100/48000 are standard for most content, higher rates for professional audio.
    - `container` string, required — Output container format (mp4, m4v, mov, avi, flv), determines the file wrapper format that FFmpeg will mux the encoded streams into.
    - `description` string — Human-readable description of this preset's purpose (max 128 characters), useful for identifying preset characteristics like '720p High Quality'.
    - `noFragment` boolean — When true, disables MP4 fragmentation (faststart/moov atom relocation), may impact progressive playback but reduces processing overhead.
    - `pixelFormat` string — FFmpeg pixel format for video output, yuv420p is the most compatible format for H.264/H.265 ensuring broad device support.
    - `skipAudio` boolean — When true, removes all audio streams from the output, creating a video-only file useful for silent videos or separate audio processing
    - `skipSubtitle` boolean — When true, removes all subtitle streams from the output, useful when subtitles should be handled separately or not included.
    - `skipVideo` boolean — When true, removes all video streams from the output, creating an audio-only file for music or podcast extraction.
    - `speed` string — FFmpeg encoding speed preset (medium, veryfast, ultrafast), trades encoding time for compression efficiency - faster speeds produce larger files but good quality.
    - `video` V1PresetVideo, nullable — Video encoding configuration including codec, resolution, bitrate, and quality settings, required unless SkipVideo is true
      - `bitrate` string — Target video bitrate (e.g., '1000k', '5M'), used for constant/average bitrate encoding, mutually exclusive with CRF for rate control.
      - `bufferSize` string — Video buffer verifier (VBV) buffer size (e.g., '2M'), controls bitrate variability, typically 1-2x MaxBitrate for streaming.
      - `codec` string, required — Video codec for encoding (h264, h265/HEVC, vp9), h264 offers best compatibility, h265 better compression, vp9 for WebM/VP9 workflows.
      - `crf` integer — Constant Rate Factor for quality-based encoding (0-51), lower values = higher quality, 18-28 typical range, 23 is default for h264.
      - `fixedGOP` boolean — When true, enforces fixed Group of Pictures size disabling scene change detection, ensures consistent segment sizes for HLS/DASH.
      - `frameRate` integer — Target frame rate in fps (1-120), FFmpeg drops or duplicates frames to match, common values: 24, 25, 30, 50, 60, omit to preserve source fps.
      - `height` integer — Target height in pixels (0-2400), used with autoHeight or unconstrained ResizeType, common values: 360, 480, 720, 1080, 1440, 2160.
      - `keyframeInterval` integer — Maximum frames between keyframes/I-frames (1-1000), recommended default 250, lower values improve seeking but increase file size, critical for HLS segment alignment.
      - `maxBitrate` string — Maximum allowed bitrate for variable bitrate encoding (e.g., '2M'), prevents bitrate spikes, requires BufferSize to be set.
      - `minBitrate` string — Minimum allowed bitrate for variable bitrate encoding (e.g., '500k'), ensures minimum quality in low-complexity scenes.
      - `percentage` integer — Scaling percentage (1-1000), used when ResizeType is 'percentage', 50 = half size, 100 = same size, 200 = double size.
      - `resizeType` string, required — Video scaling strategy: empty (no resize), autoHeight (set width), autoWidth (set height), unconstrained (set both), percentage (scale by %).
      - `sceneChangeThreshold` integer — FFmpeg scene change detection sensitivity (0-1000), 0 disables scene detection, higher values require more significant changes to insert keyframe.
      - `width` integer — Target width in pixels (0-2400), used with autoWidth or unconstrained ResizeType, FFmpeg scales video maintaining or ignoring aspect ratio.

## Other responses

- `400` — Bad Request - invalid request payload or parameters
- `401` — Unauthorized - invalid or expired authentication token
- `403` — Forbidden - insufficient permissions

---

[API](https://skmtc.dev/sotoon/apis/sotoon-api.md) · [All operations](https://skmtc.dev/sotoon/apis/sotoon-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/sotoon/sotoon-api/revisions/c937cd9861c5/schema)
