# generaltranslation: General Translation Core SDK: setupProject
URL: https://generaltranslation.com/fr/docs/core/class/methods/translation/setup-project.mdx
---
title: setupProject
description: Référence d’API de la méthode setupProject permettant d’initialiser la configuration du projet de traduction
---
## Vue d’ensemble
La méthode `setupProject` lance le processus de configuration d’un projet de traduction à partir de fichiers déjà téléversés.
Cela crée une tâche de configuration asynchrone qui analyse les fichiers et les prépare aux flux de traduction.
```typescript
const gt = new GT({ projectId: 'your-project-id', apiKey: 'your-api-key' });
const setupResult = await gt.setupProject(fileRefs, { timeout: 30000 });
console.log(`Tâche de configuration créée : ${setupResult.jobId}`);
```
Vous devez avoir téléversé les fichiers au préalable à l’aide de [`uploadSourceFiles`](/docs/core/class/methods/translation/upload-source-files) avant d’appeler `setupProject`.
## Référence
### Paramètres
| Nom | Type | Description |
| ---------- | --------------------- | ---------------------------------------------------------------------- |
| `files` | `FileReference[]` | Tableau de références vers des fichiers source précédemment téléversés |
| `options?` | `SetupProjectOptions` | Paramètres facultatifs pour la tâche de configuration |
#### Structure FileReference
```typescript
type FileReference = {
fileId: string;
versionId: string;
branchId: string;
fileName: string;
fileFormat?: FileFormat;
dataFormat?: DataFormat;
}
```
#### SetupProjectOptions
| Nom | Type | Description |
| ---------- | ---------- | -------------------------------------------------------------------- |
| `locales?` | `string[]` | Tableau facultatif des paramètres régionaux cibles |
| `timeout?` | `number` | Délai d’expiration facultatif, en millisecondes, pour la requête API |
### Valeur de retour
`Promise` - Contient l’identifiant de la tâche de configuration et son statut initial.
```typescript
type SetupProjectResult = {
jobId: string;
status: 'queued';
}
```
| Propriété | Type | Description |
| --------- | ---------- | ----------------------------------------------- |
| `jobId` | `string` | Identifiant unique de la tâche de configuration |
| `status` | `'queued'` | Statut initial de la tâche de configuration |
***
## Exemples
### Utilisation de base
Initialisez la configuration du projet à partir des fichiers importés :
```typescript title="index.ts" copy
import { GT } from 'generaltranslation';
const gt = new GT({
projectId: 'your-project-id',
apiKey: 'your-api-key'
});
// Références de fichiers issues de l'upload précédent
const fileRefs = [
{
fileId: 'file-123',
versionId: 'version-456',
branchId: 'branch-789',
fileName: 'app.json',
fileFormat: 'JSON'
},
{
fileId: 'file-789',
versionId: 'version-012',
branchId: 'branch-789',
fileName: 'content.md',
fileFormat: 'MD'
}
];
const setupResult = await gt.setupProject(fileRefs);
console.log(`Setup initiated with job ID: ${setupResult.jobId}`);
// Surveiller le statut du job
const jobStatus = await gt.checkJobStatus([setupResult.jobId]);
console.log(`Job status: ${jobStatus.jobs[0].status}`);
```
***
## Remarques
* Les fichiers doivent être envoyés à l’aide de [`uploadSourceFiles`](/docs/core/class/methods/translation/upload-source-files) avant d’appeler `setupProject`
* La configuration du projet analyse le contenu et la structure des fichiers afin d’optimiser les flux de traduction
* La tâche de configuration s’exécute de manière asynchrone - surveillez sa progression avec [`checkJobStatus`](/docs/core/class/methods/translation/check-job-status)
* La configuration est généralement requise avant de mettre en file d’attente des tâches de traduction pour les nouveaux projets
* Les références de fichiers incluent `branchId` pour garantir un versionnage correct avec la prise en charge des branches
## Étapes suivantes
* Consultez [`uploadSourceFiles`](/docs/core/class/methods/translation/upload-source-files) pour téléverser des fichiers avant la configuration
* Consultez [`checkJobStatus`](/docs/core/class/methods/translation/check-job-status) pour suivre l’avancement de la configuration
* Consultez [`enqueueFiles`](/docs/core/class/methods/translation/enqueue-files) pour lancer les traductions après la configuration