CodeZine(コードジン)

特集ページ一覧

【Google Developer Day 2008】いつの間にか、大量のサービスをサポート「Google Data API」のまとめ

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加
2008/06/11 19:21

10日に開催されたGoogle Developer Day 2008において、Googleのソフトウェアエンジニア半谷 明氏が「Google Data API」の概要と現状、今後の展開について語った。

 10日に開催されたGoogle Developer Day 2008において、Googleのソフトウェアエンジニア半谷 明氏が「Google Data API」の概要と現状、今後の展開について語った。

半谷 明氏。マウンテンビュー本社で内部向けのWebアプリやData APIのサーバ開発、AppsのWebアプリの開発などを行っている
半谷 明氏。マウンテンビュー本社で内部向けのWebアプリやData APIのサーバ開発、AppsのWebアプリの開発などを行っている

 Google Data API(以下、GData)とは、Googleがウェブ上で提供しているさまざまなデータに、ブラウザの変わりにプログラムでアクセスできるサービス。AtomのAPP(Atom Publishing Protocol)をベースにした、新しいプロトコルを提供している。POST、GET、PUT、DELETEのHTTPリクエストによってデータに対してCRUDすることができ、それに対してXML形式でデータが返ってくる。

Google Data APIが使えるサービス

 GDataは、Google CalenderやYouTube、先日公開されたばかりのGoogle Healthなどさまざまなデータに対応している。また、クライアントアプリケーション作成時にXMLのパースを容易にするために、現在、6言語のライブラリが提供されている。

 対応しているサービスは次のとおり。

Google Data APIをサポートしているサービスと言語の一覧。現在、12のプロダクトと6言語に対応している
Google Data APIをサポートしているサービスと言語の一覧。現在、12のプロダクトと6言語に対応している
Google Apps

 ウェブメール、チャット、カレンダーなどの機能を独自ドメインで利用できるサービス。ユーザーグループの作成や同期をGData経由で行える。

Google Base

 ユーザーがどんな種類のコンテンツでも無料で投稿できるほか、それらの情報を他者が簡単に見つけ出せるようにするサービス。就職、賃貸、履歴書、車などさまざまな情報が格納されている。既に、ホンダやAppleがGoogle Baseを利用してデータベースを作成しているという。GDataを使用して、データ検索、アプリケーションやマッシュアップの作成、アイテムのプログラムによる入力および管理が可能。

Google Blogger

 Googleが提供するブログサービス。クライアントアプリケーションでGDataを使用して、新しいブログ記事の投稿、投稿済みの記事の編集や削除、特定の条件に一致する記事の検索を行うことができる。

Google Calendar

 Web上に自分のカレンダーを作ることができるおなじみのサービス。GDataを利用して、イベントの作成や携帯端末への同期などができる。

Google Code Search

 Web上で公開されているソースコードを検索するサービスで、正規表現も利用できる。これらの検索もGData経由で行える。

Google Contacts

 Gmailなどで使う「連絡先」。APIを使って携帯端末との同期を行うことも可能。

Google Health

 Web上で医療情報を管理できるサービス。処方箋や検査結果の記録などを自動的にインポートし、Google Healthを通じてアクセスできる。

Google Notebook

 オンラインのメモ/Webクリッピングサービス。公開されているノートブックのリスト取得などにGDataを利用できる。

Google Spreadsheets

 Web上の表計算ソフト。Spreadsheetsの内容の閲覧や、UploadをGData経由で行うことができる。

Google Document

 文書、スプレッドシート、プレゼンテーションをオンラインで作成できるサービス。MicrosoftのOfficeデータを取り込むこともできる。クライアントアプリケーションからGoogle Documentsにドキュメントをアップロードしたり、ドキュメントの一覧をGData形式のフィードで取得したりすることが可能。

Picasa Web Albums

 オンライン上の写真管理サービス。GDataを使って、自分のアルバム、写真、コメント、タグにアクセスできる。

YouTube

 言わずとしれた、動画共有サービス。GDataを使って、YouTube動画リポジトリとユーザー コミュニティにアクセスできる。

Atomにはない、クエリーへの対応

 GDataでは、クエリーにも対応しているため、データのフィルタリングや検索ができる。

 例えば、YouTubeの場合はvqというパラメータにキーワードを送るだけで検索結果を取得できる。googleというキーワードに当てはまる動画の検索結果を取得する場合は次のようになる。

 また、クエリーを使うことで必要なデータだけ(またはデータの一部だけ)を取得して、レスポンスを向上させることも可能となっている。

認証機能の仕組み

 AtomやRSSといった他フィードとの1番の違いは、Authentification(認証)機能を備えている点、つまりログインできる点にある。これにより、自分の属するドメインだけに公開するといったことが可能になる。オープンな情報へのアクセス時には必要ないが、セキュアで保護された個人情報(カレンダーのイベントや、Picasa内のプライベートな画像など)を取得するときにこの認証機能が必要となる。

 認証には、各サービス特有のトークンを利用している。AuthSubにより、パスワードなしの認証機能(Cookieを使う)を使用することもできる。

 トークンによる認証の流れは次のとおり。

  1. Google Account Serverにログイン
  2. トークンが返ってくる
  3. トークンを使ってGoogle Servicesにリクエスト
  4. Google ServicesがトークンをAcount Severに確認
  5. Account ServerからServicesに承認を渡す
  6. Servisesがデータをユーザーに送信
認証トークンの流れ。認証には、Google IDのEメールとパスワードを利用する
認証トークンの流れ。認証には、Google IDのEメールとパスワードを利用する

すべてのサービスをプログラミングサポート

 この様に、いつの間にか多くのサービスに対応していたGData。Google Developer Day 2008に合わせて、YouTubeOpenSocialのAPIドキュメントが日本語化されたことにより、日本でもより多くの開発者によって利用されていくことが予想される。

 また、今後のサポート予定に関する質問に対して「今の段階ではどの製品かは言えませんが、すべてのサービスをプログラミングサポートするロードマップはあります」と半谷氏は答えた。今後のさらなるサービス拡張が期待される。

 
【関連リンク】
Google Developer Day 2008
Google Data APIの概要

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加
All contents copyright © 2005-2020 Shoeisha Co., Ltd. All rights reserved. ver.1.5