# generaltranslation: General Translation Core SDK: checkJobStatus URL: https://generaltranslation.com/ru/docs/core/class/methods/translation/check-job-status.mdx --- title: checkJobStatus description: Справка по API для метода checkJobStatus, который используется для отслеживания хода выполнения задачи --- ## Обзор Метод `checkJobStatus` проверяет текущий статус одной или нескольких задач проекта по их уникальным идентификаторам. Этот метод используется для отслеживания выполнения асинхронных операций, запущенных с помощью [`setupProject`](/docs/core/class/methods/translation/setup-project) или [`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}`)); ``` Чтобы проверить статус задачи Setup, сначала нужно вызвать оба метода: [`uploadSourceFiles`](/docs/core/class/methods/translation/upload-source-files) и [`setupProject`](/docs/core/class/methods/translation/setup-project). ## Справочник ### Параметры | Имя | Тип | Описание | | ------------ | ---------- | ----------------------------------------------------- | | `jobIds` | `string[]` | Массив уникальных идентификаторов задач для проверки | | `timeoutMs?` | `number` | Необязательный тайм-аут API-запроса в миллисекундах | ### Возвращает `Promise` — массив объектов со статусами задач. ```typescript type CheckJobStatusResult = { jobId: string; status: JobStatus; error?: { message: string }; }[]; ``` Каждый элемент массива содержит: | Свойство | Тип | Описание | | -------- | --------------------- | ---------------------------------------------- | | `jobId` | `string` | Идентификатор проверенной задачи | | `status` | `JobStatus` | Текущий статус задачи | | `error?` | `{ message: string }` | Информация об ошибке, если статус — `'failed'` | #### JobStatus ```typescript type JobStatus = 'queued' | 'processing' | 'completed' | 'failed' | 'unknown'; ``` * `'queued'` - Задача ожидает обработки * `'processing'` - Задача выполняется * `'completed'` - Задача успешно завершена * `'failed'` - При выполнении задачи произошла ошибка, и она завершилась сбоем * `'unknown'` - Не удалось определить статус задачи *** ## Пример ### Базовая проверка статуса ```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]); ``` *** ## Примечания * Setup автоматически запускается, если отсутствуют элементы контекста. * Setup отвечает за анализ корпуса, генерацию контекста, глоссария и т. д. * Идентификаторы задач возвращаются методами [`setupProject`](/docs/core/class/methods/translation/setup-project) и [`enqueueFiles`](/docs/core/class/methods/translation/enqueue-files); их следует сохранять для проверки статуса * Для эффективности можно проверять несколько задач одним вызовом ## Следующие шаги * См. [`awaitJobs`](/docs/core/class/methods/translation/await-jobs), чтобы использовать автоматический опрос вместо ручной проверки статуса * См. [`setupProject`](/docs/core/class/methods/translation/setup-project), чтобы запустить задачи Setup * См. [`enqueueFiles`](/docs/core/class/methods/translation/enqueue-files), чтобы продолжить работу после завершения Setup * См. [`getProjectData`](/docs/core/class/methods/translation/get-project-data), чтобы получить информацию о проекте