> ## Documentation Index
> Fetch the complete documentation index at: https://docs.youka.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Presets

> Manage reusable render configurations

A preset is a reusable render configuration — background, subtitle style, layout, and other visual settings — that you can apply to any project or export. Presets are ideal when you have a consistent look across many tracks.

See [Render settings reference](/en/render-settings-reference) for the full
`preset` shape and every enum-backed option.

## `preset schema`

Return the JSON Schema for preset settings. Use this to discover valid fields before creating or updating a preset.

```bash theme={null}
youka preset schema --json
```

<Tip>
  Agents should call `preset schema` before mutating presets so they know the
  exact field names and value types.
</Tip>

## `preset list`

List all presets owned by the authenticated account.

```bash theme={null}
youka preset list --json
```

## `preset show`

Fetch a single preset by ID.

```bash theme={null}
youka preset show <presetId> --json
```

## `preset create`

Create a new preset.

```bash theme={null}
youka preset create [options]
```

### Options

| Option             | Description                                     |
| ------------------ | ----------------------------------------------- |
| `--name <name>`    | Preset name                                     |
| `--default`        | Mark the new preset as the default              |
| `--body <file\|->` | Read the full request body from a file or stdin |

<Note>
  The request body should contain the full `preset` object. For large payloads,
  prefer `--body` instead of inline JSON.
</Note>

### Examples

<CodeGroup>
  ```bash from-file theme={null}
  youka preset create \
    --name "Neon Night" \
    --body ./neon-preset.json \
    --json
  ```

  ```bash make-default theme={null}
  youka preset create \
    --name "Red Cinema" \
    --body ./red-cinema.json \
    --default \
    --json
  ```

  ```bash from-stdin theme={null}
  cat ./preset.json | youka preset create --name "From stdin" --body - --json
  ```
</CodeGroup>

CLI flags override matching fields from `--body`.

## `preset update`

Update an existing preset.

```bash theme={null}
youka preset update <presetId> [options]
```

| Option             | Description                          |
| ------------------ | ------------------------------------ |
| `--name <name>`    | New name                             |
| `--body <file\|->` | Full request body from file or stdin |

Example:

```bash theme={null}
youka preset update $PRESET_ID \
  --name "Neon Night v2" \
  --body ./neon-v2.json \
  --json
```

## `preset delete`

Delete a preset by ID.

```bash theme={null}
youka preset delete <presetId> --json
```

<Warning>
  Deleting a preset does not delete projects or exports that were previously
  rendered with it. Future exports that reference the deleted preset will fail.
</Warning>

## `preset default`

Get or set the default preset.

```bash theme={null}
youka preset default --json
youka preset default <presetId> --json
```

With no argument, the command returns the current default preset or `null`. With a preset ID, it marks that preset as the default.

## Applying a preset

Apply a preset to a project or export with `--preset`:

<CodeGroup>
  ```bash on-create theme={null}
  youka project create ./song.mp3 --preset $PRESET_ID --wait
  ```

  ```bash on-settings-update theme={null}
  youka project settings $PROJECT_ID --preset $PRESET_ID
  ```

  ```bash on-export theme={null}
  youka export create $PROJECT_ID --preset $PRESET_ID --wait
  ```
</CodeGroup>

## What's next

* [Render settings reference](/en/render-settings-reference) - all shared preset fields
* [Projects](/en/cli/projects) - apply presets to project settings
* [Exports](/en/cli/exports) - apply presets at render time
* [Media](/en/cli/media) - reusable media referenced by presets
