APIは「注文するための窓口」
APIは Application Programming Interface の略で、日本語にすると「プログラムどうしがやりとりするための決められた窓口」です。略語を漢字に直しても正直ピンと来ないと思うので、まずは例え話から。
ファミレスを想像してください。あなたはキッチンに入って自分でハンバーグを焼いたりしませんよね。メニューを見て、店員さんに「Aランチをひとつ」と伝える。すると数分後に料理が出てくる。厨房でどんな器具を使っているか、肉をどこから仕入れているかは知らなくていい。「メニュー」と「店員さん」がAPIにあたります。
つまりAPIとは、「こう頼めば、こういうものが返ってきます」という約束事のセットです。中身の仕組みを知らなくても、決められた頼み方さえ守れば結果が受け取れる。ここがAPIのいちばん大事なところです。
頼む側と応える側
APIのやりとりは、たいてい2つの役割に分かれます。
呼ぶ側(クライアント)
「この情報がほしい」「これを実行して」とお願いする側。あなたが書いたプログラムや、使っているアプリがここに当たります。
応える側(サーバー・提供元)
お願いを受け取って、処理をして結果を返す側。天気情報のサービスや、地図のサービスなどが該当します。
この2つが直接お互いの内部をいじり合うのではなく、あいだに「決められた頼み方」を挟むことで、片方が中身を作り変えても、頼み方さえ変わらなければ相手は影響を受けません。ファミレスが厨房の器具を新しくしても、メニューの「Aランチ」が同じなら客は何も困らないのと同じです。
身の回りにあるAPIの例
スマホのアプリで「地図が埋め込まれている」のを見たことがあると思います。あのアプリの開発者が世界中の地図を自分で作ったわけではなく、地図サービスのAPIを呼んで表示しています。天気予報ウィジェット、ログイン画面の「〇〇アカウントでログイン」、決済ボタン。どれも裏側では別のサービスのAPIを叩いています。
APIがあるおかげで、開発者は「自分が作りたい部分」だけに集中できる。これがAPIが広く使われている理由です。
やりとりの流れ
お願いのことをリクエスト、返ってくるものをレスポンスと呼びます。「東京の今日の天気を教えて」と送ると、「晴れ、最高気温18度」といったデータが返ってくる、というイメージです。返ってくるデータは人間が読む文章ではなく、プログラムが扱いやすい形式(JSONという形式がよく使われます)であることが多いです。
APIキーという言葉
APIを使おうとすると、たいてい「APIキー」というものを発行することになります。これは会員証やパスワードのようなもので、「誰からの依頼か」を提供元が判別するために使われます。だから他人に見せてはいけませんし、うっかりプログラムに直書きしてネット上に公開してしまうのは、よくある事故です。設定ファイルや環境変数に入れて、コードとは分けて管理するのが基本になります。
最初につまずきやすいところ
初めてAPIを触ると、「エラーが返ってきたけど何が悪いのか分からない」で止まりがちです。多くの場合、原因は次のどれかに収まります。
- URLやパラメータの綴りが少し違う
- APIキーを渡し忘れている、または期限切れ
- 提供元が決めた回数制限を超えている
- 送るデータの形式が仕様と違う
APIには必ずドキュメント(仕様書)があります。「どのURLに」「どんな形で」「何を送れば」「何が返るか」が書いてある、さっきの例え話でいうメニュー表です。エラーで詰まったときは、勘で直すより先にドキュメントを開くのがいちばん近道です。
覚えておきたいこと
APIは特別に難しい技術というより、「他人が作った機能を、決められた作法で借りる仕組み」だと思っておくと腑に落ちやすいはずです。中身を全部理解する必要はなく、頼み方と返ってくる形さえ分かれば使える。最初の一歩としては、興味のあるサービスのAPIドキュメントを開いて、一番簡単なリクエストを実際に一度送ってみるのがおすすめです。
このページは役に立ちましたか?