ダミーAPIでのテストとフェイクAPIの作成方法【必要に応じて】

JSONPlaceholderのような優れた無料ダミーAPIオプションでテストし、その後はApidogでスキーマ駆動のモックデータを用いて独自のフェイクAPIを構築しましょう。

INEZA Felin-Michel

INEZA Felin-Michel

24 6月 2026

ダミーAPIでのテストとフェイクAPIの作成方法【必要に応じて】

Apidog エンタープライズ

オンプレミスデプロイ

SSO & RBAC

SOC 2 準拠

Apidog Enterpriseを見る

フロントエンドを構築したり、クライアントをデバッグしたり、新しいHTTPライブラリを学習したりする際に、バックエンドを立ち上げずに、本物のように見えるJSONを返すエンドポイントが必要になることがよくあります。ダミーAPIはまさにそれを提供します。つまり、今すぐ呼び出せる、パブリックで無料の常時稼働サービスです。このガイドでは、最適なパブリックダミーAPIをリストアップし、それらを呼び出す方法を示し、他人のデータを借りるのをやめて、独自の偽のREST APIを構築するべき時について説明します。パブリックAPIの全体像についてさらに深く学びたい場合は、Fetch APIの使用に関するMDNガイドが、以下の内容とよく合います。

ボタン

ダミーAPIとは何か

ダミーAPIは、ユーザー、投稿、製品、カート、TODOなど、一般的なリソースタイプに対して、あらかじめ用意された現実的なJSONを返すホスト型サービスです。サインアップも、ホスティングも、本番データを破壊する心配もありません。ほとんどのダミーAPIはGET、POST、PUT、PATCH、DELETEを受け入れますが、書き込み操作は通常は偽装されています。サーバーはペイロードをIDとともにエコーバックし、保存されたふりをしますが、実際には何も永続化されません。

これが、ダミーAPIに頼る前に理解すべき重要な特徴です。ダミーAPIは、読み込みが中心のプロトタイピングや、リクエストコードが機能することの証明に最適です。ただし、ステートフルな動作、独自のデータ形式、またはカスタムのエラー条件が必要になった途端に、不適切になります。

テストに最適な無料のダミーAPIとフェイクAPI

知っておくべきパブリックAPIを以下に示します。これらはすべて無料で、バックエンドのセットアップは不要です。

JSONPlaceholder

JSONPlaceholderは定番です。100の投稿、500のコメント、100のアルバム、5,000の写真、200のTODO、10のユーザーという6つの関連リソースを提供します。関係性は実際のデータに基づいているため、投稿にはコメントがあり、アルバムには写真があります。これにより、ネストされたフェッチのテストに適しています。

curl https://jsonplaceholder.typicode.com/posts/1

単一の投稿オブジェクトが返されます。書き込みリクエストは受け入れられますが保存されないため、POST /postsは常に偽のid: 101を返します。

DummyJSON

DummyJSONは、より広範囲をカバーします。製品、カート、ユーザー、投稿、コメント、引用、TODO、レシピを提供し、トークンを渡す認証フローも備えています。ショッピングカートUIやログイン画面をテストしている場合は、これを選ぶべきです。

curl https://dummyjson.com/products/1

認証エンドポイントでは、ユーザー名とパスワードをPOSTしてJWTを受け取ることができます。これは、実際のIDプロバイダーを接続することなく、トークンストレージと認証済みリクエストを練習するのに便利です。

reqres.in

reqres.inは、リクエストとレスポンスのライフサイクルに焦点を当てています。ユーザー一覧、単一ユーザー、登録、ログイン、遅延レスポンスなどです。ページネーションと認証フローのデモ用に構築されています。知っておくべきこととして、無料枠では現在APIキーヘッダーが必要です。リクエストにx-api-key: reqres-free-v1を送信しないと、401エラーが発生します。

curl https://reqres.in/api/users/2 -H "x-api-key: reqres-free-v1"

それぞれの使いどころ

ダミーAPI 最適用途 認証フロー 書き込みの永続性
JSONPlaceholder ネストされた読み込み、ブログ形式のデータ なし 偽装、保存なし
DummyJSON Eコマース、カート、ログイン あり(トークン) 偽装、保存なし
reqres.in ページネーション、登録/ログインのデモ APIキーヘッダー 偽装、保存なし

これら3つ以外にも幅広い選択肢が必要な場合は、テスト用のパブリックAPIのまとめでより専門的な選択肢が紹介されています。開発者向けの無料パブリックAPIリストは、天気や通貨のようなテーマ別データが必要な場合に役立ちます。

コードでダミーAPIを呼び出す方法

ダミーAPIを呼び出すのは、他のHTTPエンドポイントを呼び出すのと同じです。以下は、ユーザーを読み込み、新しいユーザーを投稿するJavaScriptのシンプルなfetchの例です。

// 読み込み
const res = await fetch('https://dummyjson.com/users/1');
const user = await res.json();
console.log(user.firstName);

// 書き込み (エコーバックされるが、永続化されない)
const created = await fetch('https://dummyjson.com/users/add', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({ firstName: 'Ada', lastName: 'Lovelace' }),
});
console.log(await created.json()); // 偽のIDを持つオブジェクトを返す

requestsを使ったPythonでも、同様に簡潔です。

import requests

r = requests.get("https://jsonplaceholder.typicode.com/todos/1")
print(r.json())

これらのいずれかをテストファイルに記述すれば、アサートするための動作する統合が完成します。アサートに信頼できる値が必要な場合は、現実的なAPIテストデータの作成に関するガイドで、test123のようなものではなく、本番トラフィックのように見える名前、メールアドレス、タイムスタンプを生成する方法が示されています。

