# gt: General Translation CLI tool: gt api
URL: https://generaltranslation.com/ja/docs/cli/reference/commands/api.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: 認証付きの raw リクエストを送信するか、同梱の General Translation API のコントラクトを確認します。gt api コマンドの API リファレンスです。

プロジェクトに HTTP クライアントを追加することなく endpoint へ直接アクセスしたい場合は `gt api` を使用します。また、OpenAPI 仕様全体を読み込まずに、同梱の API 操作を一覧表示したり、特定の操作のコントラクトだけを出力したりすることもできます。

## 概要 [#overview]

```bash
npx gt api [endpoint] [options]
```

リクエストを送信するには、`/v2/project/info/PROJECT_ID` のようなendpointのパスを渡します。利用可能な操作を確認するには、endpointを指定せずに `--list` を使用します。また、より範囲を絞ったコントラクトを確認するには、`--spec` とともに操作 ID、仕様のパス、または具体的なリクエストパスを渡します。

## 動作の仕組み [#how-it-works]

* `--api-key` または `GT_API_KEY` で明示的に指定されたキーを使用し、指定がない場合は保存済みのログイン情報を使用します ([認証の優先順位](/docs/cli/guides/configuring#credentials)を参照してください) 。
* `--project-id`、`gt.config.json`、または `GT_PROJECT_ID` から プロジェクト ID を解決します。
* 設定された `baseUrl` (デフォルトは `https://api.gtx.dev`) にリクエストを送信します。
* ネットワーク障害や HTTP 429/5xx レスポンスを再試行せず、raw なレスポンス body をそのまま標準出力に書き込みます。
* 2xx 以外のレスポンスの場合は、標準エラー出力に概要を書き込み、status 1 で終了します。

`gt.config.json` が指定する プロジェクト ID が `--project-id` や環境変数と異なる場合、コマンドはリクエストを送信せずに停止します。フラグと環境変数だけが異なる ID を指定している場合は、フラグが優先されます。

`--list` は、同梱されている各操作について、メソッド、パス、操作 ID、概要をタブ区切りで 1 行ずつ出力します。endpoint を指定した場合、`--spec` はまず操作 ID で検索し、次に仕様上のパスとの完全一致、最後にパスパラメータと照合した具体的なリクエストパスの順で検索します。フィルタリング後の出力ではスキーマ参照が解決され、参照先のコンポーネントとセキュリティスキームも保持されます。再帰的なスキーマ参照は `$ref` 値のまま残ります。

## フラグ [#flags]

| パラメータ                   | 説明                                                                     | Type      | 任意 | Default                   |
| ----------------------- | ---------------------------------------------------------------------- | --------- | -- | ------------------------- |
| `-X, --method <method>` | HTTP メソッド: `GET`、`HEAD`、`POST`、`PUT`、`PATCH`、`DELETE`、`OPTIONS` のいずれか。 | `string`  | はい | `GET`                     |
| `--input <file>`        | request bodyをファイルから読み込みます。`-` を指定した場合は標準入力から読み込みます。                    | `string`  | はい | —                         |
| `-H, --header <header>` | `Key: Value` 形式のリクエストヘッダーを追加します。複数指定する場合は繰り返し指定します。                    | `string`  | はい | —                         |
| `-i, --include`         | bodyの前にレスポンスのステータスとヘッダーを出力します。                                         | `boolean` | はい | `false`                   |
| `--spec`                | バンドルされた OpenAPI 3.1 仕様を出力します。endpointが指定された場合は、そのendpointに絞り込んで出力します。    | `boolean` | はい | `false`                   |
| `--list`                | バンドルされたすべての API 操作について、メソッド、パス、操作 ID、概要の各フィールドをタブ区切りで出力します。            | `boolean` | はい | `false`                   |
| `-c, --config <path>`   | `gt.config.json` へのパス。`.json` の拡張子は省略できます。                             | `string`  | はい | 自動解決                      |
| `--api-key <key>`       | ツール用キーを明示的に指定して上書き。                                                    | `string`  | はい | `GT_API_KEY`、なければログイン情報   |
| `--project-id <id>`     | プロジェクト ID の上書き。                                                        | `string`  | はい | 設定ファイルまたは `GT_PROJECT_ID` |

`--list` と `--spec` はオフラインで動作し、ログイン、API キー、プロジェクト ID、有効な翻訳設定は不要です。この 2 つを併用することはできません。絞り込んだ仕様の参照がどの操作にも一致しない場合、コマンドは終了ステータス 1 で終了し、`--list` の使用を提案します。

## 例 [#examples]

```bash
# インストール済みの CLI dependencies に同梱されている API スナップショット を保存する
npx gt api --spec > openapi.json

# 同梱されている操作の一覧を表示する
npx gt api --list

# 操作 ID または具体的なリクエストパスを指定して、1 つの操作を出力する
npx gt api --spec getProjectInfo
npx gt api --spec /v2/project/info/PROJECT_ID

# 保存済みのログイン情報または明示的に指定したキーを使ってプロジェクト情報を取得する
npx gt api /v2/project/info/PROJECT_ID

# JSON の request body を送信し、レスポンスのメタデータも出力する
npx gt api /v2/project/info/PROJECT_ID \
  --method POST \
  --header "Content-Type: application/json" \
  --input update.json \
  --include

# 標準入力から body を読み込む
printf '{"defaultLocale":"fr"}' |
  npx gt api /v2/project/info/PROJECT_ID \
    --method POST \
    --header "Content-Type: application/json" \
    --input -
```

## その他のメモ [#notes]

* `--spec` はインストール済みのスナップショットを出力するもので、ホストされている最新の仕様を取得するわけではありません。
* パスで参照すると、一致した仕様パスに定義されているすべてのメソッドが出力されます。`--method` フラグを指定しても、仕様の出力は絞り込まれません。
* このコマンドは CLI のファイル設定およびロケール設定の検証をスキップするため、翻訳設定が不正な場合でも raw な API リクエストがブロックされることはありません。
* endpointのパス、権限、リクエストのフィールド、レスポンスのスキーマについては、[OpenAPI リファレンス](/docs/platform/openapi/overview) を参照してください。

### バージョン履歴

| バージョン    | 変更内容                                                       |
| -------- | ---------------------------------------------------------- |
| `2.25.0` | `--list` と、特定のendpointに絞って出力する `--spec <endpoint>` を追加しました。 |
| `2.20.0` | raw リクエストと仕様全体の出力に対応した `gt api` を追加しました。                   |

## Sitemap

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