最近のWebサービスでは、「Googleアカウントでログイン」や「お店の地図(Googleマップ)を表示」といった機能が当たり前についています。
自社で作ったわけでもないのに、なぜ他社の便利機能を自分のサイトで使えるのでしょうか?
その秘密が「API(エーピーアイ)」です。
Application Programming Interfaceの略ですが、これだけだと意味不明ですよね。
一言でいうと、APIとは「ここから注文してくれたら、機能をお貸ししますよ」という専用の窓口のことです。
レストランの厨房と客席の関係に例えると、スッキリ理解できます。
1. API=「ウェイターとメニュー表」
あなたが「お客さん(自分のプログラム)」で、Googleが「厨房(高機能なシステム)」だとします。
あなたは、厨房の中に入って勝手に料理を作ることは許されていません(セキュリティ的にNG)。
その代わり、店には「ウェイター(API)」が立っています。
APIを使ったやり取り
- 注文(リクエスト)
あなたはウェイター(API)に、メニューを見ながら頼みます。
「『東京駅の地図』という料理をください!」 - 調理(処理)
ウェイターは厨房にオーダーを通します。
厨房(Googleのシステム)が、裏側ですごい計算をして地図データを用意します。 - 提供(レスポンス)
ウェイターが料理を持ってきてくれます。
「はい、これが東京駅の地図データです!」
あなたは「厨房で何が行われたか(どうやって地図を作ったか)」を知る必要はありません。
ただ「正しい手順で注文しただけ」で、プロの料理(機能)を利用できるのです。
2. なぜAPIを使うの?(メリット)
現代のアプリ開発は、「レゴブロックの組み立て」に似ています。
全部のパーツを自分で作るのではなく、誰かが作った便利なパーツ(API)を組み合わせるのが主流です。
① 開発が早くなる(車輪の再発明を防ぐ)
ゼロから「地図システム」や「クレジットカード決済システム」を作るには、何億円もの費用と時間がかかります。
でも、GoogleマップAPIやStripe APIを使えば、数行のコードを書くだけで、その日から世界最高峰の機能を使えます。
② データを最新に保てる
天気予報アプリを作るとして、自分で毎日空を見て気温を測る必要はありません。
気象庁などの「お天気API」につないでおけば、常に最新の天気データが自動で送られてきます。
3. データは「JSON」で届く
ウェイター(API)が運んでくる料理(データ)は、お皿に乗っているわけではありません。
ITの世界では、主に「JSON(ジェイソン)」という形式のテキストデータで届きます。
JSONの例(天気APIからの返事)
{
"place": "Tokyo",
"weather": "Sunny",
"temp": 25.5
}
「場所は東京、天気は晴れ、気温は25.5度だよ」
プログラムはこのテキストを読み取って、「なるほど、晴れマークを表示すればいいんだな」と画面を作ります。
4. APIエコノミー(機能の売り買い)
APIはタダではありません(無料枠もありますが)。
「地図の表示1回につき0.5円いただきます」といった具合に、企業間で「機能の切り売り」が行われています。
これを「APIエコノミー」と呼びます。
自社の持っている貴重なデータや機能をAPIとして公開し、他社に使ってもらうことで稼ぐ。
これが今のIT企業の大きなビジネスモデルになっています。
まとめ
- APIは、他社の機能を借りるための「注文窓口(ウェイター)」。
- リクエスト(注文)してレスポンス(料理)をもらう仕組み。
- 自分で作るより、APIを組み合わせたほうが圧倒的に早くて高品質。
「このアプリ、便利だな」と思ったら、実は「地図はGoogle、決済はStripe、ログインはFacebook」というように、有名なAPIの集合体だったりします。
APIを知ると、アプリの裏側のつながりが見えてきますよ。