Google+がユーザーの一般公開ストリーム取得用APIを公開 – 仕様と制限

本日、Gooogle+が第一弾としましてユーザーの公開ストリームを取得するためのAPIを公開しました。

Google+ではサークル機能を使って「共有」と呼ばれる投稿の公開先を都度指定できますが、今回は一般公開されている「共有」に限定してアクセスが可能なAPIが公開されました。

ここでは、Google+ APIの仕様を簡単に説明させていただきます。

まず、ユーザーストリームの取得にはpeople.getのメソッドを使用します。

たとえば、私自身のストリームを例に使わせていただくと、以下のようなHTTPリクエストでストリームが取得可能です:

GET https://www.googleapis.com/plus/v1/people/104773279548546374529?key=yourAPIKey

するとこのようなデータが返ってきます。(見やすいにように一部省略)

{
 "kind": "plus#person",
 "id": "104773279548546374529",
 "displayName": "朝山貴生",
 "tagline": "Google+の最新情報を配信しています! CEO of Overtex Group.",
 "gender": "male",
 "aboutMe": "CEO of Overtex Group.",
 "url": "https://plus.google.com/104773279548546374529",
 "image": {
  "url": "https://lh5.googleusercontent.com/-H3FIscUr2eI/AAAAAAAAAAI/AAAAAAAACjY/SquB-6AZYqY/photo.jpg"
 },
 "urls": [
  {
   "value": "http://takao.asaya.ma/"
  },
  {
   "value": "https://plus.google.com/104773279548546374529",
   "type": "profile"
  },
  {
   "value": "https://www.googleapis.com/plus/v1/people/104773279548546374529",
   "type": "json"
  }
 ],
 "organizations": [
  {
   "name": "関西学院大学 KGU",
   "title": "商学部",
   "type": "school"
  },
  {
   "name": "Overtex Corp.",
   "title": "CEO",
   "type": "work"
  }
 ],
 "placesLived": [
  {
   "value": "Sunnyvale, CA, USA"
  },
  {
   "value": "東京",
   "primary": true
  }
 ]
}
同様に、最新の「共有」ストリームをpeople.activitiesメソッドで取得できます:
GET https://www.googleapis.com/plus/v1/people/104773279548546374529/activities/public?key=yourAPIKey

結果の例はこのようになります:

