API
ソフトウェア同士が機能やデータをやり取りするための接続規約
API とは
API (Application Programming Interface) は、ソフトウェア同士が機能やデータをやり取りするための接続規約だ。あるプログラムが持つ機能を、外部から決められた手順で呼び出せるようにする「窓口」と考えると分かりやすい。内部の作りを知らなくても、決められた形式でリクエストを送れば結果が返ってくる。
レストランの注文に例える
API はよくレストランに例えられる。客 (利用側プログラム) はメニュー (API の仕様) を見て注文し、ウェイター (API) が厨房 (提供側システム) に伝え、料理 (データ) を運んでくる。客は厨房の調理方法を知る必要がない。この「内部を隠して窓口だけ公開する」考え方が API の本質だ。
Web API の仕組み
現代の多くの API は、Web 経由でやり取りする Web API だ。
| 要素 | 役割 |
|---|---|
| エンドポイント | 機能ごとのアクセス先 URL |
| リクエスト | 何をしてほしいかの要求 |
| レスポンス | 結果のデータ (多くは JSON 形式) |
天気情報・地図・決済・AI など、外部サービスの機能を自分のアプリに組み込めるのは API のおかげだ。
設計・利用上の注意点
API は一度公開すると、利用者がそれに依存するため、後からの変更が難しくなる。仕様を安易に壊すと、つながっている全システムに影響する。そのためバージョン管理や互換性の維持が重要になる。利用側では、認証情報 (API キー) の漏洩防止、レート制限への配慮、エラー時の処理を設計に織り込む必要がある。「つなぐのは簡単だが、壊さず保つのは難しい」のが API の勘所だ。
理解を深めるには関連書籍が役立つ。
この記事は役に立ちましたか?
関連用語
関連する記事
データベース本ガイド - SQL から設計まで学べる技術書の選び方
データベースの基礎から設計、パフォーマンスチューニングまで学べる技術書の選び方と学習順序を紹介します。
技術書の読む順番戦略 - 複数冊を組み合わせて理解を加速させる
技術書を 1 冊ずつ読むのではなく、複数冊を戦略的に組み合わせることで理解の深さと速度を飛躍的に高める方法を解説します。
機械学習・AI 本ガイド - エンジニアが読むべき技術書の選び方
機械学習の基礎から実践まで学べる技術書の選び方を紹介。「Python ではじめる機械学習」などのハンズオン本を軸に、数学が苦手な人向けの学習ルートと ML 本の賞味期限の見極め方を解説します。