Skip to content

cURLコマンドジェネレーター&ビルダー

ブラウザでcurlコマンドを作成 — メソッド・ヘッダー・認証・ボディを設定してすぐにコピーできるコマンドを生成。Bearer・POST JSON・ファイルアップロードのプリセットも搭載。無料・プライバシー保護・登録不要。

トラッキングなし ブラウザで動作 無料
コマンドはすべてブラウザ内で構築されます。トークン・URL・ペイロードはデバイスの外に出ません。
プリセット
クエリパラメーター
ヘッダー
認証
リクエストボディ
オプション
生成されたコマンド
メソッド・認証・ボディタイプにわたるcurlコマンドの正しい生成、ボディタイプごとの正確なヘッダー付加、シェルセーフなクォートとエスケープについてレビュー済み — Go Tools エンジニアリングチーム · Jun 3, 2026

私たちのチームは、HTTPメソッド(GET/POST/PUT/PATCH/DELETE)・認証スキーム(Bearer・Basic・APIキーヘッダー)・ボディタイプ(生JSON・URLエンコードフォーム・マルチパートファイルアップロード)・オプションフラグ(-L・-k・-v・-i・--compressed・-o・タイムアウト・プロキシ)にわたって、実際のcurlの動作に対してcurlコマンドビルダーを検証し、シェルセーフなシングルクォートエスケープと正しいクエリ文字列エンコードを確認します。

curlコマンドとは何ですか?

curlはHTTPやその他数十のプロトコルを通じてデータを転送するコマンドラインツールです。curlコマンドはバイナリ名・フラグのセット・URLから構成されます — 例えばcurl -X POST https://api.example.com/users -H 'Content-Type: application/json' -d '{"name":"Ada"}'。curlは事実上すべてのLinux・macOS・モダンなWindowsマシンに搭載されているため、APIのテスト・ドキュメントからのリクエスト再現・CIスクリプト内からのサービスのヘルスチェックに対するユニバーサルな方法です。その強力さゆえの簡潔さが記憶を難しくしており、それがビジュアルビルダーが役立つ理由です。

すべてのcurlコマンドは同じ構造を持っています。メソッド(-X GET-X POST、…)はHTTP動詞を設定し、デフォルトはGETです。URLは?の後にクエリパラメーターが付加されたエンドポイントです。ヘッダー(-H 'Key: Value'、繰り返し可能)はAcceptContent-Typeなどのメタデータを運びます。認証は特別なヘッダーに過ぎません — トークンには-H 'Authorization: Bearer …'、Basic認証には-u user:pass、またはカスタム-H 'X-API-Key: …'。ボディ(生データやフォームデータには-d、マルチパートとファイルアップロードには-F)はペイロードを運びます。最後に、-L(リダイレクト追跡)・-i(レスポンスヘッダー表示)・-v(詳細モード)などのオプションフラグが動作を形成します。このツールはこれらの各部分をフォームフィールドとして配置し、コマンドをリアルタイムで再構築します。

curlコマンドジェネレーターを活用すべき場面:クォートに悩んでいるとき、JSON POSTのContent-Typeヘッダーを忘れているとき、マルチパートアップロードを手動で組み立てているとき。ビルダーがシェルセーフなシングルクォートエスケープを正しく処理し、クエリ文字列をエンコードし、各ボディタイプに正しいヘッダーを付加します — そして信頼できるコマンドをコピーできます。40以上の実行可能な例を含む網羅的なフラグ別リファレンスについては、curlチートシートをご覧ください。トリッキーなクエリ文字列の値をエンコードするにはURLエンコーダーをご利用ください。

すべてはブラウザ内で行われます。トークン・認証情報・URL・リクエストボディはクライアントサイドのJavaScriptで組み立てられ、どこにも送信されません — 実際の本番エンドポイントと実際のAPIキーを使ってコマンドを構築でき、デバイスの外に何も出ません。

# Plain GET — curl defaults to GET
curl https://api.example.com/users

# GET with a Bearer token (auth is just a header)
curl https://api.example.com/me \
  -H 'Authorization: Bearer YOUR_TOKEN'

# POST a JSON body — note the Content-Type header
curl -X POST https://api.example.com/users \
  -H 'Content-Type: application/json' \
  -d '{"name":"Ada","role":"admin"}'

