GT ClassMethodsTranslation

setupProject

API reference for the setupProject method to initialize translation project setup

Overview

The setupProject method initializes the setup process for a translation project using previously uploaded files. This creates an asynchronous setup job that analyzes the files and prepares them for translation workflows.

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

const setupResult = await gt.setupProject(fileRefs, { timeout: 30000 });
console.log(`Setup job created: ${setupResult.jobId}`);

You must have previously uploaded the files using uploadSourceFiles before calling setupProject.

Reference

Parameters

NameTypeDescription
filesFileReference[]Array of file references from previously uploaded source files
options?SetupProjectOptionsOptional settings for the setup job

FileReference Structure

type FileReference = {
  fileId: string;
  versionId: string;
  branchId: string;
  fileName: string;
  fileFormat?: FileFormat;
  dataFormat?: DataFormat;
}

SetupProjectOptions

NameTypeDescription
locales?string[]Optional array of target locales
timeout?numberOptional timeout in milliseconds for the API request

Returns

Promise<SetupProjectResult> - Contains the setup job identifier and initial status.

type SetupProjectResult = {
  jobId: string;
  status: 'queued';
}
PropertyTypeDescription
jobIdstringUnique identifier for the setup job
status'queued'Initial status of the setup job

Examples

Basic usage

Initialize project setup with uploaded files:

index.ts
import { GT } from 'generaltranslation';

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

// File references from previous upload
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}`);

// Monitor job status
const jobStatus = await gt.checkJobStatus([setupResult.jobId]);
console.log(`Job status: ${jobStatus.jobs[0].status}`);

Notes

  • Files must be uploaded using uploadSourceFiles before calling setupProject
  • Project setup analyzes file content and structure to optimize translation workflows
  • The setup job runs asynchronously - monitor progress with checkJobStatus
  • Setup is typically required before enqueueing translation jobs for new projects
  • File references include branchId for proper versioning with branching support

Next steps

How is this guide?