Tumbz
This gem allows you to easily use the Tum.bz API. It’s powered by Her.
Installation
Add this line to your application’s Gemfile:
“by gem ‘tumbz’, :git => “git://github.com/remiprev/tumbz.git”, :branch => “master”
“
And then execute:
$ bundle
Usage
First, you must define a configure
block with your API key:
“by Tumbz.configure do |config| config.api_key = “nzaEhGbo4B9yAOn1GKveoSL003sexY9F” end
“
That’s it! You’ll then be able to use :
“by Tumbz::User.find(“remi”)
=> #Tumbz::User(users/4f0e32936edcb2000100029d) id="4f0e32936edcb2000100029d" username="remi" profile_url="http://tum.bz/u/remi" firstname="Rémi" lastname="Prévost"…
Tumbz::Product.search(:q => “office”, :cat => “tv”)
=> [#]
“
Other modules are:
Tumbz::Comment
Tumbz::Like
Tumbz::Review
Tumbz::PartnerLookup
Tumbz::Product
Tumbz::User
Tumbz::UserSuggestion
The API wrapper is powered by Her, so most of its documentation will be helpful.
OAuth
Support for OAuth-authenticated calls is supported, but very premitive (not quite thread-safe). Here’s how it works:
“by Tumbz::User.sign_in!(“
Maruku could not parse this XML/HTML:
<email>", "<password>")
=> “abc123edgfh” (next calls will be made as the authenticated user using this key)
review = Tumbz::Review.create(:product_external_id => “tt0458339”, :positive => “1”, :cat => “movie”)
=> #Tumbz::Review(reviews/50b9ebd7a9d29c000200af7c) id="50b9ebd7a9d29c000200af7c" positive=true text=""…
Tumbz::User.sign_out!
=> true (next calls will be made anonymously)
review = Tumbz::Review.create(:product_external_id => “tt0458339”, :positive => “1”, :cat => “movie”)
=> #Tumbz::Review(reviews)
review.errors
=> [Token is invalid or expired]
“
You don’t need to use User.sign_in!
each time, you can also set the access_token
manually (eg. if you store it in a session):
“by Tumbz.access_token = “abc123edgfh” review = Tumbz::Review.create(:product_external_id => “tt0458339”, :positive => “1”, :cat => “movie”)
=> #Tumbz::Review(reviews/50b9ebd7a9d29c000200af7c) id="50b9ebd7a9d29c000200af7c" positive=true text=""…
“
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request