# Multipart file upload — '@' reads the file from disk
curl -X POST https://api.example.com/upload \
  -F 'file=@report.pdf' \
  -F 'title=Q3 report'

主な機能

ビジュアルリクエストビルダー

フラグの順番やクォートを暗記する代わりに、リクエスト全体をフォームフィールドとして配置します — メソッド・URL・クエリパラメーター・ヘッダー・認証・ボディ・オプション。URLが-dの前か後かを推測する必要はもうありません。

コピーとエクスポートつきライブコマンド

curlコマンドはページ下部でキーストロークごとに再構築されます。ワンクリックでクリップボードにコピー、またはリポジトリやCIジョブにそのまま組み込める実行可能なシェルスクリプトとして「Export .sh」でダウンロードできます。

完全な認証サポート

Bearerトークン・Basic認証(-u user:pass)・カスタムAPIキーヘッダーのそれぞれをサーバーが期待する正確な形式で出力します。スキームを選択して認証情報を貼り付けるだけで、正しいAuthorizationまたはカスタムヘッダーが生成されます。

すべてのボディタイプ

生のJSON(対応するContent-Typeヘッダーが自動追加)・application/x-www-form-urlencodedフォームフィールド・multipart/form-dataアップロード(任意のフィールドを@プレフィックスでファイルに切り替え可能)。

6つのワンクリックプリセット

BearerつきGET・POST JSON・フォームアップロード・Basic認証・ダウンロード-o・詳細デバッグがワンタップでフォーム全体を入力します。最も一般的なAPIタスクの動作するリクエストから始めて調整できます。

マルチラインと1行出力

クイックな貼り付けに適したコンパクトな1行コマンドと、スクリプトやプルリクエストで読みやすいバックスラッシュ継続マルチライン版を切り替えられます。同じコマンド、2つの形式。

100%ブラウザベースのプライバシー

トークン・URL・ヘッダー・リクエストボディはすべてクライアントサイドで組み立てられ、デバイスの外に出ません — ネットワークタブで確認できます。本番エンドポイントや実際の認証情報でも安全で、データ漏洩ゼロ。

DevToolsワークフロー向け設計

APIのテストとブラウザDevToolsの「cURLとしてコピー」からのリクエスト再現という日常のループを中心に設計されています。貼り付けたcurlコマンドをfetch・requests・Go・PHP・Ruby・Node.jsに変換するConvertタブは次のリリースで提供予定です。

curlの代替ツールとHTTPクライアント

HTTPie

CLI、人間に優しい構文

色付き出力と簡潔な構文(http POST api.example.com/users name=Ada)を持つモダンなCLI。デフォルトでJSON Content-Typeを設定します。インタラクティブな使用にはより親切ですが、ユビキタス性とスクリプトの移植性ではcurlが勝ります。

wget

CLI、ダウンロード重視

再帰的ダウンロードとサイトのミラーリングに最適で、デフォルトでリダイレクト追跡とリトライを行います。任意のメソッド・カスタムヘッダー・APIテストではcurlより弱いです。Linuxではcurlと並んでよく事前インストールされています。

Postman

GUIアプリ

コレクション・環境・チーム同期を備えたリクエストの構築・保存・共有のための完全なGUI。探索的なAPI作業に最適でcurlのインポート/エクスポートが可能。クイックチェックやCIには1行コマンドより重いです。

Insomnia

GUIアプリ

クリーンなリクエストビルダーとcurlのインポート/エクスポートを備えたPostmanの軽量オープンソース代替。APIリクエストの整理に適していますが、Postmanと同様、単一のスクリプト呼び出しには過剰です。

fetch() / requests

コード内HTTPクライアント

JavaScriptのfetch()とPythonのrequestsはアプリケーションコードからの呼び出し方法です。まずcurlとしてリクエストを構築・検証し、その後変換します — 近日公開予定のConvertタブが同等のfetch・requests・その他のクライアントコードを生成します。

curlコマンドの例

シンプルなGETリクエスト

curl https://api.example.com/users

メソッドフラグなしでは、curlはデフォルトでGETになります。これは最もシンプルなリクエストで、リソースを取得してレスポンスボディをターミナルに出力します。ビルダーでクエリパラメーターを追加すると、末尾に自動的にURLエンコードされて付加されます(?page=2&limit=50)。

