# General Translation Platform: setConfig URL: https://generaltranslation.com/fr/docs/platform/core/reference/gt-class/set-config.mdx --- title: setConfig description: Met à jour la configuration d'une instance GT existante. Référence de l'API pour setConfig. --- Met à jour la configuration d'une instance [GT](/docs/platform/core/reference/gt-class/constructor) existante. Utilisez cette méthode pour modifier les identifiants d'API, les locales et d'autres paramètres après la création de l'instance avec General Translation. ## Vue d’ensemble [#overview] Appelez `setConfig` pour modifier une instance sur place. Les nouvelles valeurs sont fusionnées avec la configuration fournie au constructeur et s’appliquent à tous les appels de méthode ultérieurs. ```typescript const gt = new GT(); gt.setConfig({ apiKey: 'your-new-api-key', projectId: 'your-project-id', sourceLocale: 'en', targetLocale: 'es', }); ``` Signature : ```typescript setConfig(params: GTConstructorParams): void ``` *Remarque : `setConfig` est synchrone et renvoie `void` ; il modifie l’instance sur place.* ## Fonctionnement [#how-it-works] * **Standardisation puis validation des codes de langue.** Chaque code de langue fourni (`sourceLocale`, `targetLocale` et chaque entrée de `locales`) est d’abord normalisé vers sa forme canonique BCP 47, puis validé. Les **valeurs stockées sont les formes standardisées/normalisées**, et non les chaînes brutes que vous avez fournies. `setConfig` lève une exception en cas de code invalide. * **`customMapping` s’applique à `sourceLocale`/`targetLocale`, mais pas à `locales`.** `sourceLocale` et `targetLocale` sont validés **avec** `customMapping`, donc un alias personnalisé est accepté pour ces valeurs. Chaque entrée de `locales` est validée **sans** ce mapping ; un alias de `customMapping` est donc rejeté s’il apparaît dans `locales`. * **Fusion de la configuration.** Les nouvelles valeurs sont fusionnées avec la configuration transmise au constructeur. En revanche, `customMapping` remplace entièrement tout mapping existant au lieu d’être fusionné. * **Aucune relecture de l’environnement.** Les variables d’environnement (`GT_API_KEY`, `GT_DEV_API_KEY`, `GT_PROJECT_ID`) ne sont pas relues lors de l’appel à `setConfig`. * **Non atomique.** Si la validation échoue en cours de route (par exemple, au deuxième code de langue), certaines propriétés précédentes peuvent déjà avoir été définies. ## Paramètres [#parameters] `setConfig` accepte un objet [`GTConstructorParams`](/docs/platform/core/reference/types/gt-constructor-params) obligatoire, avec les mêmes propriétés que le [constructeur](/docs/platform/core/reference/gt-class/constructor) : | Paramètre | Description | Type | Facultatif | Par défaut | | ---------------------------------- | -------------------------------------------------------------------------- | --------------------------------------------------------------------- | ---------- | ---------- | | [`apiKey`](#api-key) | Clé API de production pour le service de traduction. | `string` | Oui | — | | [`devApiKey`](#dev-api-key) | Clé API de développement. | `string` | Oui | — | | [`projectId`](#project-id) | Identifiant unique du projet. | `string` | Oui | — | | [`sourceLocale`](#source-locale) | Paramètre régional source par défaut pour les traductions. | `string` | Oui | — | | [`targetLocale`](#target-locale) | Paramètre régional cible par défaut pour les traductions. | `string` | Oui | — | | [`locales`](#locales) | Codes de langue pris en charge. | `string[]` | Oui | — | | [`baseUrl`](#base-url) | URL de base de l’API personnalisée. | `string` | Oui | — | | [`customMapping`](#custom-mapping) | Mappings personnalisés des codes de langue et remplacements de propriétés. | [`CustomMapping`](/docs/platform/core/reference/types/custom-mapping) | Oui | — | L’objet `params` est lui-même requis, mais toutes ses propriétés sont facultatives — ne fournissez que les paramètres que vous souhaitez modifier. ### `apiKey` [#api-key] **Type** `string` · **Facultatif** Clé API de production pour le service de traduction. ### `devApiKey` [#dev-api-key] **Type** `string` · **Facultatif** Clé API de développement. Prend le pas sur `apiKey` en développement. ### `projectId` [#project-id] **Type** `string` · **Facultatif** Identifiant unique du projet. ### `sourceLocale` [#source-locale] **Type** `string` · **Facultatif** Paramètre régional source par défaut des traductions. Il est normalisé dans sa forme canonique et stocké sous cette forme, puis validé **avec** tout `customMapping` (un alias personnalisé est donc accepté ici). ### `targetLocale` [#target-locale] **Type** `string` · **Facultatif** Paramètre régional cible par défaut pour les traductions. Standardisé sous sa forme canonique et stocké sous cette forme normalisée, puis validé **en tenant compte de** tout `customMapping` (de sorte qu’un alias personnalisé soit accepté ici). ### `locales` [#locales] **Type** `string[]` · **Facultatif** Tableau des codes de langue pris en charge. Chaque code est normalisé vers sa forme canonique et stocké sous cette forme, puis validé **sans** tenir compte du `customMapping` — ainsi, un alias défini dans `customMapping` et valide pour `sourceLocale`/`targetLocale` est rejeté s’il apparaît dans `locales`. ### `baseUrl` [#base-url] **Type** `string` · **Facultatif** URL de base personnalisée pour l’API. ### `customMapping` [#custom-mapping] **Type** [`CustomMapping`](/docs/platform/core/reference/types/custom-mapping) · **Facultatif** Mappings personnalisés des codes de langue et remplacements de propriétés. Contrairement aux autres paramètres, un nouveau `customMapping` remplace entièrement le mapping existant au lieu de le fusionner. ## Renvoie [#returns] **Type** `void` La méthode met à jour la configuration de l’instance sur place et ne renvoie rien. ## Exemples [#examples] ```typescript const gt = new GT({ sourceLocale: 'en', targetLocale: 'es', }); // Changer le paramètre régional cible de l'espagnol vers le français gt.setConfig({ targetLocale: 'fr', }); ``` ## Notes [#notes] * Les modifications de configuration prennent effet immédiatement pour les appels de méthode suivants. * Chaque code de langue est standardisé sous sa forme canonique avant d’être stocké (la valeur stockée est la forme normalisée), puis validé. * `sourceLocale` et `targetLocale` sont validés avec `customMapping` ; chaque entrée de `locales` est validée sans celui-ci. * Les variables d’environnement ne sont pas relues lors de l’appel à `setConfig`. * Les custom mappings remplacent entièrement les mappings existants (ils ne sont pas fusionnés). * La mise à jour n’est **pas atomique** — si la validation échoue en cours de processus, certaines propriétés précédentes peuvent déjà avoir été définies. * La méthode est synchrone et renvoie `void`.