APIの基本

APIとは?

APIってなんだろう?

APIってなんだろう?

さっそくAPIとはなにかについて解説していきます。プログラミングを学ぶうえで必要不可欠な用語なので、まずはAPIに対する理解を深めていきましょう。

APIの意味を知ろう

まずは、APIがどのようなものかを知るために、Wikipediaの説明を確認してみましょう。

アプリケーションプログラミングインタフェース(API、英: Application Programming Interface)とは、ソフトウェアコンポーネントが互いにやりとりするのに使用するインタフェースの仕様である。
引用元:Wkipedia

これでもまだ分かりにくいので、より簡単に説明すると、APIとはソフトウェアの機能を共有できる仕組みのことをいいます。

APIは他サービスの機能を連携できる仕組み

APIはソフトウェアの一部を公開して、他のソフトウェアと機能を共有できるようにしたものです。

ソフトウェアの一部をWEB上に公開することによって、誰でも外部から利用することができるようになります。それによって、自分のソフトウェアに他のソフトウェアの機能を埋め込むことができるようになるので、アプリケーション同士で連携することが可能になります。

APIは通常Web上に公開されていて、誰でも無料で使うことが可能です。また、APIはWEB上で通信して利用することが普通なので「WebAPI」と呼ばれることも多く、APIと書いている多くの場合は、「WebAPI」を指します。

ただし、外部からソフトウェアの機能を利用するといっても、内部のコードまでは公開していません。つまり、外部からは機能の使い方や仕様がわからないため、使い方を説明する必要があります。そのため、APIは機能だけでなく、Web上に使い方やルールも合わせて公開しています。

APIを使うメリット

APIを使うメリットは5つあります。

  • より多くの新しいサービスと開発できる
  • データを二次利用できる
  • 効率的に開発できる
  • サービス利用者の利便性がアップする
  • セキュリティの向上

ここでは、それぞれのメリットについて解説します。

より多くの新しいサービスを開発できる

自社サービスの機能をAPIとして公開することで、同じ特徴をもったサービスが開発しやすくなります。それによって、ある機能に特化させたり、さらに使いやすく一部の機能だけ改良することも可能です。その結果、より多くのサービスが生まれ、世の中が便利になっていきます。

データを二次利用できる

APIでは他社のデータを使うこともできます。同じ情報を様々な分野で活用してもらうことで、情報を分析することが容易になり、各分野に特化した分析をおこなうことができます。そこから顧客の傾向や特徴を発見することで、イノベーションが生まれ、新しいビジネスが生まれるのです。

効率的に開発できる

作りたい機能がすでにAPIで公開されているなら、同じプログラムを1から作る必要がありません。それによって、開発時間を大幅に短縮できます。

さらに無料で利用できるため、開発コストも大幅に削減でき、かつ効率的にアプリケーションを制作することが可能です。他にも、ツールやサービスを使うことでもっとアプリ開発を効率化することができます。

サービス利用者の利便性が向上する

他社のユーザー情報を使って、自社のサービスにログインできる機能を作ることができます。そのため、あらためて会員登録をしてもらう必要がありません。メールアドレスやパスワードの入力も必要ないため、ユーザーにとって面倒な手続きや手間を省くことができます。

このようにAPIを使うことで、アプリケーションやサービスを利用するユーザーの利便性をアップできます。

セキュリティが向上する

FacebookやTwitter、GoogleのAPIキーを取得することで、自社のサービスにSNSログインを設定できます。つまり、一から会員登録システムを制作しなくても、FacebookやTwitter、Googleのセキュリティーレベルの高いシステムを使うことができ、自社のサービスのセキュリティを向上できます。ただし、あくまでAPIを利用した一例にすぎないため注意してください。

APIには多くの種類がある

さまざまなWebAPIが公開されている

さまざまなWebAPIが公開されている

APIにはたくさんの種類があり、作成するアプリケーションの種類によって、さまざまなAPIが用意されています。

こちらの記事を読んでいただければどのアプリにどんなAPIが対応しているのかがすぐにわかり、迷うことなくあなたに合ったAPIを見つけることができます。

APIの活用事例

APIは身近なサービスにも活用されている

APIは身近なサービスにも活用されている

現在使われているAPIは数多くの種類があるので、ここではイメージしやすいように実際に使われているAPIの実例を紹介します。

