HTTP リクエストビルダー

HTTP メソッド、URL、ヘッダー、本文を設定するか、OpenAPI 操作をインポートします。リクエストは cURL または Fetch として出力でき、CORS を許可している API へブラウザからそのまま送信することもできます。

リクエストの詳細はこのタブ内に保持されます。KivTools はプロキシを介しません。リクエストは「送信」を選択したときのみ送信され、ブラウザーの CORS ルールが引き続き適用されます。
リクエストビルダー

公開 API、またはこの Web サイトを CORS で明示的に許可している API を使用してください。資格情報は既定では省略され、リクエストが KivTools を経由することはありません。

1行に1つの「ヘッダー名: 値」ペアを記述してください。ブラウザーが制限するヘッダーは送信前に拒否されます。

OpenAPI 操作をインポート

ローカルの OpenAPI JSON/YAML ドキュメントを貼り付けるか選択してください。このツールは URL を取得せずに、パス、メソッド、サーバーのデフォルト、パラメーター、サンプルリクエスト本文を読み取ります。

ローカルの API 定義はまだ解析されていません。
生成されたリクエスト
Build a request to generate cURL.
Build a request to generate Fetch code.
レスポンス
リクエストはまだ送信されていません。

フルクライアントに移る前に、ブラウザで確認できる API リクエストを作成します。

このユーティリティはリクエストを作成し、明示的に入力した URL のみを呼び出します。CORS、ブラウザのセキュリティ制御、プライベートネットワークの制限、認証フローを回避することはできません。生成されたコードを確認し、安全なテスト用認証情報を使用してください。

HTTP リクエストを作成して送信する方法

このビルダーは、メソッド・URL・クエリパラメータ・ヘッダー・任意の Basic/Bearer 認証・本文をまとめて 1 つの HTTP リクエストに組み立て、cURL コマンドと Fetch スニペットとして出力します。対象の API がブラウザからの呼び出しを許可していれば、同じリクエストをこのタブから送信できます。

2 つ目のパネルは、貼り付けまたはファイル選択したローカルの OpenAPI 3.x/Swagger 2.0 ドキュメントを読み取り、その操作の 1 つでビルダーを埋めます。解析中にアップロードも URL の取得も行いません。

  1. メソッド(GET、POST、PUT、PATCH、DELETE、HEAD、OPTIONS)を選び、完全な URL を入力します。受け付けるのは http:// と https:// のみなので、スキームも含めて入力してください。
  2. クエリパラメータはキーと値の行、ヘッダーは「ヘッダー名: 値」を 1 行ずつ追加し、API が必要とする場合は認証方式を選びます。cURL と Fetch の欄は入力のたびに更新されます。
  3. 本文の種類(JSON、プレーンテキスト、フォーム URL エンコード)を選んで本文を入力します。JSON はリクエストを組み立てる前に検証され、GET と HEAD は常に本文を送りません。
  4. cURL または Fetch のコードをコピーし、リクエストまたは OpenAPI フラグメントをダウンロードするか、「リクエストを送信」でこのブラウザから API を呼び出します。

エクスポート・ヘッダー・制限

エクスポートの内容

cURL 欄は 1 つのコマンドです。curl -X にメソッド、クエリ文字列を含む URL、ヘッダーごとの -H、本文の --data-raw が続き、シェル用に単一引用符がエスケープされます。Fetch 欄は同じ内容の fetch() 呼び出しで、メソッド、headers オブジェクト、credentials: "omit"、文字列の本文を持ちます。

「リクエスト JSON をダウンロード」はメソッド・URL・ヘッダー・本文・本文の種類を kivtools-http-request.json として保存し、Authorization・Cookie・X-API-Key の値は [redacted] に置き換えます。「OpenAPI フラグメントをダウンロード」は、URL のオリジンをサーバーとし、クエリ文字列をクエリパラメータ、入力したヘッダーをヘッダーパラメータ、本文から推論した requestBody を持つ 1 つの操作を含む OpenAPI 3.0.3 ドキュメントを書き出します。認証を選んだ場合は bearer または basic のセキュリティスキームも付きます。

ヘッダーと本文

ヘッダー行は「ヘッダー名: 値」の形式で、名前は HTTP トークンとして有効な文字でなければなりません。ブラウザーが制御する名前 — Host、Origin、Referer、Cookie、Content-Length、Connection、Accept-Encoding、DNT、Date、Expect、Keep-Alive、TE、Trailer、Transfer-Encoding、Upgrade、Via、および Access-Control-Request-* — はリクエストを組み立てる前に拒否され、どの名前が拒否されたかをメッセージで示します。

Content-Type は未入力の場合にのみ補われます。JSON なら application/json、プレーンテキストなら text/plain;charset=utf-8、フォームなら application/x-www-form-urlencoded;charset=UTF-8 です。クエリの値はパーセントエンコードされ、値を空にしたキーは空のパラメータとして送信されます。

OpenAPI 操作のインポート

ドキュメントを解析すると、各操作が「メソッド /パス — 概要」として一覧され、パネルには先頭 24 件が表示され、総件数も通知されます。1 つ選ぶと、サーバー(変数は既定値で置換)、パス、クエリパラメータ、ヘッダーパラメータ、パスパラメータ、および example・examples・スキーマから作った本文のサンプルが入力されます。

paths オブジェクトがない、または openapi/swagger のバージョンがないドキュメントは、paths を持つ OpenAPI 3.x/Swagger 2.0 ではないとして拒否されます。YAML はブラウザー内で解析します。example のないパスパラメータは {name} のプレースホルダーのまま残り、壊れた URL を生成する代わりにその旨を表示します。

送信・制限・プライバシー

「リクエストを送信」は、入力した URL をこのブラウザーから CORS モード・認証情報なしで呼び出します。そのため API 側が kivtools.com を許可している必要があります。応答カードにはステータスコードとテキスト、経過時間(ミリ秒)、プレビューサイズ、応答ヘッダーが表示されます。本文プレビューは 1 MB で止まり、リクエストは 30 秒で中断されます。

CORS ヘッダーを返さない API、閉じたポート、拒否された証明書の場合は「Failed to fetch」となり、URL、CORS ポリシー、証明書、ネットワーク、API 認証を確認するよう促します。リクエストはタブ内にとどまります。アップロードも保存も行われず、通信は自分が開始した 1 件だけです。

最近使ったツール: