# General Translation Platform: downloadFile
URL: https://generaltranslation.com/fr/docs/platform/core/reference/gt-class-methods/translation/download-file.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Télécharge un fichier traduit une fois la traduction terminée. Référence de l’API pour downloadFile.

Télécharge le contenu d’un fichier unique sous forme de chaîne UTF-8 avec General Translation. Selon que vous fournissiez ou non un paramètre régional, renvoie soit le fichier source, soit la traduction correspondante.

## Vue d’ensemble [#overview]

Appelez `downloadFile` avec un descripteur de fichier. Ajoutez un `paramètre régional` pour télécharger une traduction, ou omettez-le pour télécharger le fichier source.

```typescript
const gt = new GT({ projectId: 'your-project-id', apiKey: 'your-api-key' });

// Télécharger une traduction
const translatedContent = await gt.downloadFile({
  fileId: 'file-123',
  branchId: 'branch-456',
  locale: 'es',
  versionId: 'version-789',
});

// Télécharger le fichier source (aucun paramètre régional spécifié)
const sourceContent = await gt.downloadFile({
  fileId: 'file-123',
  branchId: 'branch-456',
});
```

Signature :

```typescript
downloadFile(
  file: {
    fileId: string;
    branchId?: string;
    locale?: string;
    versionId?: string;
    useLatestAvailableVersion?: boolean;
  },
  options?: DownloadFileOptions
): Promise<string>
```

*Remarque : `downloadFile` nécessite une `apiKey` (ou `devApiKey`) ainsi que `projectId` sur l’instance GT. Pour télécharger des traductions, cela ne fonctionne qu’avec des traductions terminées ; vérifiez d’abord l’état avec [`queryFileData`](/docs/platform/core/reference/gt-class-methods/translation/query-file-data).*

## Fonctionnement [#how-it-works]

* **Fichier source ou traduction.** Lorsqu’un `paramètre régional` est fourni, le fichier doit disposer d’une traduction terminée pour le paramètre régional pris en charge résolu. Lorsqu’aucun `paramètre régional` n’est fourni, le fichier source est renvoyé.
* **Résolution de paramètre régional.** Le paramètre régional demandé est résolu en paramètre régional pris en charge utilisé pour le stockage. Par exemple, `ja-JP` est résolu en `ja` ; les paramètres régionaux pris en charge distincts, tels que `en-GB`, restent inchangés.
* **Format préservé.** La chaîne renvoyée est au même format que le fichier source d’origine ; pour les traductions, tout le texte traduisible est converti dans le paramètre régional cible.
* **Échec.** L’appel échoue si le fichier est introuvable.

## Paramètres [#parameters]

| Paramètre             | Description                                    | Type                  | Facultatif | Par défaut |
| --------------------- | ---------------------------------------------- | --------------------- | ---------- | ---------- |
| [`file`](#file)       | Informations sur le fichier à télécharger.     | `object`              | Non        | —          |
| [`options`](#options) | Configuration de la requête de téléchargement. | `DownloadFileOptions` | Oui        | —          |

### `file` [#file]

**Type** `object` · **Obligatoire**

Identifie le fichier à télécharger :

| Champ                       | Description                                                                                                             | Type      | Facultatif | Par défaut         |
| --------------------------- | ----------------------------------------------------------------------------------------------------------------------- | --------- | ---------- | ------------------ |
| `fileId`                    | Identifiant unique du fichier à télécharger.                                                                            | `string`  | Non        | —                  |
| `branchId`                  | Branche depuis laquelle effectuer le téléchargement.                                                                    | `string`  | Oui        | branche par défaut |
| `locale`                    | Paramètre régional cible de la traduction à télécharger. Omettez ce champ pour télécharger le fichier source.           | `string`  | Oui        | —                  |
| `versionId`                 | ID de version du fichier.                                                                                               | `string`  | Oui        | dernière version   |
| `useLatestAvailableVersion` | Si `true` et que le `versionId` spécifié est introuvable, utilise la dernière version disponible au lieu d&#39;échouer. | `boolean` | Oui        | `false`            |

### `options` [#options]

**Type** `DownloadFileOptions` · **Facultatif**

| Champ     | Description                                         | Type     | Facultatif |
| --------- | --------------------------------------------------- | -------- | ---------- |
| `timeout` | Délai d’expiration de la requête, en millisecondes. | `number` | Oui        |

## Renvoie [#returns]

**Type** `Promise<string>`

Se résout en contenu du fichier sous forme de chaîne UTF-8, dans le même format que le fichier source d’origine. Pour les traductions, tout le texte traduisible est converti dans le paramètre régional cible.

## Exemples [#examples]

```typescript title="index.ts"
// (1) Créer une instance GT
const targetLocales = ['es', 'fr', 'de'];
const gt = new GT({
  projectId: 'your-project-id',
  apiKey: 'your-api-key',
});

// (2) Téléverser le fichier
const fileUpload = {
  content: fileContents,
  fileName: filePath,
  fileFormat: 'JSON',
  locale: 'en',
};
const files = [{ source: fileUpload }];
const { uploadedFiles } = await gt.uploadSourceFiles(files, { sourceLocale: 'en' });

// (3) Mettre en file d'attente le job de traduction du fichier
const enqueueResult = await gt.enqueueFiles(uploadedFiles, {
  sourceLocale: 'en',
  targetLocales: targetLocales,
});

// (4) Attendre que toutes les traductions soient terminées
const { fileId, versionId, branchId } = uploadedFiles[0];
const result = await gt.awaitJobs(enqueueResult);

if (!result.complete) {
  console.error('Some jobs did not finish in time');
}

// (5) Télécharger un fichier unique
const spanishContent = await gt.downloadFile({
  fileId,
  branchId,
  locale: 'es',
});

console.log('Spanish translation:', spanishContent);
```

## Remarques [#notes]

* Récupère le fichier téléchargé sous forme de chaîne UTF-8.
* Lorsqu’un paramètre régional est fourni, le fichier doit disposer d’une traduction terminée pour son paramètre régional pris en charge résolu.
* Lorsqu’aucun paramètre régional n’est fourni, le fichier source est renvoyé.
* L’appel échoue si le fichier est introuvable.

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