Facebook API

Facebook APIを使っている大人気の「インスタグラム」をご紹介します。インスタグラムはFacebook APIを使っているので、Facebookアカウントで登録ができてすぐに利用をはじめることができます。

このような画面を一度は見たことがあるでしょう。

Screenshot 2016-07-01 05.06.26

Facebook APIの承認画面

この画面は、Facebookの情報を使うので、「Facebookへのアクセスを許可しますか?」とユーザーに許可を求めています。勝手にユーザーの情報を利用することはできませんので、必ずユーザーに許可をとる必要があります。

また、下図のようにFacebook APIを利用することで、同じFaceBookの友達がインスタグラムを使いはじめた時や、友達が投稿した時にお知らせしてくれたりします。

skitch (8)

instagramの画面

これはFacebook APIを使って、Facebookと連携していないと実現できない機能です。

このようにAPIを使うことで簡単にアプリケーション同士で連携できるようになります。APIを利用することで、アイディアや工夫次第で便利な新しいサービスを作ることも簡単になるのです。

LINE API

LINEには、下記のAPIがあります。

  • チャットボットの開発
  • LINEログイン機能
  • IoT開発
  • 音声アシスタントの開発
  • LINE決済機能
  • ソーシャルボタン・通知機能

このようにLINEは、Web開発に使えるものだけでなく、IoT開発など幅広い機能を公開しています。

YouTubeAPI

YouTubeAPIは、動画のパフォーマンスを高めるための分析ができる様になる機能が追加できます。YouTubeAPIで、できることは下記の通りです。

  • 動画の効果測定ができる
  • 動画の制御ができる
  • チャネルのデータを一括取得できる

動画で集客を考えている人は、こういった分析ができると他の競合との集客で差をつけることも可能になります。

YouTubeAPIでできることを初心者でも理解できるように徹底解説更新日 : 2020年1月10日

チャットワークAPI

業務効率化のためのチャットツールで有名なチャットワークにもAPIが存在します。チャットワークAPIでできることは下記の通りです。

  • 未読数、未完了タスク数を取得
  • タスク一覧を取得
  • タスク情報の取得
  • チャット一覧取得
  • チャット作成
  • チャット情報の取得
  • チャット情報の変更
  • チャットメンバーの一覧を取得

このようにチャットワークで使える機能を実装することが可能になります。

Amazon API

AmazonのAPIでできることは、下記の通りです。

  • 1日単位での販売額・紹介料の推移を把握できる
  • 商品の最新情報を表示できる

AmazonのAPIでは、このようなアフィリエイトに便利な機能を公開しています。

GoogleMap API

GoogleMapのAPIでできることは、下記の通りです。

  • Google Maps をウェブサイトに表示できる
  • 高解像度で地図を表示できる
  • 高解像度でストリートビューの画像を表示できる

このようにGoogleMapのAPIを使うことで、Webサイト上にGoogleMapを簡単に表示できます。

APIの使い方

APIの使い方は全種類同じ

APIの使い方は全種類同じ

APIの使い方をご説明します。使い方はどんなAPIも同じなので、参考までに覚えておきましょう。

アプリをAPIサイトに登録する

まずは、APIを提供している企業の専用サイトへいき、ご自身のアプリケーション情報を登録します。

「このアプリケーションから利用しますよ!」とAPI側に教えてあげます。

登録する内容は、「アプリ名」「アプリケーションのドメイン(URL)」「どのURLへ返答すればいいか(コールバックと言われます)」などです。これらの情報を登録することによって、どのアプリケーションからのアクセスかが判断できるようになり、連携できるようになります。

APIキーとシークレットを取得する

APIは誰でも自由に使えますが、データを扱うことができるので、セキュリティに注意する必要があります。

そこで用意されているものが、「APIキー」「シークレット」といわれるものです。メールアドレスとパスワードの組み合わせのようなものです。APIを利用する場合には、必ず必要になります。

アプリに設定して準備完了

取得した「APIキー」と「シークレット」をアプリ側に設定します。これで、外部から勝手に利用されることがなくなります。

これでAPIを使う準備は完了です。

リファレンスを見ながら実装する

準備が終わったら、あとはAPIのリファレンスを見ながら機能の使い方を覚えるだけです。実際にコードを書いてみて、APIを利用してみると便利さが体感できます!