「API」という言葉はIT業界で頻繁に使われますが、初心者の方には少しとっつきにくいかもしれません。しかし、APIの概念を理解すると、Webサービスの仕組みが一気に見えてきます。この記事では、APIの基本概念からREST API、HTTPメソッド、JSONとの関係まで、具体例を交えてわかりやすく解説します。
APIとは何か
API(Application Programming Interface)とは、ソフトウェア同士がやり取りするための窓口のことです。レストランに例えると、料理を作るキッチン(サーバー)と、お客さん(クライアント)をつなぐウェイター(API)のような役割を果たします。
お客さんはメニュー(APIドキュメント)を見て注文(リクエスト)を出し、ウェイター(API)がキッチン(サーバー)に伝え、料理(レスポンス)を運んできてくれます。
APIを使うメリットは以下の通りです。
- 機能の再利用 - 他社が作った機能を自分のサービスに組み込める
- 開発効率の向上 - すべてを一から作る必要がなくなる
- セキュリティ - 内部のデータベースを直接触らせず、必要な情報だけを公開できる
身近なAPIの使用例
実は私たちの日常にもAPIは溢れています。具体的な例を見てみましょう。
天気予報アプリ
スマホの天気予報アプリは、気象データを提供するAPIにリクエストを送り、取得したデータを画面に表示しています。アプリ開発者が自前で天気を観測しているわけではありません。
SNSログイン
「Googleでログイン」「LINEでログイン」といったソーシャルログインは、各サービスが提供する認証APIを利用しています。ユーザーは新規登録の手間が省け、サービス側はパスワード管理のリスクを減らせます。
地図の埋め込み
Webサイトに表示されるGoogleマップは、Google Maps APIを使って実現しています。地図アプリを一から作る必要はなく、APIを呼び出すだけで高機能な地図を埋め込めます。
決済システム
ECサイトのクレジットカード決済は、StripeやPayPayなどの決済APIを利用しています。複雑な決済処理を安全に代行してくれるため、開発者はビジネスロジックに集中できます。
REST APIとは
Web APIにはいくつかの設計スタイルがありますが、現在最も広く使われているのがREST API(レスト・エーピーアイ)です。RESTは「Representational State Transfer」の略です。
REST APIの基本的な考え方は、Webの仕組み(HTTP)をそのまま活用するということです。主な特徴は以下の通りです。
- URLでリソースを指定 - 例:
/users/123で「ID 123のユーザー」を表す - HTTPメソッドで操作を区別 - 取得(GET)、作成(POST)、更新(PUT)、削除(DELETE)
- ステートレス - 各リクエストは独立しており、前回の通信状態を保持しない
- JSON形式 - データのやり取りには主にJSON形式を使用
HTTPメソッドの基本
REST APIでは、HTTPメソッドによって「何をするか」を表現します。主に使われる4つのメソッドを覚えましょう。
| メソッド | 役割 | 例 |
|---|---|---|
| GET | データの取得 | ユーザー情報を取得する |
| POST | データの新規作成 | 新しいユーザーを登録する |
| PUT | データの更新 | ユーザー情報を変更する |
| DELETE | データの削除 | ユーザーを削除する |
たとえば、ユーザー管理APIの場合は次のようになります。
GET /api/users → 全ユーザーの一覧を取得
GET /api/users/123 → ID 123のユーザーを取得
POST /api/users → 新しいユーザーを作成
PUT /api/users/123 → ID 123のユーザーを更新
DELETE /api/users/123 → ID 123のユーザーを削除
APIとJSONの関係
APIでデータをやり取りする際、最も一般的に使われるデータ形式がJSON(JavaScript Object Notation)です。APIにリクエストを送ると、レスポンスとしてJSON形式のデータが返ってきます。
例えば、ユーザー情報を取得するAPIのレスポンスは以下のようになります。
{
"id": 123,
"name": "田中太郎",
"email": "tanaka@example.com",
"created_at": "2024-01-15T10:30:00Z"
}
APIから返ってきたJSONは、そのままでは1行に圧縮されていて読みにくいことがあります。そんなときはJSON整形ツールを使うと、インデント付きの見やすい形式に変換できます。
APIレスポンスのJSONを見やすく整形しましょう
JSON整形ツールを使ってみるAPIを使ってみよう
実際にAPIを試してみたい方は、以下の無料で使える公開APIがおすすめです。
- JSONPlaceholder - ダミーデータを返すテスト用API。ユーザーや投稿のCRUD操作を練習できます
- OpenWeatherMap - 天気情報を取得できるAPI。無料プランあり
- PokeAPI - ポケモンの情報を取得できるAPI。楽しみながらAPI学習ができます
ブラウザのアドレスバーにhttps://jsonplaceholder.typicode.com/users/1と入力するだけで、APIからJSONレスポンスが返ってくるのを確認できます。
まとめ
APIは「ソフトウェア同士の窓口」であり、現代のWebサービスに欠かせない仕組みです。REST APIではHTTPメソッド(GET・POST・PUT・DELETE)でリソースを操作し、データのやり取りにはJSON形式が広く使われています。
APIの理解を深めるには、実際に公開APIを叩いてみるのが一番です。返ってきたJSONデータをJSON整形ツールで見やすく整形しながら、レスポンスの構造を確認してみてください。