
【この記事はこんな方に向けて書いています】
- 「API」という言葉をよく聞くが、何のことか全くイメージが湧かない。
- ITの勉強を始めたばかりで、専門用語に苦手意識がある。
- Webサービスが、どうやってお互いに連携しているのか、その仕組みを知りたい。
- 難しい話は抜きにして、APIの本質を直感的に理解したい。
- エンジニアやWeb担当者と、スムーズに会話ができるようになりたい。
「この機能は、〇〇のAPIを叩いて実装します」 「API連携がうまくいかなくて…」
IT業界に少しでも足を踏み入れると、必ずと言っていいほど登場する、アルファベット3文字の言葉、「API」。 それはまるで、RPGの最後に待ち構える「ラスボス」のように、多くのIT未経験者の心を折りにきます。「なんとなく、サービス同士を繋ぐもの…?」という曖昧な理解のまま、知ったかぶりをして、会話をやり過ごしてはいませんか?
ご安心ください。そのラスボス、この記事を読めば、たった3分で倒せます。 この記事では、APIという難解な概念を、あなたが普段、何気なく利用している「レストラン」に例えて、世界一わかりやすく解説します。専門用語は一切不要です。
この記事を読み終える頃には、あなたはもうAPIという言葉に怯えることはありません。その正体を完璧に理解し、あなたの身の回りにあるWebサービスが、どれだけAPIという「魔法」によって支えられているか、手に取るようにわかるようになっているはずです。
APIがない世界:全部自分でやるしかない、原始時代のレストラン
APIの正体を理解するために、まずは「もし、APIがこの世になかったら?」という世界を想像してみましょう。
あなたは、最高の旅行サイトを作ろうと思い立ちました。 しかし、APIがない世界では、あなたは、そのサイトに必要な機能を、すべて、ゼロから、自力で開発しなければなりません。
- 地図機能: Google Mapのような、高機能な地図システムを、自分で開発する。
- 決済機能: クレジットカード会社と直接契約し、セキュリティも万全な決済システムを、自分で開発する。
- 航空券予約機能: 世界中の航空会社と個別に交渉し、リアルタイムで空席情報を取得するシステムを、自分で開発する。
- ホテル予約機能: 全国のホテルと契約し、予約管理システムを、自分で開発する。
…考えただけで、気が遠くなりますよね。 これは、レストランで例えるなら、「ハンバーガーを作るために、自分で畑を耕して小麦を育て、牛を育てて肉を挽き、お店まで自分で建てる」ようなものです。あまりにも無謀で、非効率です。
APIとは?あなたと厨房を繋ぐ、優秀な「ウェイター」である
この、あまりにも無謀な世界を救うために登場したのが、「API」です。 結論から言います。APIとは、アプリケーション(お店)とアプリケーション(厨房)を繋ぐ、優秀な「ウェイター」です。
レストランの仕組みを思い浮かべてください。
- あなた(お客さん): 料理を注文したい人。(=ある機能を利用したい、あなたのサービス)
- 厨房(キッチン): 料理を作る場所。(=機能を提供している、他社のサービス)
あなたは、お腹が空いても、勝手に厨房に入っていって、冷蔵庫を開け、お肉を焼き始めることはできませんよね。お客さんと厨房の間には、明確なルールと境界線があります。
そこで登場するのが「ウェイター(API)」です。
- あなたは、「メニュー(API仕様書)」を見て、注文できる料理(利用できる機能)を確認します。
- あなたは、ウェイターに「このステーキをください(リクエスト)」と、決められた方法で注文します。
- ウェイターは、あなたの注文を厨房に伝えます。
- 厨房は、注文通りに調理したステーキを、ウェイターに渡します。
- ウェイターは、あなたのテーブルに「ステーキ(レスポンス)」を運びます。
この、お客さん(あなた)と厨房(他社サービス)の間で、決められたルール(メニュー)に従って、注文(リクエスト)と料理(レスポンス)のやり取りを仲介してくれる存在。それが、API(Application Programming Interface)の正体です。
Interface(インターフェース)とは、「何かと何かを繋ぐもの」という意味。APIは、アプリケーション同士を繋ぐための「窓口」や「接点」の役割を果たしているのです。
APIがある世界:一流レストランの味を、あなたのサイトで
この「ウェイター」の存在が、先ほどの絶望的な旅行サイト開発を、どう変えるか見てみましょう。
あなたは、APIという優秀なウェイターたちを、自分のサイト(レストラン)に雇うことにします。
- 地図機能が欲しい時: Google Mapのウェイター(Google Maps API)を呼び、「東京駅周辺の地図をください」と注文します。すると、ウェイターはGoogleの厨房から、最新の地図データを持ってきてくれます。
- 決済機能が欲しい時: Stripeという決済サービスのウェイター(Stripe API)を呼び、「このクレジットカードで、5000円の決済をお願いします」と注文します。ウェイターは、安全な決済処理を行い、「決済成功しました」という結果だけを、あなたに持ってきてくれます。
- 航空券予約機能が欲しい時: 航空会社のウェイター(航空会社のAPI)を呼び、「8月10日の羽田-福岡間の空席情報をください」と注文します。ウェイターは、リアルタイムの空席情報を持ってきてくれます。
もうお分かりですね。 APIを利用することで、あなたは、地図や決済といった、自社で作るにはあまりにも大変な機能を、その道のプロフェッショナル(GoogleやStripeなど)から、「機能の一部だけを借りてくる」ことができるのです。 これは、あなたのレストランが、世界最高峰のステーキハウスの「肉料理」や、三つ星寿司職人の「寿司」を、メニューに加えるようなものです。
世界のAPI関連市場は、2030年には約150億ドルに達すると予測されており、もはやAPIなしに、現代のWebサービス開発は成り立たないと言っても過言ではありません。
なぜ企業はAPIを公開するの?「厨房」側のメリット
「でも、なんでGoogleみたいな大企業が、自社の厨房の機能を、わざわざ他人に使わせてあげるの?」 そう思いますよね。APIを公開する「厨房」側にも、実は大きなメリットがあるのです。
- 自分たちの経済圏を拡大できる GoogleがMaps APIを公開すれば、世界中の無数のアプリやサイトで、Google Mapが使われるようになります。これにより、Google Mapは地図の「標準」となり、Googleのプラットフォームから誰も離れられなくなります。
- 新しいビジネスになる APIの利用は、多くの場合、無料ではありません。「月間1000回までの注文は無料ですが、それ以上は有料です」といった形で、APIの利用料そのものが、企業の新しい収益源になるのです。
- 自分たちだけでは思いつかない、新しいサービスが生まれる 自分たちの厨房の機能を公開することで、世界中の開発者が、自分たちでは思いもよらなかったような、革新的なサービスを生み出してくれる可能性があります。
実はあなたも毎日使っている、身近なAPIの例
実は、APIは、エンジニアだけのものではありません。あなたは、意識していないだけで、毎日、何十回もAPIの恩恵を受けています。
- 「Google / X (Twitter) でログイン」 あるサイトで、このボタンを押した時、そのサイトはGoogleのAPI(ウェイター)を呼び、「この人、本人確認お願いできますか?」と依頼しています。Googleの厨房が「OKです」と返事をすることで、あなたはパスワードを入力せずに、新しいサービスにログインできるのです。
- 天気予報ウィジェット あなたのスマホのホーム画面にある天気予報。あれは、天気予報アプリが、気象庁や天気情報提供会社のAPI(ウェイター)に、「今日の東京の天気は?」と、数分おきに問い合わせて、最新の情報を表示しています。
- グルメサイトの地図表示 食べログやぐるなびで、お店の場所が地図で表示されますよね。あれも、グルメサイトが、Google Maps API(ウェイター)を呼んで、「この住所の地図を表示して」とお願いしているのです。
APIは、私たちの便利で快適なデジタルライフを、陰で支える、無数の「優秀なウェイター」たちの集合体なのです。
もう、APIはラスボスではありません。 次にあなたが「Googleでログイン」ボタンを押す時、心の中でそっと、「ウェイターさん、いつもありがとう」と呟いてみてください。ITの世界が、少しだけ、愛おしく見えてくるはずです。
コメント