メインコンテンツへスキップ

新規ページ

🔌 APIの基本とは?

API(エーピーアイ)とは Application Programming Interface の略で、 **アプリケーション同士が情報をやり取りするための「窓口」**のような存在です。


🧩 APIが必要な理由

現代のソフトウェア開発では、すべての機能を1つのアプリ内で作るのではなく、 他のサービスと連携して効率化するのが主流です。 たとえば:

  • 天気情報を取得する(→天気API)
  • 支払いを行う(→決済API)
  • ログインをGoogleアカウントで行う(→OAuth API)

🏗️ APIの種類

1. Web API(HTTP経由)

インターネットを介してアクセスするAPI。 スマホアプリやフロントエンドとサーバのやり取りはここがメイン。

  • REST API(代表的、今もっとも広く使われている)
  • GraphQL(Facebook発、柔軟なクエリが特徴)
  • gRPC(Google発、バイナリ高速通信)

2. ローカルAPI

OSやライブラリ内部でのやり取り。 たとえばWindowsのアプリが「ファイルを開く」処理をするとき、OSに対してAPIを呼び出している。


🧭 APIの構成要素(Web APIを例に)

APIを使うときは、以下の4つを意識することが多いです:

  • エンドポイント:アクセスするURL(例:https://api.example.com/items
  • メソッド:HTTPの種類(例:GET, POST)
  • リクエストパラメータ:何を送るか
  • レスポンス:サーバから返ってくる結果(JSONなど)

🗺️ エンドポイントとは?

エンドポイントとは「APIへの入り口となるURL」のことです。
見た目は普通のWebアドレス(URL)と似ていますが、「人が見るためのWebページ」ではなく、プログラムがデータをやり取りするための場所です。

【例】
WebサイトのURL(人間が見る用)
https://example.com/products.html
APIのエンドポイント(アプリが使う用)
https://api.example.com/products

エンドポイントは「この場所にアクセスすればデータを送ったり受け取ったりできますよ」という住所のようなものです。
Webサイトが「ページの入り口」なら、APIのエンドポイントは「データの入り口」と考えるとわかりやすいです。


🧪 具体例で理解するエンドポイント

たとえば、「商品一覧を取得するAPI」があるとします。

 GET https://api.shop.com/products
 

このURLがエンドポイントになります。ここにアクセスすることで「商品データ」がJSON形式で返ってきます。

もし個別の商品を取得したい場合:

 
nginx
GET https://api.shop.com/products/123

このように、エンドポイントにIDを追加することで個別アクセスができます。
これはREST APIの設計思想である「リソースごとのURL設計」に基づいています。


🧰 補足:エンドポイントとメソッドの組み合わせがAPIの操作を決める

エンドポイント メソッド 意味
/products GET 商品一覧を取得
/products POST 新しい商品を登録
/products/123 GET ID=123の商品を取得
/products/123 PUT ID=123の商品情報を更新
/products/123 DELETE ID=123の商品を削除

【成功】
このように「URL(エンドポイント)」と「HTTPメソッド(GET, POSTなど)」の組み合わせがAPIの操作内容を決定します。


📡 APIを使う方法(例)

GET /weather?city=Tokyo HTTP/1.1
Host: api.example.com
Authorization: Bearer token123

これに対するレスポンスは、こんな感じになります:

{
  "city": "Tokyo",
  "temperature": 28,
  "condition": "Sunny"
}

🧱 API設計でよく使われる規格

  • REST(Representational State Transfer)
  • GraphQL
  • gRPC
  • OpenAPI(旧Swagger): API仕様の自動生成・共有に便利

【情報】 REST APIについては、設計原則やHTTPメソッドの使い分けなどを別記事で詳しく解説しています。 詳しくは「REST APIの基本」を参考にしてください。


続いて、「REST APIの基本」もすぐにまとめますね!