# generaltranslation: General Translation Core SDK: checkJobStatus
URL: https://generaltranslation.com/ja/docs/core/class/methods/translation/check-job-status.mdx
---
title: checkJobStatus
description: ジョブの進行状況を監視する checkJobStatus メソッドの API リファレンス
---
## 概要
`checkJobStatus` メソッドは、1 つ以上のプロジェクトジョブについて、一意の識別子に基づいて現在のステータスを確認します。
このメソッドは、[`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}`));
```
セットアップジョブのステータスを確認するには、事前に [`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 };
}[];
```
配列の各要素には次のプロパティが含まれます。
| Property | Type | Description |
| -------- | --------------------- | ------------------------- |
| `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]);
```
***
## 注意事項
* コンテキストの要素が不足している場合、セットアップは自動的に実行されます。
* セットアップでは、コーパス分析、コンテキスト生成、用語集生成などを行います。
* ジョブ ID は [`setupProject`](/docs/core/class/methods/translation/setup-project) または [`enqueueFiles`](/docs/core/class/methods/translation/enqueue-files) から返されるため、ステータス確認用に保存しておく必要があります
* 効率化のため、1 回の呼び出しで複数のジョブを確認できます
## 次のステップ
* 手動でステータスを確認する代わりに自動でポーリングするには、[`awaitJobs`](/docs/core/class/methods/translation/await-jobs)を参照してください
* セットアップ ジョブを開始するには、[`setupProject`](/docs/core/class/methods/translation/setup-project)を参照してください
* セットアップ完了後に処理を進めるには、[`enqueueFiles`](/docs/core/class/methods/translation/enqueue-files)を参照してください
* プロジェクト情報については、[`getProjectData`](/docs/core/class/methods/translation/get-project-data)を参照してください