ガジェカツ~在宅SEのガジェット活動ブログ~

在宅SEな筆者がガジェットネタやIT、プログラミングネタを書き連ねるブログ

Livedoor ReaderのAPIを探して全部まとめてみた。

はじめに

LivedoorReaderのAPIを利用したアプリケーションを作りたいのでAPIとその利用方法をまとめて見ました。
ここのページの情報は大部分が
http://d.hatena.ne.jp/nTeTs/20060422/1145637483http://d.hatena.ne.jp/takef/20070216/1171635948から引用です。
またApiKeyに関する情報はhttp://d.hatena.ne.jp/snaka72/20090517/1242519412から入手しました。
(こんな情報を公開していたid:nTeTsさん、id:takefさん、id:snaka72さんには大感謝です!)

Livedoor Reader APIを利用する前に

ここに乗っているAPIは公式には発表されていません、よって突然の仕様変更などがあるかも知れません。
またここに乗っているAPIを利用するにはログインをする必要があります。
ログインをしてもうまく利用できない場合はApiKeyも送って下さい。ApiKeyとはログイン時のCookieの中にあるreader_sidの中身です。
ApiKeyを送る時はApiKeyというパラメータで送って下さい。
ちなみに"/api/"から始まる相対アドレスは"http://reader.livedoor.com/api/"から始まる絶対アドレスということです。

更新通知API

オートディスカバリーAPI

Feed登録API

  • /api/feed/subscribe
    • param: feedlink
      • FeedのURLを渡す
    • method: post
      • Feedを登録する

Feed削除API

  • /api/feed/unsubscribe
    • param: subscribe_id
      • subscribe_idを渡す
    • method: post
      • Feedを削除する

Feed一覧取得API

  • /api/subs
    • param: unread
      • 0:全部 1:未読のみ
    • method: get/post
      • 登録してるFeedの一覧を取得する

Feed取得API(既読・未読問わず)

  • /api/all
    • param: subscribe_id
      • subscribe_idを渡す
    • param: offset
      • 取得開始位置を渡す
    • param: limit
      • 取得するFeed数を渡す
    • method: get/post
      • Feedから既読・未読問わず全ての記事を取得する。offsetとlimitは任意。

未読取得API

  • /api/unread
    • param: subscribe_id
      • subscribe_idを渡す
    • method: get/post
      • Feedから未読記事のみを取得する。

既読化API

  • /api/touch_all
    • param: subscribe_id
      • subscribe_idを渡す
    • method: get/post
      • Feedの未読記事を全て既読にする。

レート設定API

  • /api/feed/set_rate
    • param: subscribe_id
      • subscribe_idを渡す
    • param: rate
      • レートを渡す。多分0〜5
    • method: post
      • Feedにレートを設定する。

フォルダ取得API

  • /api/folders
    • method: get/post
      • フォルダを全件取得する。

フォルダ作成API

  • /api/folder/create
    • param: name
      • フォルダ名を渡す
    • method: post
      • フォルダを作成する。

フォルダ削除API

  • /api/folder/delete
    • テストで実行してみたらErrorCodeが返ってきたので実装はされていると思う。けど詳細不明。

フォルダ移動API

  • /api/feed/move
    • param: subscribe_id
      • subscribe_idを渡す
    • param: to
      • 移動先フォルダ名を渡す
    • method: post
      • Feedを指定先フォルダへ移動させる

ピン取得API

  • /api/pin/all
    • method: post

ピン追加API

  • /api/pin/add
    • param: link
      • URLを渡す
    • param: title
      • タイトルを渡す
    • method: post

ピン消去API

  • /api/pin/remove
    • param: ApiKey
      • ApiKeyを渡す
    • param: link
      • URLを渡す
    • method: post

ピン全消去API

  • /api/pin/clear
    • method: post

コンフィグ保存API

  • /api/config/save?
    • param: Config
      • Confgiオブジェクトを渡す。パラメータいっぱいあって調べるの面倒。ソース開いてDefaultConfigとかgrepかけて見てみればいいやも。
    • method: 不明(恐らくpostのみ)
      • コンフィグを保存する

コンフィグロードAPI

  • /api/config/load
    • param: timestamp
      • DateオブジェクトのgetTime()の値を渡す。now = new Date; now.getTime()しなくてもnew Date - 0 の値でよい
    • method: get/post
      • コンフィグをロードする