# generaltranslation: General Translation Core SDK: checkJobStatus URL: https://generaltranslation.com/it/docs/core/class/methods/translation/check-job-status.mdx --- title: checkJobStatus description: Riferimento API del metodo checkJobStatus per monitorare lo stato di avanzamento del job --- ## Panoramica Il metodo `checkJobStatus` verifica lo stato attuale di uno o più job del progetto in base ai rispettivi ID univoci. Questo metodo viene utilizzato per monitorare l'avanzamento delle operazioni asincrone avviate da [`setupProject`](/docs/core/class/methods/translation/setup-project) o [`enqueueFiles`](/docs/core/class/methods/translation/enqueue-files). ```typescript const gt = new GT({ projectId: 'your-project-id', apiKey: 'your-api-key' }); const statuses = await gt.checkJobStatus(['job-123', 'job-456']); statuses.forEach(job => console.log(`${job.jobId}: ${job.status}`)); ``` Per verificare lo stato di un job di setup, devi prima chiamare sia [`uploadSourceFiles`](/docs/core/class/methods/translation/upload-source-files) sia [`setupProject`](/docs/core/class/methods/translation/setup-project). ## Riferimento ### Parametri | Nome | Tipo | Descrizione | | ------------ | ---------- | ---------------------------------------------------------- | | `jobIds` | `string[]` | Array di identificatori univoci dei job da verificare | | `timeoutMs?` | `number` | Timeout facoltativo, in millisecondi, per la richiesta API | ### Restituisce `Promise` - Un array semplice di oggetti con lo stato del job. ```typescript type CheckJobStatusResult = { jobId: string; status: JobStatus; error?: { message: string }; }[]; ``` Ogni elemento dell'array contiene: | Proprietà | Tipo | Descrizione | | --------- | --------------------- | ----------------------------------------------------- | | `jobId` | `string` | L'ID del job controllato | | `status` | `JobStatus` | Stato attuale del job | | `error?` | `{ message: string }` | Informazioni sull'errore se lo stato è `'failed'` | #### JobStatus ```typescript type JobStatus = 'queued' | 'processing' | 'completed' | 'failed' | 'unknown'; ``` * `'queued'` - Il job è in attesa di essere elaborato * `'processing'` - Il job è attualmente in esecuzione * `'completed'` - Il job è stato completato con successo * `'failed'` - Il job ha riscontrato un errore e non è andato a buon fine * `'unknown'` - Non è stato possibile determinare lo stato del job *** ## Esempio ### Verifica di base dello stato ```typescript copy import { GT } from 'generaltranslation'; const gt = new GT({ projectId: 'your-project-id', apiKey: 'your-api-key' }); 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); async function pollJobStatus(jobIds: string[]) { const status = await gt.checkJobStatus(jobIds); status.forEach(job => { console.log(`Job ${job.jobId}:`); console.log(` Status: ${job.status}`); if (job.error) { console.log(` Error: ${job.error.message}`); } }); return status; } const jobStatus = await pollJobStatus([setupResult.jobId]); ``` *** ## Note * Setup viene eseguito automaticamente quando mancano elementi di context. * Setup si occupa dell'analisi del corpus, della generazione del context, della generazione del glossario, ecc. * Gli ID dei job vengono restituiti da [`setupProject`](/docs/core/class/methods/translation/setup-project) o [`enqueueFiles`](/docs/core/class/methods/translation/enqueue-files) e devono essere salvati per verificarne lo stato * Puoi controllare più job con una sola chiamata, per maggiore efficienza ## Passaggi successivi * Vedi [`awaitJobs`](/docs/core/class/methods/translation/await-jobs) per usare il polling automatico invece dei controlli manuali dello stato * Vedi [`setupProject`](/docs/core/class/methods/translation/setup-project) per avviare i job di setup * Vedi [`enqueueFiles`](/docs/core/class/methods/translation/enqueue-files) per procedere dopo il completamento del setup * Vedi [`getProjectData`](/docs/core/class/methods/translation/get-project-data) per informazioni sul progetto