[[FrontPage]]

#contents

MZ3やその派生クライアントにてGoogleReaderにアクセスするためのAPIまとめ。

基本的には下記いずれかを参考にしている。

- http://colo-ri.jp/develop/2009/12/google-reader-apiapi.html
- http://code.google.com/p/pyrfeed/wiki/GoogleReaderAPI

以降、いずれのAPIも例のみを記載することとする。詳細については http://code.google.com/p/pyrfeed/wiki/GoogleReaderAPI を参考にすること。細かいパラメータはクライアントに応じて調整すべきですね。

* ログイン [#gdfe5a99]

Gmail と同じもしくはより簡潔に実装できるはず。上記ページを参考に。

* 一覧系 [#u4669733]
** フォルダ一覧 [#se79f997]

http://www.google.co.jp/reader/api/0/tag/list?output=xml&client=MZ3

** 登録フィード一覧 [#t7f0386d]

http://www.google.co.jp/reader/api/0/subscription/list?output=xml&client=MZ3

** 未読数一覧(各フィードの未読数) [#t1562281]

http://www.google.co.jp/reader/api/0/unread-count?output=xml&client=MZ3


* アイテム取得 [#u7a76b0a]
** スター付き一覧 [#sc52dba0]

http://www.google.co.jp/reader/atom/user/-/state/com.google/starred

http://www.google.co.jp/reader/atom/user/-/state/com.google/starred?n=3&client=MZ3

** あるフォルダのフィード一覧 [#g93294c9]

フォルダ一覧で取得したXMLの /object/list/object/string[name="id"] が
 user/18166215988989804788/label/00_ITニュース
のような部分URLになっている。これを上記スター付き一覧のように組み立てることでフォルダのフィードを取得できる。

 http://www.google.co.jp/reader/atom/user/18166215988989804788/label/00_ITニュース

* 編集 [#ff0bee0b]
** 既読 [#v3c94f03]

edit-tag API で user/-/state/com.google/read タグを付与することで「既読」になる。つまり、read は過去形ということですね。

Firefox の LiveHTTPHeaders によれば
 POST /reader/api/0/edit-tag?client=scroll&hl=ja HTTP/1.1
 a=user%2F18166215988989804788%2Fstate%2Fcom.google%2Fread
 async=true
 s=feed%2Fhttp%3A%2F %2Fblogsearch.google.com%2Fblogsearch_feeds%3Fhl%3Den%26c2coff%3D1%26lr%3Dlang_ja%26safe%3Dactive%26scoring%3Dd%26q%3DMZ3%26ie%3Dutf-8%26num%3D10%26output%3Datom
 i=tag%3Agoogle.com%2C2005%3Areader%2Fitem%2F00b929839cf2133b
 T=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
で既読にできるらしい。

[http://code.google.com/p/pyrfeed/wiki/GoogleReaderAPI API仕様書]によれば、
 POST http://www.google.co.jp/reader/api/0/edit-tag?output=xml&client=MZ3
 i=フィード取得時のID。
   例:<id gr:original-id="http://journal.mycom.co.jp/column/graphics/076/index.html">
      tag:google.com,2005:reader/item/6fe653022f9d63c3
      </id>
 a=user%2F18166215988989804788%2Fstate%2Fcom.google%2Fread
 ac=edit
 token=トークン取得APIで取得した文字列。1つ前の例の T パラメータと同じかと。
になるはず。基本的にどちらでもできる、はず。

・・・後者ではできなかった。実装は google_reader.lua 参照。

2010/01/16 補足
token=XX ではなく T=XX にする必要アリ。
実装は google_reader.lua 参照。


トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS