このページでは、WebAPIの仕組みについて、概要イメージをもとにわかりやすく説明しています。
(目次)
WebAPIとは?
WebAPI(Web Application Programming Interface)は、Webサーバー上で動作するアプリケーションの機能を外部から利用できるようにするための仕組みです。
アマゾンやYahooなど多くのITサービスが「WebAPI」を提供しています。最近流行りのChatGPTもWebAPIを提供しています。
提供されているものは、多岐にわたります。サイト内で販売している商品の価格情報や購買機能、お天気、地図、金融情報など、サービスによってあらゆるものが提供されています。
WebAPIの概要イメージ
言葉だけでは、わかりにくいので、WebAPIを使っていないシステムとWebAPIを使っているシステムの概要イメージを書いてみました。
システムの機能は、利用者が検索キーワードを入れて検索すると、その結果を返すだけのシンプルな機能です。
WebAPIを使っていないシステム
まずは、WebAPIを使っていないシステムです。流れとしては、以下の通りです。
①で利用者がキーワード検索を開始します。
②でWebサイトは、プログラムに対して、検索処理をするようリクエストします。
③でプログラムは、データベースからデータを検索し、④でデータを取得します。
⑤データを取得したプログラムは結果を応答し、⑥で利用者画面に表示させます。
WebAPIを使っているシステム
対して、WebAPIを使っているシステムです。
流れとしては同じなのですが、③④の提供元が「API発行元サービス」から受け取っている部分が違います。③④部分が「WebAPI」と呼ばれる部分です。
API発行元サービスに対して、データ検索のリクエストを行って、そのサービスからデータ検索結果を受け取って、最終的に利用者に検索結果を表示しています。
利用者側(フロントエンド)は何も変わりませんが、機能提供側(バックエンド)の仕組みが違っていますね。
WebAPIを利用するメリット
自分達で作る範囲が減る!
単純に自分たちで作る範囲が減ります。
範囲が減ると、開発期間を短縮できますし、メンテナンスにかかる作業工数も減らすことができますので、全体的な運用コストも下げられます。メリットとして大きいです。
データ集めをしなくてよい!
地図情報、天気情報などを自分たちで集めるのは、かなり大変です。また、大手販売サイトの価格情報などは、そもそも集めることができません。
自分でデータ集めをしなくてもデータを使えるのはメリットとして大きいです。
情報漏洩リスクが少なくなる!
情報漏洩は、データを保持してるから発生します。
外部サービスからもらってこれば、そもそもデータを保持することがなくなりますので、情報漏洩リスクが少なくなります。完全にゼロになることはありませんが、リスクとしては、かなり下がりますので、メリットとして大きいです。
WebAPIを利用した時のデメリット
WebAPIの利用料がかかる場合がある!
サービスによっては、利用料がかかる場合があります。
利用料はサービスごとに違いますが「1000アクセスで100円」とか、ある一定数のアクセスごとに利用料を取られるサービスが多いです。
アクセス数と収入の状況によっては、意図せず赤字になってしまうこともありますね。
自社サービスの行く末がAPI提供元会社に左右される!
データや機能をAPI提供元会社に委ねていますので、API提供が停止されたり、機能が制限されると、自社サービスにも影響がでてきます。
利用方法の変更なども、API提供元会社都合で発表されたりしますので、注意が必要です。
WebAPIの仕組みについては、以上です。参考になりましたら、幸いです。