Tumblr API v2 の Ruby ライブラリ “tumblife for ruby” 作りました
更新しました。
使い方/書き方が大幅に変わったのでアップデートする場合は注意してください。
インストール
gem install tumblife
使い方
Tumblr API v2 は OAuth 必須です。
まずは Tumblr にアプリケーション登録をし、OAuth Consumer Key を発行して貰う必要があります。
require 'tumblife'
Tumblife.configure do |config|
config.consumer_key = '*** consumer key ***',
config.consumer_secret = '*** consumer secret ***',
config.oauth_token = '*** oauth token ***',
config.oauth_token_secret = '*** oauth token secret ***'
end
client = Tumblife.client
avatar = client.avatar('mitukiii.tumblr.com')
avatar.avatar_url # => http://30.media.tumblr.com/avatar_3a8918dc3a7b_64.png
info = client.info('mitukiii.tumblr.com')
info.blog.name # => mitukiii
info.blog.url # => http://mitukiii.tumblr.com/
dashboard = client.dashboard
dashboard.posts.each do |post|
# ... do something
end
必要なもの
oauth
json(ruby 1.9 未満の場合)
hashie
activesupport
API
このライブラリは API を薄くラップし、レスポンスの JSON を Hashie 形式で返してるだけです。
各 API とメソッドとの対応は以下の通りです。
| Tumblife | Tumblr |
|---|---|
| info(base_hostname, params = {}) | /v2/blog/{base-hostname}/info |
| avatar(base_hostname, params = {}) | /v2/blog/{base-hostname}/avatar |
| followers(base_hostname, params = {}) | /v2/blog/{base-hostname}/followers |
| posts(base_hostname, params = {}) | /v2/blog/{base-hostname}/posts |
| queue(base_hostname, params = {}) | /v2/blog/{base-hostname}/posts/queue |
| draft(base_hostname, params = {}) | /v2/blog/{base-hostname}/posts/draft |
| submission(base_hostname, params = {}) | /v2/blog/{base-hostname}/posts/submission |
| create_post(base_hostname, params = {}) | /v2/blog/{base-hostname}/post |
| edit_post(base_hostname, params = {}) | /v2/blog/{base-hostname}/post/edit |
| reblog_post(base_hostname, params = {}) | /v2/blog/{base-hostname}/post/reblog |
| delete_post(base_hostname, params = {}) | /v2/blog/{base-hostname}/post/delete |
| dashboard(params = {}) | /v2/user/dashboard |
| likes(params = {}) | /v2/user/likes |
| following(params = {}) | /v2/user/following |
| follow(params = {}) | /v2/user/follow |
| unfollow(params = {}) | /v2/user/unfollow |
| info_user(params = {}) | /v2/user/info |
各 API の詳細については下記を参照してください。
API | Tumblr
ソースコード
mitukiii/tumblife-for-ruby – GitHub
ライセンス
WTFPLとします。
どうぞご自由にお使いください。