# General Translation Platform: setConfig URL: https://generaltranslation.com/it/docs/platform/core/reference/gt-class/set-config.mdx --- title: setConfig description: Aggiorna la configurazione di un'istanza GT esistente. API Reference di setConfig. --- Aggiorna la configurazione di un'istanza [GT](/docs/platform/core/reference/gt-class/constructor) esistente. Usalo per modificare le credenziali API, le impostazioni regionali e altre impostazioni dopo la creazione dell'istanza con General Translation. ## Panoramica [#overview] Usa `setConfig` per modificare un'istanza in-place. I nuovi valori vengono combinati con la configurazione passata al costruttore e si applicano a ogni successiva chiamata di metodo. ```typescript const gt = new GT(); gt.setConfig({ apiKey: 'your-new-api-key', projectId: 'your-project-id', sourceLocale: 'en', targetLocale: 'es', }); ``` Firma: ```typescript setConfig(params: GTConstructorParams): void ``` *Nota: `setConfig` è sincrona, restituisce `void` e aggiorna l'istanza in-place.* ## Come funziona [#how-it-works] * **Standardizzazione dell'impostazione regionale, poi validazione.** Ogni codice locale fornito (`sourceLocale`, `targetLocale` e ogni voce in `locales`) viene prima standardizzato nella sua forma canonica BCP 47, quindi validato. I **valori memorizzati sono nelle forme standardizzate/normalizzate**, non le stringhe originali che hai passato. `setConfig` solleva un errore per i codici non validi. * **La mappatura personalizzata si applica a `sourceLocale`/`targetLocale`, ma non a `locales`.** `sourceLocale` e `targetLocale` vengono validati **con** `customMapping`, quindi per entrambi è accettato un alias personalizzato. Ogni voce di `locales` viene validata **senza** la mappatura, quindi un alias di `customMapping` viene rifiutato se compare all'interno di `locales`. * **Merge della configurazione.** I nuovi valori vengono uniti alla configurazione passata al costruttore. `customMapping`, tuttavia, sostituisce completamente qualsiasi mappatura esistente invece di essere unita. * **Nessuna rilettura dell'ambiente.** Le variabili d'ambiente (`GT_API_KEY`, `GT_DEV_API_KEY`, `GT_PROJECT_ID`) non vengono lette di nuovo quando chiami `setConfig`. * **Non atomico.** Se la validazione fallisce a metà processo (ad esempio, sulla seconda impostazione regionale), le proprietà precedenti potrebbero essere già state impostate. ## Parametri [#parameters] `setConfig` accetta un oggetto [`GTConstructorParams`](/docs/platform/core/reference/types/gt-constructor-params) obbligatorio con le stesse proprietà del [costruttore](/docs/platform/core/reference/gt-class/constructor): | Parametro | Descrizione | Tipo | Facoltativo | Predefinito | | ---------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | ----------- | ----------- | | [`apiKey`](#api-key) | Chiave API di produzione per il servizio di traduzione. | `string` | Sì | — | | [`devApiKey`](#dev-api-key) | Chiave API di sviluppo. | `string` | Sì | — | | [`projectId`](#project-id) | identificatore del progetto univoco. | `string` | Sì | — | | [`sourceLocale`](#source-locale) | Impostazione regionale sorgente predefinita per le traduzioni. | `string` | Sì | — | | [`targetLocale`](#target-locale) | Impostazione regionale di destinazione predefinita per le traduzioni. | `string` | Sì | — | | [`locales`](#locales) | Codici locale supportati. | `string[]` | Sì | — | | [`baseUrl`](#base-url) | URL di base API personalizzato. | `string` | Sì | — | | [`customMapping`](#custom-mapping) | Mapping personalizzati dei codici locale e override delle proprietà. | [`CustomMapping`](/docs/platform/core/reference/types/custom-mapping) | Sì | — | L'oggetto `params` è obbligatorio, ma tutte le sue proprietà sono facoltative: passa solo le impostazioni che vuoi modificare. ### `apiKey` [#api-key] **Tipo** `string` · **Facoltativo** Chiave API di produzione per il servizio di traduzione. ### `devApiKey` [#dev-api-key] **Tipo** `string` · **Facoltativo** Chiave API di sviluppo. In fase di sviluppo, ha la precedenza su `apiKey`. ### `projectId` [#project-id] **Tipo** `string` · **Facoltativo** Identificatore univoco del progetto. ### `sourceLocale` [#source-locale] **Tipo** `string` · **Facoltativo** Impostazione regionale sorgente predefinita per le traduzioni. Viene normalizzata nella sua forma canonica e memorizzata in tale forma, quindi validata **insieme a** eventuali `customMapping` (perciò qui è accettato anche un alias personalizzato). ### `targetLocale` [#target-locale] **Type** `string` · **Facoltativo** Impostazione regionale di destinazione predefinita per le traduzioni. Viene standardizzata nella sua forma canonica e memorizzata in tale forma normalizzata, quindi validata **rispetto a** eventuali `customMapping` (quindi qui è accettato anche un alias personalizzato). ### `locales` [#locales] **Tipo** `string[]` · **Facoltativo** Un array di codici locale supportati. Ogni codice viene standardizzato nella sua forma canonica e memorizzato in tale forma normalizzata, quindi validato **senza** `customMapping` — perciò un alias di `customMapping` valido per `sourceLocale`/`targetLocale` viene rifiutato se compare all'interno di `locales`. ### `baseUrl` [#base-url] **Tipo** `string` · **Facoltativo** URL base personalizzato dell'API. ### `customMapping` [#custom-mapping] **Tipo** [`CustomMapping`](/docs/platform/core/reference/types/custom-mapping) · **Facoltativo** Mappature personalizzate dei codici locale e sovrascritture delle proprietà. A differenza delle altre impostazioni, un nuovo `customMapping` sostituisce completamente la mappatura esistente invece di unirsi a essa. ## Valore restituito [#returns] **Tipo** `void` Il metodo aggiorna in-place la configurazione dell'istanza e non restituisce alcun valore. ## Esempi [#examples] ```typescript const gt = new GT({ sourceLocale: 'en', targetLocale: 'es', }); // Cambia l'impostazione regionale di destinazione dallo spagnolo al francese gt.setConfig({ targetLocale: 'fr', }); ``` ## Note [#notes] * Le modifiche alla configurazione hanno effetto immediato sulle chiamate ai metodi successive. * Ogni codice locale viene standardizzato nella sua forma canonica prima di essere memorizzato (il valore memorizzato è la forma normalizzata), quindi viene validato. * `sourceLocale` e `targetLocale` vengono validati con `customMapping`; ogni voce di `locales` viene validata senza usarlo. * Le variabili d'ambiente non vengono rilette quando si chiama `setConfig`. * I mapping personalizzati sostituiscono completamente i mapping esistenti (non vengono combinati). * L'aggiornamento **non è atomico** — se la convalida fallisce a metà processo, le proprietà precedenti potrebbero essere già state impostate. * Il metodo è sincrono e restituisce `void`.