> ## 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.

# Impostazioni del progetto

> Leggi e modifica le impostazioni attive di un progetto

Ogni progetto ha impostazioni attive — trim, sfondo, stile dei sottotitoli, layout — che controllano come vengono renderizzati gli export. Usa le impostazioni del progetto quando vuoi override locali al progetto che non vale la pena condividere come preset.

Vedi [Render settings reference](/en/render-settings-reference) per la mappa dei campi condivisi `preset`, `settings.style` e `settingsOverride`.

## Endpoint

| Method  | Path                             | Purpose                                                  |
| ------- | -------------------------------- | -------------------------------------------------------- |
| `GET`   | `/projects/{projectId}/settings` | Recupera le impostazioni attive del progetto.            |
| `PATCH` | `/projects/{projectId}/settings` | Applica un preset, modifica le impostazioni, o entrambi. |

Gli schemi completi di richiesta e risposta sono nella **API reference**.

## Recupera le impostazioni correnti

```bash theme={null}
curl https://api.youka.io/it/api/v1/projects/prj_abc/settings \
  -H "Authorization: Bearer yk_..."
```

Restituisce l’intero set di impostazioni attive del progetto, incluso qualsiasi preset applicato.

## Modifica le impostazioni

`PATCH` accetta qualsiasi sottoinsieme di `presetId` e `settings`. Quando vengono passati entrambi, il preset viene applicato per primo e poi `settings` viene unito sopra.

<Tabs>
  <Tab title="Applica un preset">
    ```bash theme={null}
    curl -X PATCH https://api.youka.io/it/api/v1/projects/prj_abc/settings \
      -H "Authorization: Bearer yk_..." \
      -H "Content-Type: application/json" \
      -d '{
        "presetId": "preset_abc123"
      }'
    ```
  </Tab>

  <Tab title="Impostazioni inline">
    ```bash theme={null}
    curl -X PATCH https://api.youka.io/it/api/v1/projects/prj_abc/settings \
      -H "Authorization: Bearer yk_..." \
      -H "Content-Type: application/json" \
      -d '{
        "settings": {
          "trim": { "startSeconds": 5, "endSeconds": 180 },
          "style": {
            "background": {
              "type": "color",
              "color": "#101010"
            }
          }
        }
      }'
    ```
  </Tab>

  <Tab title="Preset + override">
    ```bash theme={null}
    curl -X PATCH https://api.youka.io/it/api/v1/projects/prj_abc/settings \
      -H "Authorization: Bearer yk_..." \
      -H "Content-Type: application/json" \
      -d '{
        "presetId": "preset_abc123",
        "settings": {
          "trim": { "startSeconds": 5, "endSeconds": 180 }
        }
      }'
    ```
  </Tab>
</Tabs>

## Scopri i campi validi

L’SDK esporta lo schema che valida gli aggiornamenti delle impostazioni del progetto. Convertilo in JSON Schema a runtime:

```ts theme={null}
import { RestUpdateProjectSettingsRequestSchema } from "@youka/sdk";

const schema = RestUpdateProjectSettingsRequestSchema.toJSONSchema();
```

<Tip>
  Gli agenti dovrebbero recuperare lo schema dell’SDK o lo schema di richiesta OpenAPI prima
  di modificare le impostazioni del progetto, così da conoscere sempre la forma aggiornata.
</Tip>

Riferimento leggibile:

* [Render settings reference](/en/render-settings-reference)
* [CLI projects](/it/cli/projects)
* [SDK project settings](/it/sdk/project-settings)

## Impostazioni del progetto vs preset vs override di export

Youka ha tre livelli in cui possono vivere le render settings:

| Layer                         | Scope                | When to use                                          |
| ----------------------------- | -------------------- | ---------------------------------------------------- |
| **Preset**                    | A livello di account | Lo stesso aspetto su molti progetti.                 |
| **Project settings**          | Un progetto          | Trim, sfondo o colore specifici del progetto.        |
| **Export `settingsOverride`** | Un solo export       | Ritocca un singolo render senza toccare il progetto. |

Ogni livello viene unito in quell’ordine al momento dell’export.

## Cosa c’è dopo

* [Render settings reference](/en/render-settings-reference) — tutti i percorsi dei campi condivisi e i valori enum
* [Presets](/it/api/presets) — configurazioni riutilizzabili
* [Media](/it/api/media) — referenziati dalle impostazioni
* [CLI projects](/it/cli/projects) — lo stesso flusso dal terminale
* [SDK project settings](/it/sdk/project-settings) — gli stessi endpoint in TypeScript
