APIを開発する際には、レスポンスが期待通りに返却されるかを確認するためのテスト作業が欠かせません。
しかしながら、動作確認を毎回プログラムから実行するのは手間がかかります。
そこで便利なのが「Postman」です。
Postmanを利用すると、GUI上でリクエストの送信やレスポンスの内容確認ができるため、API開発や動作確認を効率化できます。
本記事では、Postmanの基本的な使い方について解説していきます。
Postmanとは
Postmanとは何か
Postmanは、APIサービスの開発・テスト・管理・公開をサポートするAPIプラットフォームです。
APIリクエストの送信やレスポンスの確認を、プログラムを書かずにGUI上で視覚的に操作できるのが特徴です。
Postmanでは、HTTP以外にもGraphQLやgRPCなどのリクエストを扱うことができます。
また、単純にAPIを呼び出すだけでなく、複数のリクエストを「Collection」にまとめたり、環境ごとに異なるURLや認証情報を切り替えたり、レスポンスを検証するテストを作成したりすることも可能です。
Postmanでできること
Postmanは、数あるAPIクライアントツールの中でも、API開発からテスト、運用までの一連の流れを同一の環境で扱うことに長けています。
APIリクエストを送信するだけでなく、リクエストの整理、テスト、モックの作成、ドキュメント化、監視など、API開発における様々な工程をまとめて扱えるのが特徴です。
特に便利な機能の1つが、送信したリクエストを保存しておける「Collection」機能です。
APIリクエストを保存・整理するための基本的な機能であり、フォルダを使ってリクエストを分類したり、Collection内の複数のリクエストをまとめて実行したりすることができます。
また、他のAPIクライアントツールと比べて特徴的なのが、「Mock Server」です。
モックをコードで作成することができる機能で、バックエンドAPIが完成していない段階でも、想定したレスポンスを返すAPIを用意してフロントエンド側の開発を進めることができる便利な機能となっています。
上記の機能に加え、APIリクエストの送信に必要なパラメータなどの設定、環境変数による設定値の切り替えなど、基本的な機能も一通り備わっています。
開発から運用までの工程を幅広くサポートできるのがPostmanの強みです。
なぜAPI開発でPostmanを使うのか
APIの動作を確認する方法の一つとして、プログラムからAPIを呼び出す方法があります。
しかし、プログラム上でAPIを確認する場合、呼び出し処理やパラメータの設定といった、リクエストを送信するためのコードをあらかじめ用意する必要があります。
また、APIを呼び出すプログラムでは、画面入力の受け取りやデータの加工など、リクエストの送信以外にもさまざまな処理を実行しなければならない場合があります。
APIそのものの動作だけを確認したい場合でも、リクエスト送信に必要な処理や、それに付随する処理を実行しなければならず、目的のAPIを確認するまでに手間がかかることがあります。
Postmanを利用すると、こうした処理をプログラムとして用意することなく、画面上からURLやHTTPメソッド、パラメータなどを設定してAPIへリクエストを送信できます。
APIを呼び出すためのコードを準備する手間を省き、APIのリクエストとレスポンスの確認そのものに集中できるのが利点です。
APIの動作を素早く確認したい場合や、リクエストの内容を変更しながら動作を検証したい場合に、Postmanは便利なツールと言えます。
なお、JavaScriptのfetchメソッドなどを使ってプログラムから同様のリクエストを送る方法については、以下の記事も参考にしてください。
Postmanを導入する
Web版とデスクトップ版の違い
Postmanには、ブラウザ上から利用するWeb版と、パソコンにインストールして利用するデスクトップ版があります。
Web版は、ブラウザにアクセスするだけですぐに利用できるメリットがありますが、CORS制限(ブラウザのセキュリティによる通信制限)やオフライン時の利用など、ケースにより機能に制限がかかる場合があります。
また、プロキシ設定やパフォーマンステストなど、一部の機能はデスクトップ版のみ利用可能となっているため、すべての機能を利用する場合はデスクトップ版のインストールが必要です。
(制限される機能の一覧に関しては、こちらを参考にしてください)
Postman Agentを併用することでWeb版のままCORS制限を回避することも可能ですが、ローカル環境や社内ネットワーク内にあるAPIへアクセスする場合は、基本的にデスクトップ版を利用するのがおすすめです。
一方で、アプリケーションのインストールが制限されている端末を使用する場合は、Web版を利用することで手軽に動作確認できます。
用途や目的に応じて、どちらを利用するかを使い分けるとよいでしょう。
Postmanをインストールする
Postmanのデスクトップ版は、Windows、macOS、Linuxに対応しています。
公式サイトのダウンロードページから、使用しているOSに対応したインストーラーをダウンロードしてください。
インストールが完了したらPostmanを起動します。
Postmanでは、アカウントにログインして利用することで、Collectionやリクエストなどのデータをクラウドに同期できます。
初回起動時には以下のログイン画面が表示されるため、作成済みのアカウント、もしくは新規作成した無料アカウントを利用してログインしましょう。
ログインが完了すると、以下のように自分のWorkspace(作業スペース)が開かれます。
実際にリクエストを作成・送信する中心的な画面は「Workbench」と呼ばれており、基本的な操作はこの中で行います。
はじめてのAPIリクエストを送ってみる
ここからは、実際にPostmanを使ってAPIへリクエストを送信してみましょう。
今回は、Postman公式のクイックスタートでも使用されている「Postman Echo API」を利用します。
アカウント登録が不要な、動作確認用の公開APIのため、安心して練習に使えます。
GETリクエストを送信する
GETは、サーバーからデータを取得する時などに使用されるHTTPメソッドです。
簡単なGETリクエストの場合、URLを指定するだけでリクエストを送信できます。
まずは、新しいリクエストを作成しましょう。
タブメニュー部分の「+」ボタンを押すと、新規リクエストを作成できます。
リクエストの設定画面では、HTTPメソッドとURLを指定します。
HTTPメソッドを「GET」に設定し、URLに次のアドレスを入力します。
https://postman-echo.com/get
設定が完了したら、「Send」ボタンを押してリクエストを送信できます。
レスポンスを確認する
リクエストを送信すると、画面下部のレスポンスエリアにAPIから返されたデータが表示されます。
レスポンスには、主に以下のような情報が含まれています。
- ステータスコード
- レスポンス時間
- レスポンスサイズ
- Body
- Headers
- Cookies
Bodyには、APIから返されたデータがJSON形式などで表示されます。
Postmanでよく使うAPIリクエストの設定
実際のAPIでは、URLとHTTPメソッドを指定するだけではなく、送信するデータや認証情報などを設定することがあります。
Postmanでは、リクエストの設定画面からこれらの情報を簡単に指定できます。
POSTリクエストを送信する
GETが主にデータを取得する時に使用するメソッドなのに対し、POSTはサーバーへデータを送信する時などに使用されるHTTPメソッドです。
例えば、ユーザー登録APIにユーザー情報を送信したり、問い合わせフォームの内容をサーバーへ送信したりする場合などに使用します。
PostmanでPOSTリクエストを送信する場合は、リクエスト作成画面でHTTPメソッドを「POST」に設定し、URLを入力します。
また、POSTの場合、URLの他に「Body」と呼ばれる部分にサーバーへ送信するデータを設定することがよくあります。
そこで次に、Bodyの設定方法を確認してみましょう。
BodyにJSONを設定する
APIでは、サーバーへ送信するデータをJSON形式で指定することがよくあります。
{
"name": "Taro",
"email": "taro@example.com"
}PostmanでJSONを送信するには、リクエスト設定画面の「Body」を選択し、「raw」を選びます。
さらに、データ形式として「JSON」を指定し、送信したいデータを入力します。
この状態で「Send」をクリックすると、JSONデータを含んだPOSTリクエストが送信されます。
Params(クエリパラメータ)を設定する
APIによっては、URLの末尾に「クエリパラメータ」を指定して、取得するデータを絞り込むことがあります。
https://example.com/users?name=Taroこの場合、name=Taroの部分がクエリパラメータです。
URLに直接パラメータを入力することももちろん可能ですが、Postmanの場合は「Params」から設定すると管理しやすくなります。
入力した内容が自動でURLに反映されるため、パラメータの追加や変更も容易に実行可能です。
Headersを設定する
APIリクエストに関する追加情報を指定する場合は、「Headers(ヘッダー)」を使用します。
送信するデータの形式を指定する「Content-Type」や、リクエストを送信するブラウザやツールの情報を記述する「User-Agent」など、様々な内容を設定できます。
どの情報を設定する必要があるかはAPIによって異なるため、対象となるAPIのドキュメントなどを確認し、指定されているHeadersを設定するようにしましょう。
Authorization(認証)を設定する
APIによっては、誰でもアクセスできるわけではなく、利用者を識別するための認証が必要になります。
認証情報をリクエストに含める場合は、「Authorization」で設定可能です。
Authorizationでは、API KeyやBasic Auth、Bearer Token、OAuth 2.0など、様々な認証方式に対応しています。
使用する認証方式と、トークンなどの必要情報を設定すると、Postmanがリクエストに認証情報を含めて送信してくれます。
リクエストを整理する
Collectionでリクエストをまとめる
Collectionは、複数のAPIリクエストをまとめて管理するための機能です。
Collection内ではフォルダを作成することができるため、APIの種類ごとに分類して管理することができます。
ユーザー管理API
├─ User
│ ├─ ユーザー一覧
│ ├─ ユーザー取得
│ └─ ユーザー登録
│
└─ Authentication
├─ ログイン
└─ ログアウト設定した情報を保存して再利用できるため、開発中に何度も実行するリクエストをCollectionに保存しておくと、URLやBodyなどを毎回入力する必要が無くなり効率的に開発できます。
Environment(環境変数)でURLやキーを切り替える
API開発では、開発環境と本番環境など、複数の環境を使い分けることがよくあります。
使い分けの際は、環境ごとに異なるURLを利用して使い分けるのが一般的ですが、切り替えの度に全てのリクエストのURLを書き換えるのはかなりの手間です。
そこで利用可能なのが、Postmanの「Environment」機能です。
Environmentでは、URLやAPIキーなどの値を変数として登録することができます。
例えば、以下のような変数をEnvironmentで設定します。
base_url = https://api-dev.example.comそして、リクエストのURLを次のように記述します。
{{base_url}}/usersPostmanでは、「{{変数名}}」という形式で記述することにより、Environmentに登録した変数を参照できます。
環境を切り替える際は、変数の値を変更するだけで、リクエストそのものを書き換えなくてもアクセス先を切り替えられるようになります。
また、APIキーなどの値も変数として管理しておくと、同じリクエストを開発環境・テスト環境・本番環境などで使い回しやすくなります。
PostmanでAPIテストを実行する
PostmanはAPIにリクエストを送信するだけでなく、レスポンスが期待した内容になっているかを自動的に確認するテストにも利用できます。
ここからは、Postmanで基本的なAPIテストを実行する方法を見ていきましょう。
レスポンスのステータスコードをテストする
APIのテストでは、まずHTTPステータスコードを確認して、正常にデータを取得できたかなどを判別する方法がよく使われます。
Postmanでは、リクエストの「Scripts」タブからテスト用のスクリプトを設定できます。
Scriptsタブには送信前に実行される「Pre-request」と、レスポンス受信後に実行される「Post-response」の2種類があり、テストコードは主にPost-response側に記述します。
例えば、「正常にデータを取得できた場合は200を返す」というAPIであれば、以下のコードによってリクエストの結果を確認できます。
pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
});テストを実行すると、Postmanの画面上で成功・失敗の結果を確認できます。
ステータスコードの他に、レスポンスボディの内容を検証することも可能です。
Collection内のリクエストをまとめて実行する
APIの開発が進むと、1つのAPIだけでなく複数のAPIを確認する必要が出てきます。
Postmanでは、「Collection Runner」を利用してCollection内の複数のリクエストをまとめて実行できます。
Collection Runnerでは、実行するCollectionやフォルダ、Environmentなどを指定して、保存したリクエストを順番に実行できます。
それぞれのリクエストにテストを設定しておけば、複数のAPIをまとめて実行したうえで、各テストが成功したかどうかを確認できます。
Postmanを利用する際の注意点
PostmanはAPI開発に便利なツールですが、利用する際にはいくつかの注意点が存在します。
特に注意したいのが、APIキーやアクセストークンなどの認証情報です。
APIへのアクセスに必要な情報をPostmanに入力した場合、その情報を不用意に共有すると、第三者にAPIを利用される可能性があります。
認証情報を含んだリクエストを扱う際は、保存や共有の仕方に注意するようにしましょう。
Environmentを利用する場合は、現在どの環境を選択しているかを確認してからリクエストを送信することも重要です。
複数の環境を切り替えて使用するケースでは、誤って本番環境にリクエストを送信してしまい、実際のデータを登録・変更・削除してしまう可能性があります。
特に、POST・PUT・PATCH・DELETEなど、サーバー上のデータを変更する可能性があるリクエストでは注意が必要です。
テストを実行する前に、EnvironmentやURLが意図した環境になっているかを確認する習慣をつけておくとよいでしょう。
Postmanに関するよくある質問
Q. Postmanは無料で使えますか?
A. 個人がAPIリクエストを送信・テストするための基本機能は、無料の「Free」プランで利用できます。
ただし、2026年3月の料金改定によりFreeプランは1ユーザーのみの利用に制限されており、チームメンバーと共同編集する場合は「Solo」や「Team」などの有料プランへの加入が必要です。
詳しい料金体系は公式サイトの料金ページで確認できます。
Q. アカウント登録は必須ですか?
A. Collectionの保存やクラウドへの同期、チームでの共有を行う場合はアカウント登録とログインが必要です。
本記事のようにPostman Echo APIへ試しにリクエストを送るだけであれば、ログインしていない状態でもある程度操作を確認できますが、内容を保存しておきたい場合は無料アカウントを作成しておくとよいでしょう。
Q. Web版とデスクトップ版、結局どちらを使えばいいですか?
A. 特にこだわりがなければ、まずはデスクトップ版をインストールするのがおすすめです。
プロキシ設定やパフォーマンステストなど、デスクトップ版でしか使えない機能があり、CORS制限に悩まされる心配もありません。
アプリのインストールができない環境で手軽に試したい場合は、Web版を利用しましょう。
Q. 「Tests」タブが見当たりません。名前が変わったのですか?
A. はい、変更されています。
以前は「Tests」という名称のタブでしたが、現在は「Scripts」タブの中の「Post-response」という項目に統合されています。
本記事のpm.testを使ったテストコードも、このPost-response側に記述します。
Q. postman-echo.comとは何ですか?安全に使えますか?
A. postman-echo.comは、Postman公式が動作確認用に提供している無料のテスト用APIです。
送信した内容をそのまま返す(エコーする)だけのシンプルな仕組みのため、アカウント登録なしで安全に練習に利用できます。
まとめ
Postmanは、APIリクエストの送信やレスポンスの確認、テストなどをプログラムを書かずにGUI上で行える便利なツールです。
まずは、基本的なリクエスト送信から使い始め、慣れてきたらCollection、Environment、テスト機能へと利用範囲を広げていくとよいでしょう。