- 最終更新日: 2022.01.17
- 公開日:2022.01.17
「API」や「API連携」の意味とは?出来る事・メリットなど、分かりやすく解説
- EC
- お役立ち情報
アプリケーションやWebサービスにとって、今やなくてはならないのがAPI。しかし一般には聞きなれない言葉ですよね。この記事ではAPIやAPI連携という言葉を知ってはいるけど、そもそもどういう意味なのかわからないという人のために解説して行きたいと思います。
目次
【APIとは】
APIはApplication Programming Interfaceの略で、ある特定のサービスが提供する情報や機能を扱うための仕組み全般のことをいいます。
この説明だけでAPIを理解するのは難しいと思います。APIは言葉で理解しようとするよりも、実際にどう利用されているかを知ることで、何ができるかを把握する方がわかりやすいでしょう。
【結局APIで何ができるの?API連携とは?】
以下、具体的な例で説明していきます。
- “A社はユーザーが飲食店のレビューをして点数をつける「まんぷくドットコム」というグルメサービスを運営しており、そのAPIである「まんぷくドットコムAPI」を提供していました。
- Bさんはグルメサービスを利用するユーザーのデータを分析して自分の事業に役立てたいと考えていました。いちからグルメサービスを運営して、ユーザーデータを集積するのはコストも時間もかかります。
- そこでBさんはユーザーレビューを分析するために「まんぷくドットコムAPI」を利用してデータを取得し、分析に使いました。”
BさんはA社が提供するAPIによって「まんぷくドットコム」内のデータを取得しました。これが先述した「ある特定のサービスが提供する情報や機能を扱うための仕組み」であり、すなわちAPIです。
「API利用者」が「APIにリクエスト」することで「APIを提供している他社のサービスの機能やデータ」を取得して自身のサービスやプログラムで利用することが出来るのです。
また、この例のように、ゼロから開発せず、他社が公開しているAPIの機能やデータを使って新しいサービスやシステムを作ることを「API連携」といいます。
APIにも様々な種類がありますが、一般的に「API連携」で使われるAPIはWebAPIのことを指します
ネットワーク上に公開されていて即座に利用できるのがWebAPIです。
WebAPIはHTTP/HTTPSで行うために、それぞれが違うプログラミング言語で書かれていても連携することが可能です。
その利用しやすさから最も利用されているAPIと言えるでしょう。
余談ですが、API利用者がAPIに機能やデータの使用をリクエストすることを、俗に「APIをたたく」と言います。
【どうしてAPI連携をするの?API連携のメリット】
API連携を行うメリットには以下のようなものがあります。
開発スピードの向上とコスト抑制
前述の例のようにいちから開発せずに、すでにあるサービスのAPIを利用することで開発にかかる時間やコストを削減することができます。
機能をゼロベースで開発することは非常に手間ですが、API連携によって他社サービスが提供している機能を利用することで、自社が提供する新しいサービスの開発に注力することができます。
ユーザーの利便性とセキュリティが向上する
上記の認証において、ユーザーからすると利用するサービスごとにIDとパスワードを管理することは手間が増えます。
2017年の調査によると異なるwebサービスにおいて同一のパスワードを使いまわしているユーザーは8割を超すという結果も出ています。紛失や、不正ログインのリスクを抑えるためにできれば一括で管理したいものです。現在ではGoogleアカウントやTwitter、Facebookなど各種サービスと連携することでユーザー認証を行うことが増えました。認証ではSMSやメールで二段階認証を行うのでセキュリティとしても安全です。
また、クレジットカードの決済においても、違うECサイトでの支払いをAmazonで登録しているクレジット情報で利用できます。
この場合、いちいちクレジットカード情報を登録する手間が減るのでユーザーがコンバージョンに到達するまでの手順も減るので、サービスのコンバージョン率が上がる可能性も秘めています。
- コンバージョン率についてはこちらの記事も是非ご一読下さい。
- コンバージョンとは? マーケティングにおける最重要用語と 売上を向上させるための具体的施策について
既存のサービスが進化する
既にあるサービスを拡張するAPIの特徴から、サービスの機能が進化しユーザーライクな進化を遂げる可能性があります。
API連携のキモはやはり既存のサービスの機能を拡張できるところにあります。
例えばInstagramやTwitter、Facebookなど複数のSNSに同時に投稿したいと思っても、各社が連携しない限りはそれは実現しません。しかしそれぞれのサービスが公開しているAPIを連携すれば思った通りの機能を実現することが可能なのです。
また、ECサイトへの出品を自動で行いたい、在庫管理の一覧性を向上したい、アイディアがある場合、API連携によって業務を改善することも可能です。
「あんな機能があればいいのに」「いちから開発するなんてとても無理だ」そんな想いに対してAPI連携は解決策を提示してくれるでしょう
【具体的に利用できるAPIの機能】
以下は実際に公開されているAPIの簡単な説明です。
・アカウントとユーザー
アカウントのミュートやブロックなどアカウントに関連する機能をプログラムによって管理ができます。
・ツイートと返信
特定のキーワードの情報を収集したり、自動返信を行ったりと柔軟な投稿が可能になります。 PR用に作ったハッシュタグのツイートだけを自社サイトに載せるなどUGC※1の収集にも利用できます。
※1 「User Generated Content」の略で「ユーザーによって作られたコンテンツ」の事を指します。主に個人のブログやSNS、写真やレビューなどが含まれます。
・Google Sheets API
スプレッドシートのデータを読みとったり、外部から書き込んだりすることができます。
・Google drive API
連携することでアップロードやダウンロードを外部アプリから管理することができるようになります。
・Google Maps
WEB上でGoogleMapsを表示する簡単なものから、経路検索などMapsを使用した拡張サービスに利用できます。
Amazon
・Amazon Pay
決済情報を入力せずにAmazonにログインすることで支払いを済ますことが出来ます。前述のとおりユーザーの手間を省略することでCV率を上げることも可能でしょう。
【APIを公開する側のメリット】
認知度が上がる
自社サービスのAPIを公開して使用してもらうことで自社製品のPRになります。
先述したAmazonの商品広告などはブログなどで頻出しましたがAmazonにある商品を紹介してもらうだけでサービスの宣伝になります。
利用者を増やすことでサービスの浸透度を上げる
APIを利用している他社のサービスも大きな枠組みでは自社のサービスを利用していると言えます。便利なAPIを開発してそのAPIを利用した様々なサービスを開発してもらうことで全体的な自社サービスの利用者を増やすことが出来ます。
【APIを利用する場合のデメリット】
API提供側のサーバーの影響を受ける。
自社サービスのサーバーが問題なくても、使用しているAPI側のサーバーに障害が起こると利用できなくなってしまいます。利用側は常にこのリスクを念頭に運営しなければなりません。
サービスがAPI提供側の都合に左右される
APIの提供停止や料金体系の変更によってサービスが成立しなくなる可能性があります。またAPIの仕様変更によってサービスに不具合が起こる場合があります。
【REST APIについて】
APIを使っているとREST APIという言葉を聞くことがあるかと思います。
非常に複雑な概念なので「よくわからないな」という人は読み飛ばしても構いません。
REST APIは「RESTの原則に従っているAPI」という意味です。
RESTはRepresentational State Transferの略で以下の4つの原則から成り立っています。
アドレス可能性
一意のURIを通してリソースがどこから与えられているかを表現されるようにします。
これは同じAPIの機能ごとにURI(Webの場合は通常URLで提供されます。ここではURI=URLのようなものと理解して大丈夫です)が異なる事態を避け、どの機能を利用する場合でも同一のURIから情報が提供されることを意味します。
ステートレス性
API利用者が送った複数リクエストを送った場合、それぞれは完全に独立していて、セッションなどで状態管理が行われないことを意味します。
これによりリクエスト1の結果によってリクエスト2を分岐する、といったことは行われず、あくまでリクエスト1にはリクエスト1の結果を、リクエスト2にはリクエスト2に対する結果をそれぞれ独立して返すという性質のことをいいます。
接続性
ある特定の情報に特定の情報へのリンクを含めることができる性質を指します。
つまり、リンクを含めることで別の情報に接続できることができる原則のことを言います。
この性質で設計されたREST API同士は円滑に情報をやりとりすることができます。
統一インターフェース
操作一式を以下の4つのHTTPメソッドで統一しています。
- データの取得:GET
- データの新規作成:POST
- データの更新:PUT
- データの削除:DELETE
【まとめ】
エンジニアの世界では「車輪の再発明はするな」という言葉があります。WebAPIを上手に利用することで開発コストを削減して自社コンテンツを作ることが出来ます。APIはアイディア次第で無限の可能性を秘めています。すでに世の中に広く浸透しているAPIを利用して新たなサービスを作り出すことが自社のビジネスの拡大に寄与するかもしれません。