BearerトークンつきGET

curl https://api.example.com/me \
  -H 'Authorization: Bearer YOUR_TOKEN'

REST APIに対する最も一般的な認証済みリクエストです。Bearer認証プリセットがAuthorization: Bearer …ヘッダーを自動追加します。送信前にJWTの中身を確認するには、トークンをJWTデコーダーに貼り付けてください。

JSONボディのPOST

curl -X POST https://api.example.com/users \
  -H 'Content-Type: application/json' \
  -d '{"name":"Ada","role":"admin"}'

curlのPOSTリクエストジェネレーターの定番:JSONボディタイプが-X POSTを設定し、Content-Type: application/jsonヘッダーを付加し、-dでペイロードを渡します。APIレスポンスを後で整形するにはJSONフォーマッターをご利用ください。

POSTフォーム(URLエンコード)

curl -X POST https://api.example.com/login \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  -d 'username=ada&password=s3cret'

従来のHTMLフォーム送信です。各-d field=valueペアは&で結合され、application/x-www-form-urlencodedとして送信されます。curlが予約文字をURLエンコードします。フォームボディセクションでフィールドを作成すると、ツールが文字列を自動組み立てします。

マルチパートファイルアップロード

curl -X POST https://api.example.com/upload \
  -F 'file=@report.pdf' \
  -F 'title=Q3 report'

curlのファイルアップロードコマンドはmultipart/form-data-Fを使用します。値の先頭に@を付けるとディスクからファイルを添付し、ファイルとテキストフィールドを自由に混在させられます。curlがマルチパートの境界とContent-Typeを自動設定するため、手動で設定する必要はありません。

ファイルへのダウンロード

curl -L -o archive.zip \
  https://example.com/files/archive.zip

-oでレスポンスボディを指定したファイルに保存し、-LはCDNやリリースアセットリンクに多いリダイレクトを追跡して実際のダウンロードURLにたどり着きます。サーバーのファイル名を保持するには-oの代わりに-Oを使用してください。

Basic認証

curl -u ada:s3cret \
  https://api.example.com/private

curlのBasic認証は-u user:passを使用します。curlが認証情報をBase64エンコードしてAuthorization: Basic …ヘッダーとして送信します。Base64はエンコードであって暗号化ではなく簡単に解読できるため、Basic認証は常にHTTPS経由で送信してください。

詳細デバッグ

curl -v -i https://api.example.com/health

リクエストに問題があるとき、-vはリクエスト行・送受信したすべてのヘッダー・TLSハンドシェイクを出力し、-iはレスポンスボディにレスポンスヘッダーを含めます。APIが誤ったステータスコードを返すときにまず確認すべき手段です。

