Webサイトを運営していると、新しいサービスを利用を導入したいや、
別サイトとのデータを連携させたいなどのご相談を頂くことがあります。
そういった場合は、APIを利用して機能を実装していたりします。
今回はAPIって聞いたことがけど、何をしているかまでは知らない方のために
APIについてまとめてみたいと思います。
API(アプリケーション プログラミング インターフェイス)とは?
APIは「Application Programming Interface」の略称です。
全く違う仕組みで構築されたサイトやアプリなどのWebサービス間で、データをやり取りするための仕組みとなります。
例えば、自社のインスタグラムアカウントで投稿した最新記事を、自社のWebサイトに埋込み場合などは、インスタグラムが公開しているAPIを使って埋込みを行ったりします。
インスタグラムと自社のWebサイトはまったく違う仕組みで動いていますが、
APIを利用する事で、違うサービスのデータを連携させる事が可能になります。
APIを使うメリット
APIを使う一番のメリットとしては、開発コストを抑えれる事にあります。
例を上げると、Google MapはAPIを公開しており、
このAPIを利用すると、自社サイトにGoolge Mapを表示させたり、
自社の店舗をピンで表示させたり、店舗までの経路案内などが比較的簡単に出来ます。
(引用元:https://developers.google.com/maps/documentation/javascript/examples/map-latlng-literal)
この仕組を自社サービス開発した場合、地図情報を表示したり、
ユーザーの現在地を取得したり、最短や最安値の経路を計算したりなど、
GoogleMapが出来る機能を全て1から開発する必要があるため、
膨大なコストがかかってしまいます。
また、開発期間が短くする事ができるため、導入のハードルが下がるも大きなメリットだと思います。
APIはセキュリティー的に大丈夫なのか?
APIはWeb上に公開されているため、不特定多数の人からアクセスがある可能性があるため、
セキュリティーを心配される方もいらっしゃるかと思います。
Web上に公開されいてるAPIは、基本的にアクセスがあった場合、
そのアクセスが許可されているか認証を行うようになっています。
認証されていないアクセスは全て拒否されるため、
認証の設定がしっかり出来ていれば、セキュリティー的には安全に利用する事が出来ます。
最近はトークンを利用した、OAuth認証を採用しているAPIが多いようです。
特に個人情報を取得出来るAPIなどは、認証を必ず行っている事を確認したほうが良いと思います。
APIを使う上での注意点
ここまでAPIの良い点だけをあげましたが、APIを使えばどんな事も出来るかというと、
そういうわけではありません。
APIは公開している側が、提供している仕様でしかデータにアクセスは出来ません。
なので、顧客データを取得するAPIが公開されていないのに、顧客データを取得する事は出来ません。
また、「1週間以内に新規登録した顧客データ」など、条件を指定したデータ抽出も、APIが条件抽出に対応しているかどうかで、
取得出来ない可能性もあります。
なので、APIを利用する際は、公開されているAPIのマニュアルを確認して、
実現したい事が本当に可能か確認する必要があります。
APIを公開しているサービス
多くサービスがAPIを公開しています。
主要なSNSや、ユーザー数の多いサービスであれば、APIを公開している事がほとんどです。
連携したいサービスがやりたい事のAPIを公開かで、導入のコストや期間を短縮出来る可能性がある事は覚えておいても良いかと思われます。
ほんの少しではありますが、公開されているAPIを紹介したいと思います。
■Goolge
- Google Sheets API (https://developers.google.com/drive/)
- Google Maps JavaScript API (https://developers.google.com/maps/documentation/javascript/tutorial)
- YouTube Data API (https://developers.google.com/youtube/v3/getting-started?hl=ja)
■SNS
- Instagram Graph API (https://developers.facebook.com/docs/instagram-api/?locale=ja_JP)
- Twitter API (https://developer.twitter.com/en/docs/twitter-api)
- TikTok API (https://developers.tiktok.com/)
■チャット・メッセージアプリ
- Slack API (https://api.slack.com/)
- Chatwork API (https://developer.chatwork.com/docs)
まとめ
今回はAPIについてまとめてみました。
APIを使えば他のサービスなどの導入コストを抑える可能性はあります。
ですが、APIによってはそもそもやりたい事が実現出来ない場合もあります。
このAPIを使ってこういう事は出来る?などのご相談も承っておりますので、
お気軽にお問い合わせください。