Web APIとは

WEB APIとは

WEB APIとは、オンライン上で利用できるアプリケーションです。
Google,Yahoo,Amazon,ぐるなび,楽天,Facebook,Twitter他、有名WEBサービスがそれぞれが独自のAPIを公開しており、ユーザーはこれらのAPIを利用する事で、各サービスのデータを検索したりサイトで利用したり出来るようになります。

使い方としては、サイト内に設置して
今日のお天気、運勢、商品価格、在庫情報、Twitter(つぶやき)表示など、常に最新情報が表示できるという点が、API最大のメリットです。

 

具体的に各社のAPIを紹介します。


amazon API 
・アマゾンから最新商品情報を引っ張ってきて、自分のサイトにのせる。
・アマゾンの最安値価格・中古価格を自動で取得 等。
出力:XML形式
サイト:Amazon Web Services
仕様:Product Advertising API

楽天 API (楽天商品検索API)
・自サイト内で商品検索が可能。在庫情報や値段変動も取得。
・楽天トラベルでは空室情報もゲットできます。
出力:SOAP/JSONP,JSON,XML形式
サイト:楽天商品検索API

ぐるなびAPI
・店舗情報取得
・自サイト内で、店舗絞り込み検索+結果一覧を表示する。等
・Yahoo又はGoogleのマップAPIと組み合わせて、レストラン案内サイトの構築とか。
出力:XML形式
サイト:ぐるなびWebサービス

Google API (Google Maps API)
・地図情報を色々な形で取得可能。3Dマップも。
出力:Maps API ジオコーダでXML・KML・CSV・JSON形式対応
サイト:Google Maps API
GoogleはMap以外にも解析・チャート・検索系APIが用意されていますが略。

Yahoo API 
・地図、オークション、ショッピング、検索、天気予報、テキスト解析など、各種Yahooサービスが利用可能。
出力:XML・json・PHP Serialize形式対応
サイト:Yahoo!デベロッパーネットワークサービス一覧

Facebook API (Graph API)
・フォトアルバム・チェックイン・コメント・イベント他、ほぼ取得できるみたいです。
出力:不明(JSON形式?)
サイト:Graph API – Facebook Developers(英語)

Twitter API
・自サイトや自作アプリからつぶやき投稿や検索が可能になる。
出力:JSON・XML形式対応 (一部RSS・Atom形式でも所得可能)
公式:Twitter Developers(英語)
参考サイト:Twitter API – TwitterまとめWiki

これらの他にも様々なWEB APIが公開されています。

プラグインやブログパーツと違い、アイディア次第では自身のコンテンツ内に設置していろいろと利用できそうです。

WEB APIを使うには

WEB APIを使うには

利用開始するには

WEB APIの種類によって利用方法は異なりますが、基本的にはそれぞれのAPIに利用登録⇒APIキーを取得すると利用することができるようになります。

利用登録⇒APIキー取得と聞くと難しいように思いがちですが、WEB会員サイトにログインしてパスワードを発行してもらうという他のサービスと一緒です。
利用登録がいらないAPIサービスもありますので、利用する際にはかならず利用規定を読んでください。ほとんどのWEB APIは無料で利用できますし、APIキーの取得も無料のAPIがほとんどです。

WEB APIの開発は、Try&Errorの繰り返しなので、いろいろ考えたり、本やまとめサイトを見るというより、実際に自分で動かしてみたほうが慣れると思います。

しかし、開発時にはマナーのようなものがあって、いきなりオンラインで動かすと危険が伴いますので、まずはローカルにPHP開発環境を整えてから動かすことをお薦めします。

 

リクエスト送信

各APIサービスにリクエスト(キーワード絞り込み等)を送ると、情報がXMLやJSON、RSS形式等で出力されて帰ってきます。

たとえば Google検索で 検索したい言葉を入力して検索ボタンをクリックするとババーッと情報が表示されるといった感じです。

APIによりリクエスト方法やデータフォーマットは異なりますが、どのAPIも流れはほぼ同じです。

APIを利用する時は、こんな感じで出力されたXMLやJSONデータを見やすいように解析して自サイトやアプリで利用することになります。

 

レンタルサーバーなど契約して実際に動かす

WEB APIを使うなら、有料のレンタルサーバー契約が必須になると思います。
個人でWEBサーバーを立てている方は少ないと思いますし、プログラムの安定性を求めるためには、ほぼ確実にレンタルサーバーを利用することになると思います。


注意するのは、無料のレンタルサーバーではPHP、Perlの実行環境が整ってない事が多ので、WEB APIには向いていません。

また、ライブドアブログ・アメーバブログなどの無料ブログで動かすのは、かなり厳しいと思います。 Javascriptを駆使すれば、不可能ではないのかもしれませんが、基本的に無料ブログにはjsファイル等の外部ファイルを置いておくフリースペースは提供されていません。

どちらにせよフリーで使えるサーバーがあったほうが便利なので、WEB APIを使うなら、はじめからPHPが動くレンサバ借りた方がいいです。

WEB APIで何をするか

WEB APIを使ったら

結論から言うと、PHP、Perl、Javascript系の知識が全くない人、触ったことのない人、プログラム系は苦手という人にはWEB API使用は難しいかもしれません。

取得できるデータはダダーッと文字情報が並んでいるだけで見難いです。当然このままでは使えないので、XMLやJSON形式のデータを見やすいHTMLに整えなければならないのです。

その際に、PHPとかJavascript等のプログラミング言語を使用しないとデータの利用が難しいのです。

リクエスト送信して得た情報をPHPなどで自動リクエスト⇒自動で取得⇒自動でHTML表示するように組み替えます。

具体的に言うと、ユーザーがボタンをクリックした時や、ページを開いた時に自動でリクエスト+結果を表示するようにPHPで組んでいくのです。

プログラムを組むのが好きという方なら問題ないでしょう。

 

WEB APIを使っての例で一番わかりやすいものは、

Google WEB API ならば

  • 検索
  • キャッシュの取得
  • スペルチェック
  • 検索にヒットした件数
  • 結果のURL
  • 結果のタイトル、要約

を API で検索できるといったことでしょうか。

他にもいろいろな API を利用したら何千、何万というデータから有益な情報をユーザーに提供する事が可能です。

お天気、占いの結果、人気の動画ランキング、最新の在庫情報、画像、空室状況、店舗の位置情報など、考えたらキリがないかもしれません。
これらの情報を個人でやる事は不可能に近いですが、WEB APIを導入すれば簡単に実装でき、サイトも華やかになります。自信のある方はチャレンジしてみるとよいでしょう。

TOPへ戻る