【うぇぶえーぴーあい】

Web API とは?

最終更新:
💡 Web経由で「他のサービスの機能」を呼び出す

HTTP/HTTPSを通じて、プログラムからデータや機能を利用するための窓口。システム間の連携に使う。Web開発ではブラウザが提供するAPIを指す場合もある。

📌 このページのポイント
HTTPを使うWeb APIの例 クライアント アプリなど サーバー APIの窓口 要求 URL・メソッド 応答 応答:ステータスコード + データなど JSON等の形式はAPIの仕様による 認証・認可や利用上限も仕様で確認 ブラウザが提供するAPIを指す文脈もある
HTTP経由のサービスAPIの例。RESTだけに限らず、形式はAPIごとに確認。
ひよこ ひよこ
普通のAPIとどう違うの?
ペンギン先生 ペンギン先生
APIはプログラムから機能を使うための窓口という広い概念。ここでいうWeb APIはHTTP/HTTPSでサービスに要求を送るものだよ。インターネットに公開する場合も、内部だけで使う場合もあるんだ。
ひよこ ひよこ
身近な例は?
ペンギン先生 ペンギン先生
例えばアプリがサービスに商品情報を問い合わせたり、注文を登録したりする場面だね。実際のGitHubのAPIでも、Issueやリリースを操作できるよ。すべてのサービスが誰にでもAPIを公開しているわけではないんだ。
ひよこ ひよこ
どうやって呼び出すの?
ペンギン先生 ペンギン先生
APIの資料でURL、GETやPOSTなどのメソッド、必要なパラメータや認証情報を確認して要求するよ。JSONで送るものもあるけれど、すべての要求・応答がJSONとは限らないんだ。
ひよこ ひよこ
セキュリティはどう考える?
ペンギン先生 ペンギン先生
通信の保護に加え、認証情報を守り、許された範囲だけ操作できる認可が必要だね。OAuth 2.0はアクセス権を委任する枠組み。利用上限や失敗時の応答も確認して処理するよ。
ひよこ ひよこ
ブラウザのWeb APIという言い方もある?
ペンギン先生 ペンギン先生
あるよ。例えばfetch()はブラウザなどからリソースを取得するためのAPIで、サービス側の窓口を呼ぶ手段にもなる。ブラウザが提供する機能のAPIと、サーバーが公開するサービスのAPIは、文脈で区別しよう。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「Web API」って出てきたら「Web経由で使えるプログラム向けの窓口」と思えればだいたいOK!
📖 おまけ:英語の意味
「Web + Application Programming Interface」 = Webに関するプログラム用インターフェース
💬 APIはApplication Programming Interfaceの略。ここでは主にHTTP経由でサービスを利用する窓口を説明しているよ。

参考資料

← 用語集にもどる