{
 "kind": "plus#activityFeed",
 "nextPageToken": "eJxb85aBtbiIQTArsSxRLycxL13PM68kNT21SOjRgiXfG9stmBgYPRlYyxJzSlMrihgEEOr8SnOTUova1kyV5Z7yoJuJgaGigIFBtaG4kKGOAQTY4SyR0iIGpmhP310JamWvNi2FKmVg362wJeHKzUAL28mnq2ZbFuxbrHvym7_sB6uelwXbS0GaWRkYGHUcgEobGBgcGKAAqJ1BgYmFgRBggWIwUGDggLIYGQQgDAGYYTASChwYMAAHDgkBdAsV4IrhNDO6cpgxDqjCeAGS1QoI66BMRgwjULhgdQkOIGUwgzgY0AATugBYJRuKaUhugJiF0CwAE2hAspUHi-Ox6IYLAl0JdKkDQwPCkAAorYBNAwYARzbuwGyABgG6YQ5IusFBg8s2iAomdA_BbQTrayDoTAZwACDCAB72DdiiAe4wJrgkhvsw8wIL2AIFFhaYRRyosggdSBJMKEowU0kDgskBdwaHAwuqMLpG1Mh2AImwMDMQAtC49MAqyYiq0AFVFxGpBaECpreBgA6sSRYRYA4gI6FqALKSRVM",
 "selfLink": "https://www.googleapis.com/plus/v1/people/104773279548546374529/activities/public?",
 "nextLink": "https://www.googleapis.com/plus/v1/people/104773279548546374529/activities/public?maxResults=20&pageToken=eJxb85aBtbiIQTArsSxRLycxL13PM68kNT21SOjRgiXfG9stmBgYPRlYyxJzSlMrihgEEOr8SnOTUova1kyV5Z7yoJuJgaGigIFBtaG4kKGOAQTY4SyR0iIGpmhP310JamWvNi2FKmVg362wJeHKzUAL28mnq2ZbFuxbrHvym7_sB6uelwXbS0GaWRkYGHUcgEobGBgcGKAAqJ1BgYmFgRBggWIwUGDggLIYGQQgDAGYYTASChwYMAAHDgkBdAsV4IrhNDO6cpgxDqjCeAGS1QoI66BMRgwjULhgdQkOIGUwgzgY0AATugBYJRuKaUhugJiF0CwAE2hAspUHi-Ox6IYLAl0JdKkDQwPCkAAorYBNAwYARzbuwGyABgG6YQ5IusFBg8s2iAomdA_BbQTrayDoTAZwACDCAB72DdiiAe4wJrgkhvsw8wIL2AIFFhaYRRyosggdSBJMKEowU0kDgskBdwaHAwuqMLpG1Mh2AImwMDMQAtC49MAqyYiq0AFVFxGpBaECpreBgA6sSRYRYA4gI6FqALKSRVM",
 "title": "Plus Public Activity Feed for 朝山貴生",
 "updated": "2011-09-15T20:22:52.440Z",
 "id": "tag:google.com,2010:/plus/people/104773279548546374529/activities/public",
 "items": [
  {
   "kind": "plus#activity",
   "title": "おはようございます!今朝はいきなりFacebookが大きな方向転換を見せました! 「Facebookがtwitterのフォローのような『フィード購読』機能を提供開始し個人のフィードをオープン化へ...",
   "published": "2011-09-14T23:09:49.000Z",
   "updated": "2011-09-14T23:09:50.323Z",
   "id": "z12gufrodmrwip3xo04ci3oykwi3wzlxjjk",
   "url": "https://plus.google.com/104773279548546374529/posts/X8RgvxydqCU",
   "actor": {
    "id": "104773279548546374529",
    "displayName": "朝山貴生",
    "url": "https://plus.google.com/104773279548546374529",
    "image": {
     "url": "https://lh5.googleusercontent.com/-H3FIscUr2eI/AAAAAAAAAAI/AAAAAAAAAAA/CF_qwnUcp2I/photo.jpg"
    }
   },
   "verb": "post",
   "object": {
    "objectType": "note",
    "url": "https://plus.google.com/104773279548546374529/posts/X8RgvxydqCU",
    "content": "おはようございます!今朝はいきなりFacebookが大きな方向転換を見せました!\u003cbr /\u003e\u003cbr /\u003e「Facebookがtwitterのフォローのような『フィード購読』機能を提供開始し個人のフィードをオープン化へ」\u003cbr /\u003e\u003cbr /\u003e\u003ca href=\"http://takao.asaya.ma/article_2674.html\" \u003ehttp://takao.asaya.ma/article_2674.html\u003c/a\u003e",
    "url": "https://plus.google.com/104773279548546374529/posts/X8RgvxydqCU",
    "replies": {
     "totalItems": 44
    },
    "plusoners": {
     "totalItems": 72
    },
    "resharers": {
     "totalItems": 45
    },
    "attachments": [
     {
      "objectType": "article",
      "displayName": "Facebookがtwitterのフォローのような『フィード購読』機能を提供開始し個人のフィードをオープン化へ",
      "content": "本日Facebookが、ワンクリックで他のユーザーのフィードを購読できる、「フィード購読」という機能を提",
      "url": "http://takao.asaya.ma/article_2674.html"
     },
     {
      "objectType": "photo",
      "image": {
       "url": "http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=http%3A%2F%2Ftakao.asaya.ma.s3-website-us-east-1.amazonaws.com%2Fwp-content%2Fuploads%2F2010%2F10%2Ffacebook-e1287420369475.png",
       "type": "image/jpeg"
      },
      "fullImage": {
       "url": "http://takao.asaya.ma.s3-website-us-east-1.amazonaws.com/wp-content/uploads/2010/10/facebook-e1287420369475.png",
       "type": "image/jpeg"
      }
     }
    ]
   },
   "provider": {
    "title": "Google+"
   },
   "access": {
    "kind": "plus#acl",
    "items": [
     {
      "type": "public"
     }
    ]
   }
  }
 ]
}

APIを使用する際には、oAuth2のplus.me scopeを使用して、ユーザーが誰かを判別することが出来ます。判別後は以下の簡単なHTTPリクエストでユーザー情報を取得できます。

GET https://www.googleapis.com/plus/v1/people/me

また、Google+ APIでは以下の標準仕様を出来るだけ採用しているとのことです。

  • JSONフォーマットを返すREST API
  • ユーザー情報にはPoCoフォーマット
  • ユーザーのアクティビティにはActivityStrea.msフォーマット
  • ユーザー認証にはoAuth 2

そして、PHP、Ruby、Python、Java、.NETなどのライブラリがすでにこちらからダウンロード可能です。

今回、晴れて待望のGoogle+ API公開となったわけですが、残念ながらAPIはこのように公開ストリームの取得に限定されているだけではなく、API Consoleで申請をしてみたところ、1日たった1,000回までのアクセスしか認められておらず、あくまでもテスト用の公開としか思えない状況です。

API経由でGoogle+に投稿できるようになるには、まだまだ時間がかかりそうです。

正式な発表(英文)はこちら、APIの仕様(英文)はこちらをどうぞ。

 

今後もGoogle+最新情報を配信しますのでもしよろしければ是非Google+で私をフォローしてみてください。

Facebook上にもGoogle+ユーザーのページがありますのでよろしければそちらの「いいね!」もどうぞ。

招待状が欲しい方は、こちらからGoogleアカウントのメールアドレスをお知らせください。

また、他のGoogle+関連記事はこちらから。

コメントを残す

Top