# General Translation Platform: checkJobStatus
URL: https://generaltranslation.com/ja/docs/platform/core/reference/gt-class-methods/translation/check-job-status.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: translation ジョブ または セットアップ ジョブ の現在のステータスを確認します。checkJobStatus の API リファレンス。

[`setupProject`](/docs/platform/core/reference/gt-class-methods/translation/setup-project) または [`enqueueFiles`](/docs/platform/core/reference/gt-class-methods/translation/enqueue-files) で開始した非同期処理を、ジョブのステータスをポーリングして監視します。

## 概要 [#overview]

`checkJobStatus` にジョブIDの配列を渡します。戻り値は、各ジョブに対応する `status` オブジェクト 1 つずつを含むフラットな配列です。

| 項目                         | 説明                            | 型                               | 任意  | デフォルト   |
| -------------------------- | ----------------------------- | ------------------------------- | --- | ------- |
| [`jobIds`](#job-ids)       | 確認対象の一意なジョブ識別子。               | `string[]`                      | いいえ | —       |
| [`timeoutMs`](#timeout-ms) | API リクエストのタイムアウト時間 (ミリ秒) 。    | `number`                        | はい  | `60000` |
| [戻り値](#returns)            | リクエストした各ジョブの `status` オブジェクト。 | `Promise<CheckJobStatusResult>` | —   | —       |

```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}`));
```

シグネチャ:

```typescript
checkJobStatus(
  jobIds: string[],
  timeoutMs?: number
): Promise<CheckJobStatusResult>
```

*注: `checkJobStatus` を使うには、GT インスタンスに `apiKey` (または `devApiKey`) と `projectId` が設定されている必要があります。セットアップ ジョブ を確認するには、まず [`uploadSourceFiles`](/docs/platform/core/reference/gt-class-methods/translation/upload-source-files) と [`setupProject`](/docs/platform/core/reference/gt-class-methods/translation/setup-project) の両方を呼び出してください。*

## 仕組み [#how-it-works]

* **バッチ確認。** 効率化のため、1 回の呼び出しで複数のジョブを確認できます。
* **ジョブの取得元。** ジョブ ID は [`setupProject`](/docs/platform/core/reference/gt-class-methods/translation/setup-project) または [`enqueueFiles`](/docs/platform/core/reference/gt-class-methods/translation/enqueue-files) から取得します。あとでステータスを確認できるよう、保存しておいてください。

[`enqueueFiles`](/docs/platform/core/reference/gt-class-methods/translation/enqueue-files) が返すtranslation ジョブについては、手動ポーリングの代わりに [`awaitJobs`](/docs/platform/core/reference/gt-class-methods/translation/await-jobs) を使用してください。セットアップ ジョブ ID のポーリングには `checkJobStatus` を使用します。

## パラメータ [#parameters]

| パラメータ                      | 説明                       | 型       | 任意  | デフォルト   |
| -------------------------- | ------------------------ | ---------- | --- | ------- |
| [`jobIds`](#job-ids)       | 確認対象の一意のジョブ識別子。          | `string[]` | いいえ | —       |
| [`timeoutMs`](#timeout-ms) | API リクエストのタイムアウト (ミリ秒) 。 | `number`   | はい  | `60000` |

### `jobIds` [#job-ids]

**型** `string[]` · **必須**

確認対象のジョブの一意な識別子。

### `timeoutMs` [#timeout-ms]

**型** `number` · **任意** · **デフォルト** `60000`

リクエストのタイムアウト時間 (ミリ秒) 。

## 戻り値 [#returns]

**型** `Promise<CheckJobStatusResult>`

ジョブのステータスオブジェクトからなるフラットな配列を返します:

```typescript
type CheckJobStatusResult = {
  jobId: string;
  status: JobStatus;
  error?: { message: string };
}[];
```

| プロパティ    | 説明                             | 型                         |
| -------- | ------------------------------ | ------------------------- |
| `jobId`  | 確認対象のジョブ識別子です。                 | `string`                  |
| `status` | ジョブの現在のステータスです。                | [`JobStatus`](#jobstatus) |
| `error`  | ステータスが `'failed'` の場合のエラー情報です。 | `{ message: string }`     |

### `JobStatus`

```typescript
type JobStatus = 'queued' | 'processing' | 'completed' | 'failed' | 'unknown';
```

* `'queued'` — ジョブは処理待ちです。
* `'processing'` — ジョブは現在実行中です。
* `'completed'` — ジョブは正常に完了しました。
* `'failed'` — ジョブでエラーが発生し、失敗しました。
* `'unknown'` — ジョブのステータスを特定できませんでした。

## 例 [#examples]

```typescript
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;
}

if (setupResult.status === 'queued') {
  const jobStatus = await pollJobStatus([setupResult.setupJobId]);
}
```

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