パブリックダミーAPIでは不十分になる時

パブリックダミーAPIは、ニーズが具体的になるまでは非常に便利です。しかし、いくつかの一般的な状況で壁にぶつかるでしょう。

その時点では、借り物のAPIは必要ありません。あなたのデータ形状を返し、要求に応じて、あなたが制御するレスポンスを返す独自の偽のAPIが必要です。それがテスト用に構築されたモックAPIであり、Apidogが適合する場所です。

Apidogで独自の偽APIを構築する方法

Apidogは、設計、テスト、デバッグ、モックを1つの場所で組み合わせたAPIプラットフォームです。そのモック機能はスキーマ駆動型であり、エンドポイントの構造を読み取り、組み込みのFakerルールを使用して現実的な偽データを自動的に生成します。一度形状を定義すれば、すべてのリクエストで新しくもっともらしい値が返されます。

以下に、ワークフローの簡単な説明を示します。

  1. エンドポイントを作成またはインポートします。Apidogで新しいAPIを定義するか、既存のOpenAPIまたはSwaggerファイルをインポートします。Apidogはスキーマを直接読み取ります。
  2. スマートモックにデータを入力させます。emailという名前のフィールドには、Apidogはメールアドレスを返します。createdAtには、タイムスタンプを返します。priceには、数値を返します。フィールドごとにこれらのルールを調整できるため、countryフィールドはランダムな文字列ではなく、実際の国名を返します。
  3. ローカルモックURLにアクセスします。Apidogはモックサーバーを起動し、各エンドポイントのURLを提供します。フロントエンド、テスト、またはcurlから呼び出します。パブリックダミーAPIとまったく同じですが、レスポンスは契約に合致しています。
  4. 条件付きおよびエラーレスポンスを追加します。リクエストに基づいて、モックが500、404、または遅延レスポンスを返すように設定します。これで、パブリックサービスでは再現できない「不都合な経路」をテストできるようになります。

モックは仕様から生成されるため、設計の進化に合わせて同期が保たれます。フィールドを変更すると、モックにもそれが反映されます。仕様から直接モックを生成することについて、より広範な見解が必要な場合は、OpenAPIスキーマからモックデータを生成するに関するチュートリアルで、Fakerの側面についてさらに深く掘り下げています。

パブリックダミーAPI vs. 独自のApidogモック

必要性 パブリックダミーAPI Apidogモック
クイックな読み取り専用データ 優れている 優れている
正確なデータ形状 なし あり
カスタムエラーおよび遅延レスポンス なし あり
OpenAPI契約に合致 なし あり
セットアップ時間 ゼロ 数分

どちらか一方が厳密に優れているわけではありません。パブリックダミーAPIは、5秒以内に何らかのJSONが必要な場合に優位です。一方、実際の契約に対する正確性が重要になる瞬間には、独自のApidogモックが優位に立ちます。ほとんどのチームは両方を使用しています。使い捨ての実験にはパブリックなものを使用し、リリースされるすべてのものにはプロジェクトのモックを使用します。

よくある質問

ダミーAPIはモックAPIと同じですか?

それらは重複しますが、同一ではありません。ダミーAPIは通常、JSONPlaceholderのように、固定されたサンプルデータを持つ公開された共有サービスを意味します。モックAPIは、自分で定義して制御し、独自の形状と動作を返すものです。ダミーAPIは、他者がすでにホストしているモックの一種です。この区別を詳しく知りたい場合は、モックAPIとは何かに関する説明をご覧ください。

無料の偽APIは実際のデータで使用しても安全ですか?

いいえ。実際のユーザーデータ、秘密、またはトークンをパブリックダミーAPIに送信してはいけません。POSTしたものはすべてログに記録され、可視化されるものとして扱ってください。使い捨てのテスト値のみで使用してください。プライバシーや永続性が必要な場合は、独自のモックをホストしてください。

ダミーAPIは私が送信したデータを保存しますか?

ほとんどの場合、保存されません。JSONPlaceholder、DummyJSON、およびreqres.inはすべて書き込みリクエストを受け入れ、生成されたIDとともに結果をエコーバックしますが、何も永続化されません。ページを更新すると、「作成された」レコードは消えてしまいます。状態を維持する必要がある場合は、ステートフルなモックまたは実際のバックエンドが必要です。

コードを書かずに偽APIを構築できますか?

はい。Apidogを使用すると、エンドポイントの形状を定義し、スマートモックにデータを生成させることができます。サーバーコードは不要です。OpenAPIファイルをインポートして、数分で動作するモックエンドポイントを取得することもできます。

まとめ

JSONPlaceholder、DummyJSON、reqres.inのようなパブリックダミーAPIは、プロトタイピングや学習のために現実的なJSONを最速で取得する方法です。費用はかからず、セットアップも不要です。独自のデータ形状、実際の状態、または制御されたエラーレスポンスが必要になった瞬間に、自分自身が所有する偽APIを構築しましょう。

Apidogはまさにそれを可能にします。仕様をインポートし、スキーマ駆動型のモックデータを取得し、数分で独自のAPIエンドポイントを呼び出すことができます。Apidogをダウンロードして、次のAPI契約を、バックエンドコードが1行も存在しないうちに動作するモックに変えましょう。Apidogで、それがあなたのテストワークフローにどのように適合するかをご覧ください。

ApidogでAPIデザイン中心のアプローチを取る

APIの開発と利用をよりシンプルなことにする方法を発見できる