curlコマンドの作成方法

  1. 1

    HTTPメソッドを選択する

    GET・POST・PUT・PATCH・DELETE・HEAD・OPTIONSを選択します。curlはデフォルトでGETになります。POSTや他の動詞を選択すると、生成されたコマンドに-X METHODが追加されます。またはプリセットチップをタップしてメソッドと対応するボディをワンクリックで設定できます。

  2. 2

    URLとクエリパラメーターを入力する

    リクエストURL(例:https://api.example.com/users)を入力します。クエリパラメーターをキー・バリューペアで追加すると、ツールがURLエンコードして?key=value&…をURLに自動付加します — 手動エンコードは不要です。

  3. 3

    ヘッダーと認証を追加する

    リクエストヘッダーをキー・バリューペアで追加し、認証スキームを選択します:なし・Bearerトークン・Basic(ユーザー名/パスワード)・カスタムAPIキーヘッダー。正しいAuthorizationまたはカスタムヘッダーがサーバーの期待する正確な形式で生成されます。

  4. 4

    リクエストボディを設定する

    POST・PUT・PATCHでは、ボディタイプを選択します:生のJSONを貼り付ける(Content-Typeヘッダーが自動追加)・URLエンコードされたフォームフィールドを作成・マルチパートアップロードを組み立てて@プレフィックスで任意のフィールドをファイルに切り替え。

  5. 5

    オプションを切り替える

    必要なフラグを有効にします — リダイレクト追跡(-L)・安全でないTLS(-k)・詳細モード(-v)・ヘッダー表示(-i)・圧縮(--compressed)・ファイル出力(-o)・接続タイムアウト・プロキシ(-x)。各切り替えはコマンドをリアルタイムで更新します。

  6. 6

    コピー・エクスポート・リセット

    完成したコマンドをコピーするか、「Export .sh」でスクリプトとしてダウンロードするか、「リセット」でフォームをクリアします。コピー前にマルチライン切り替えを使って1行形式とバックスラッシュ継続出力を切り替えてください。

curlのよくある間違い

ボディを持つメソッドで-Xが欠落している

-dでボディを送信するとPOSTが意味されますが、PUTやPATCHが必要な場合は-Xで明示的に指定する必要があります。忘れるとボディがPOSTとして送信され、サーバーが間違ったステータスを返すかリクエストを拒否します。

✗ 誤り
# Intended a PATCH, but -d alone implies POST
curl -d '{"role":"admin"}' \
  https://api.example.com/users/7
✓ 正しい
# Set the verb explicitly
curl -X PATCH -d '{"role":"admin"}' \
  -H 'Content-Type: application/json' \
  https://api.example.com/users/7

JSON POSTでContent-Typeが欠落している

-dでJSONを送信してもContent-Typeヘッダーは設定されません — curlはデフォルトでapplication/x-www-form-urlencodedになります。ほとんどのAPIはボディのパースに失敗して400または415を返します。JSONコンテンツタイプを常に付加してください(またはJSONボディプリセットを使用すると自動追加されます)。

✗ 誤り
# Server sees urlencoded, not JSON — 400/415
curl -X POST https://api.example.com/users \
  -d '{"name":"Ada"}'
✓ 正しい
# Declare the JSON content type
curl -X POST https://api.example.com/users \
  -H 'Content-Type: application/json' \
  -d '{"name":"Ada"}'

シングルクォートとダブルクォートのエスケープ

ダブルクォート内ではシェルが$・バックティック・!を展開し、JSONを壊したりペイロード内の$variableを破損させます。シングルクォートはボディをそのまま渡します。JSONボディにはシングルクォートを使用してください。シングルクォートに対応していないcmd.exeでのみダブルクォートに切り替えてください。

✗ 誤り
# $name gets expanded by the shell to empty string
curl -d "{\"user\":\"$name\"}" \
  https://api.example.com/users
✓ 正しい
# Single quotes send the body literally
curl -d '{"user":"$name"}' \
  https://api.example.com/users

GETリクエストで-dを使用している

-dをリクエストに追加すると静かにPOSTに変わります。クエリパラメーターつきのGETが必要な場合は、URLに含めてください(または-Gを使って-dデータをクエリ文字列に折り込みます)。-dをGETに付けることは「GETが動かない」最も一般的な原因の1つです。

✗ 誤り
# -d makes this a POST, not a GET
curl -d 'page=2&limit=50' \
  https://api.example.com/users
✓ 正しい
# Query string on the URL keeps it a GET
curl 'https://api.example.com/users?page=2&limit=50'

Windows行継続:^と\

バックスラッシュ(\)はbash・Git Bash・WSLでコマンドを次の行に継続します。cmd.exeでの継続文字はキャレット(^)で、PowerShellはバックティック(`` ` ``)を使います。バックスラッシュ継続コマンドをcmdに貼り付けると壊れます — Windowscmdではツールを1行出力に切り替えてください。

✗ 誤り
:: cmd.exe — backslash is not a continuation char
curl -X POST https://api.example.com/users \
  -d '{"name":"Ada"}'
✓ 正しい
:: cmd.exe — one line, or use ^ to continue
curl -X POST https://api.example.com/users -d "{\"name\":\"Ada\"}"

URLのスペースがエンコードされていない

URLやクエリ値の生のスペース(または&#?)はコマンドを壊します — シェルが引数を分割してcurlが切り詰められたURLを受け取ります。値をパーセントエンコードして(スペースは%20)、またはcurlの--data-urlencodeでエンコードを処理させてください。このツールのクエリパラメーターフィールドは自動エンコードします。

✗ 誤り
# Space splits the argument — curl sees two args
curl https://api.example.com/search?q=hello world
✓ 正しい
# Encode the space (or quote the whole URL)
curl 'https://api.example.com/search?q=hello%20world'

一般的なユースケース

REST APIテスト
ターミナルを離れずにRESTエンドポイントに対してリクエストを作成・実行します:メソッドを設定し、Bearerトークンを貼り付け、JSONボディを送信し、レスポンスを読みます。クライアントコードを書く前にAPIの動作を確認する最速の方法。
ドキュメントからのリクエスト再現
APIドキュメントにはエンドポイントとパラメーターが示されていますが、完全ですぐに実行できるコマンドはほとんどありません。ここでメソッド・URL・ヘッダー・認証を入力すると、そのまま実行できるcurlコマンドが得られます — クォートやContent-Typeヘッダーの欠落に悩む必要はありません。
CI/CDスモークテストスクリプト
ヘルスチェックやデプロイ後スモークテスト用のcurlコマンドを生成し、「Export .sh」でパイプラインに組み込みます。--connect-timeout--max-timeを追加して応答のないエンドポイントがビルドをブロックするのを防ぎ、-wでステータスコードを確認します。
ファイルアップロードとダウンロード
-F field=@fileを使ったmultipart/form-dataアップロードを組み立てるか、CDNへのリダイレクトを追跡する-L -o filenameダウンロードを構築します。トリッキーなファイル名やクエリ値は先にURLエンコーダーでエンコードしてください。
Webhookデバッグ
プロバイダーが送信するのと同じJSONボディを、正しいシグネチャとContent-TypeヘッダーとともにPOSTしてWebhookペイロードを再生します。ハンドラーが拒否した理由をデバッグするためにまったく同じリクエストをローカルで再現します。
再現可能なバグレポート
バグレポートやPRに、誰でも正確なリクエストを再現できる1つの完結したcurlコマンドを貼り付けます — メソッド・ヘッダー・認証プレースホルダー・ボディ。リクエストを文章で説明するよりはるかに明確です。
curlフラグを学ぶ
各フォームの選択が実際のフラグにどのようにマッピングされるかを確認します — Basic認証を選択すると-uが表示され、JSONボディを追加するとContent-Typeヘッダーが付加されます。curlチートシートと組み合わせた構文を学ぶ実践的な方法。
コードに変換するリクエストの準備
まずcurlとしてリクエストを構築・検証し、アプリのHTTPクライアントに変換します。近日公開予定のConvertタブが貼り付けたcurlコマンドをfetch・requests・Go・PHP・Ruby・Node.jsに変換します — 動作することが分かったcurlコマンドから始めましょう。

curlフラグと構文リファレンス

シェルクォートとエスケープ
ツールはシングルクォートで値を囲みます。POSIXシェルでシングルクォートされた文字列の内部は何も展開されないため、最も安全な形式です。値内のリテラルシングルクォートは'\''シーケンス(クォートを閉じ、エスケープされたクォート、クォートを再開)として出力されます。cmd.exeではダブルクォートに切り替えてください。Git BashとWSLは生成されたシングルクォートコマンドをそのまま実行できます。
-d vs --data-raw vs --data-binary
-d/--dataはボディから改行とキャリッジリターンを除去します — key=valueペアには問題ありませんが、複数行コンテンツには損失が生じます。--data-rawは同じですが先頭の@をファイル名として扱いません。--data-binaryはバイトをそのまま送信します(ファイルの生の内容をアップロードするには@fileを使用)。3つともメソッドが上書きされない限りPOSTを意味します。
マルチパート(-F)vs URLエンコード(-d)
-F field=valueは生成された境界を持つmultipart/form-dataを生成します — ファイルアップロード(-F file=@path)とファイル・テキスト混合フォームに必要です。-d field=valueapplication/x-www-form-urlencoded&で結合した単一文字列を生成します。マルチパートではContent-Typeを手動設定しないでください。curlが境界を計算してヘッダーを自動設定します。
認証ヘッダーエンコード
Bearer認証はAuthorization: Bearer <token>をそのまま送信します(RFC 6750)。-u user:passからのBasic認証はAuthorization: Basic <base64>としてBase64エンコードされます — エンコードであって暗号化ではないため、HTTPSを使用してください。APIキーはサービスが要求するカスタムヘッダーです(例:X-API-Key: <value>)。
クエリ文字列エンコード
ビルダーで追加されたクエリパラメーターはパーセントエンコードされて?key=value&key2=value2として付加されます。予約文字(スペース・&=#)はエスケープされてURLが有効になります。エンコードが必要なボディフィールドには、curlの--data-urlencodeがリクエスト時にエンコードを処理します。
リダイレクトの動作(-L)
-Lなしでは、curlは301/302レスポンスを表示して停止します。-LがあるとLocationヘッダーを追跡して最終URLに到達します。リダイレクトが別のホストをまたぐ場合、curlはセキュリティのデフォルトとしてAuthorizationヘッダーを削除することに注意してください。--location-trustedは影響を理解している場合にのみ使用してください。
圧縮レスポンス
--compressedはgzip/deflate/brotliサポートをアドバタイズするAccept-Encodingヘッダーを追加し、レスポンスを透過的に解凍して帯域幅を節約します。デコードされたボディは非圧縮リクエストと同一です — 純粋な転送最適化であり、ほとんどのAPI呼び出しで安全に有効化できます。
出力:-o vs -O
-o filenameはレスポンスボディを指定したファイルに書き込みます。-OはURLパスのリモートファイル名の下に保存します。どちらも通常の標準出力ダンプを抑制します。-Lと組み合わせてリダイレクトが解決されてから実際のアセットが書き込まれるようにしてください。

curlリクエストのベストプラクティス

共有コマンドにシークレットをハードコードしない
PRやチケットやチャットに貼り付けたcurlコマンドは他の人が読み、ツールによってインデックスされます。トークンとパスワードをプレースホルダー(YOUR_TOKEN)に置き換えるか、環境変数を参照してください(-H "Authorization: Bearer $API_TOKEN")。長い認証情報の場合、curlは-H @headerfileでファイルからヘッダーを読み込むことができ、シークレットがシェル履歴に表示されません。
バイナリペイロードには--data-binary @fileを優先する
ボディがバイトが重要なファイル — 画像・署名済みペイロード・空白が重要なJSON — の場合は、-d @fileではなく--data-binary @fileを使用してください。プレーンな-dは改行とキャリッジリターンを除去し、バイナリや複数行コンテンツを静かに破損させます。--data-binaryはファイルをディスク上のまま送信します。
ヘッダー値をクォートする
-H値は常にクォートで囲んでください:-H 'Content-Type: application/json'。クォートなしでは、コロンの後のスペースが引数を分割し、curlが不正なヘッダーを受け取ります。シングルクォートはシェルが値内の$*などの特殊文字を展開するのも防ぎます — このツールがデフォルトで出力する形式です。
帯域幅節約に--compressedを使用する
API呼び出しやダウンロードに--compressedを追加してgzip/brotliエンコードをリクエストし、curlに透過的に解凍させます。JSONヘビーなAPIではこれで転送サイズを70〜90%削減でき、見るレスポンスは変わりません — エンドポイントを繰り返しポーリングするスクリプトにおける無料のメリットです。
スクリプトではタイムアウトを設定する
自動化されたコンテキストでは、遅いまたは応答のないエンドポイントがパイプラインを永遠にブロックしないよう--connect-timeout--max-timeを追加してください。--max-time 10のヘルスチェックは素早く失敗してCIを次に進めます。一時的なネットワーク障害を即座に諦めずに吸収するには--retry Nと組み合わせてください。
自動化の前に-vで検証する
curlコマンドをスクリプトやcronジョブに組み込む前に、-vで一度実行して正確なリクエスト行・ヘッダー・TLSハンドシェイクを確認してください。誤ったメソッド・Content-Typeの欠落・付加されなかった認証ヘッダーを発見する最速の方法です — インタラクティブにデバッグしてから、本番用に-vを削除してください。

よくある質問

このツールは何をするものですか?
シンプルなフォームからすぐに実行できるcurlコマンドを構築します。HTTPメソッドを選択してURLを入力し、クエリパラメーターとヘッダーを追加し、認証スキーム(なし・Bearer・Basic・APIキーヘッダー)を選択し、リクエストボディ(JSON・フォーム・マルチパート・ファイルアップロード)を設定し、リダイレクト追跡や詳細モードなどのオプションフラグを切り替えます。フォームに入力するとページ下部のcurlコマンドがリアルタイムで再構築されます — コピーして使うか、.shスクリプトとしてエクスポートするか、1行形式とマルチライン形式を切り替えられます。REST APIのテスト・ドキュメントからのリクエスト再現・バグレポートへの再現可能なコマンド貼り付けなど、日常のワークフローのために作られたcurlコマンドジェネレーターです。フラグの詳細なリファレンスはcurlチートシートをご覧ください。
データ(トークン、URL)はどこかにアップロードされますか?
いいえ。コマンド全体はJavaScriptを使ってブラウザ内で組み立てられます。トークン・認証情報・URL・ヘッダー・リクエストボディはいかなるサーバーにも送信・保存・記録されません — ブラウザのネットワークタブで確認できます。コマンドの構築中はゼロのネットワークリクエストが発生します。だからこそ、本番エンドポイントや実際のAPIキーで安全に使用できます:入力した内容はデバイスの外に出ません。コマンドは、コピーして自分のターミナルで実行したときにのみ何かが起こります。
curlでJSONを含むPOSTリクエストを送るにはどうすればよいですか?
メソッドをPOSTに設定してJSONボディタイプを選択すると、ツールがcurl -X POST <url> -H 'Content-Type: application/json' -d '{…}'を生成します。重要な点が2つあります:-d(または--data)フラグがボディを運び、Content-Type: application/jsonヘッダーがサーバーにパース方法を伝えます — ヘッダーを省略すると多くのフレームワークがペイロードを無視または誤読します。モダンなcurl(7.82+)にはヘッダーとボディを一緒に設定する--jsonショートカットもあります。レスポンスを受信後はJSONフォーマッターに貼り付けて整形・検証できます。
curlリクエストにBearerトークンを追加するにはどうすればよいですか?
AuthorizationヘッダーにBearer YOUR_TOKENという値を追加するか、「BearerつきGET」プリセットを選択してトークンを貼り付けます。生成されるコマンドはcurl <url> -H 'Authorization: Bearer YOUR_TOKEN'になります。Bearer、半角スペース1つ、そしてトークン — この正確な形式がOAuth 2.0 Bearerスペック(RFC 6750)で要求されています。送信前にトークンのクレームと有効期限を確認するには、JWTデコーダーでデコードしてください。
curlでファイルをアップロードするにはどうすればよいですか?
マルチパートボディタイプを選択してフィールドをFileに切り替えると、ツールがcurl -X POST <url> -F 'file=@/path/to/file'を生成します。@プレフィックスはcurlにディスクからファイルを読み込んでmultipart/form-dataとして送信するよう指示します。同じリクエスト内でファイルとプレーンテキストの値に対して-Fフィールドを追加できます。マルチパートではContent-Typeヘッダーを手動で設定しないでください — curlが境界を生成してヘッダーを自動設定し、上書きするとアップロードが壊れます。単一ファイルのPUTの場合はcurl -T file <url>を使用します。
ブラウザのDevToolsからコピーしたコマンド("cURLとしてコピー")をインポートできますか?
現時点ではできません — それはConvertタブの機能で、次のリリースで提供予定です。貼り付けたcurlコマンド(DevToolsが「cURLとしてコピー」で生成したものを含む)をパースして、JavaScript fetch、Python requests、Go、PHP、Ruby、Node.jsに変換します。現在のツールはビルダーです:URL・ヘッダー・認証・ボディフィールドを手動で入力してリクエストを再作成してください。DevToolsの出力は冗長ですが読みやすいため、各-Hヘッダーをヘッダーセクションに、URLをURLフィールドにコピーしてください。
WindowsのcurlはどのようにUnixと違いますか?
curlのバイナリは同じように動作しますが、シェルのクォートが異なります。cmd.exeでは値の周囲にダブルクォート(")を使用し、行継続にはキャレット(^)を使い、シングルクォートに特別な意味はありません。PowerShellではcurlInvoke-WebRequestのエイリアスになっており、明示的にcurl.exeを呼び出す必要があり、クォートルールも異なります。最も簡単な方法はGit BashまたはWSLを使用することで、このツールが生成するUnixスタイルのシングルクォートコマンドがそのまま実行できます。cmdを使わなければならない場合は、生成されたコマンドを1行形式に切り替えて'…'のクォートを"…"に置き換えてください。
-d、--data-raw、--data-binaryの違いは何ですか?
-d--dataのエイリアス)はボディを送信し、データから改行とキャリッジリターンを除去します — key=valueのフォームペアには問題ありませんが、複数行にわたるJSONには危険です。--data-rawは同じですが先頭の@をファイル名として扱わないため、データが文字通り@で始まる可能性がある場合に安全な選択肢です。--data-binaryは改行の除去なしにバイトをそのまま送信します — ファイルの生の内容をアップロードする(--data-binary @file.json)や空白が重要なペイロードに正しいフラグです。3つとも、メソッドを上書きしない限りPOSTを意味します。
curlでCookieを送信するにはどうすればよいですか?
Cookieの送信には-b、保存には-cを使用します。-b 'name=value'はリテラルのCookie文字列を送信し、-b cookies.txtはNetscapeフォーマットのファイルからCookieを読み込みます。サーバーが設定するCookieをキャプチャするには(例えばログイン後)、-c cookies.txtを追加してCookieをjarに書き込み、次のリクエストで-b cookies.txtとして再利用します。このビルダーはヘッダー・認証・ボディに焦点を当てています。Cookieヘッダーの場合は、ヘッダーセクションにCookie: name=valueヘッダーを追加することもできます。
リダイレクトを追跡するにはどうすればよいですか?
「リダイレクト追跡(-L)」を切り替えるか、-Lフラグを手動で追加します。デフォルトではcurlは301/302レスポンスを表示して停止します。-LはcurlにLocationヘッダーを追跡して最終的な宛先に到達するよう指示します。これはCDN経由のダウンロードリンク・短縮URL・HTTPをHTTPSにリダイレクトするAPIに必須です。-o filenameと組み合わせることで、リダイレクト解決後にダウンロードしたファイルを保存できます。
リクエストタイムアウトを設定するにはどうすればよいですか?
「接続タイムアウト」オプションを使用して--connect-timeout <秒>を追加します。これはcurlが接続確立を待機する時間を制限します。接続からダウンロードまでの転送全体に上限を設けるには、生成されたコマンドに手動で--max-time <秒>を追加してください。スクリプトやCIスモークテストではタイムアウトの設定がベストプラクティスです。設定なしでは、応答のないエンドポイントがパイプラインを無限にブロックする可能性があります。一時的な障害から回復したい場合は--retry Nと組み合わせてください。

htpasswd ジェネレーター — bcrypt・Apache MD5(apr1)・Basic認証

Web と API

bcrypt・Apache MD5(apr1)・SHA-1 などで htpasswd エントリーを生成。Apache・nginx・Docker 設定をすぐに貼り付けられる形式で出力。100% ブラウザ完結・アップロード不要。

Open Graph・メタタグ ジェネレーター

Web と API

Open Graph、Twitter Card、SEO メタタグをまとめて生成。Google・Facebook・X のライブプレビュー付き。100% 無料・ブラウザ内処理・登録不要で、コードをそのままコピー&ペーストできます。

nginx location テスター — なぜそのブロックが勝つのか

Web と API

どの nginx location ブロックが選ばれ、他はなぜ負けたのかを表示。=、^~、~、~* の優先順位を検証できる無料オンラインテスター。

IPv4 サブネット計算ツール

Web と API

IPv4 の IP アドレスや CIDR から、ネットワークアドレス・ブロードキャストアドレス・利用可能ホスト範囲・サブネットマスク・ワイルドカードマスクを即座に計算。RFC 3021 の /31 点対点リンクやサブネット分割表にも対応し、すべてブラウザ内で完結します。

traceparent デコーダー — W3C Trace Context

Web と API

16進数の桁を数える必要はもうありません。無料のオンライン traceparent デコーダー。ブラウザ内で動作し、何もアップロードしません。trace ID、span ID、trace-flags の8ビット全部、tracestate 検証、Datadog・X-Ray・B3 変換に対応。

AES復号ツール — OpenSSL・CryptoJS互換

セキュリティツール

AESをオンラインで復号 — GCM/CBC/CTR、パスフレーズまたは生鍵に対応し、OpenSSLとCryptoJSの「U2FsdGVkX1」形式を自動検出します。処理は100%ブラウザ内で完結し、鍵がこのページから出ることはありません。