omniauth for taobao
Ruby
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lib
.gitignore
Gemfile
README.md
Rakefile
omniauth-taobao.gemspec

README.md

How does omniauth-taobao work with Taobao

API permission levels

Taobao has three API permission levels

  • Default API (Requires additional approval from Taobao)
  • Buyer API
  • Seller API

These permission levels are granted during your app application process based on your app type. To configure omniauth-taobao work with the correct type, please use something like this (omniauth + device example in devise.rb file):

config.omniauth :taobao, "Your_APP_Key", "Your_APP_Secret", :strategy_class => OmniAuth::Strategies::Taobao, :client_options => {:user_type => :seller}

The :user_type option can be one of :default,:buyer and :seller.

User Get Info Response

Different API Permission levels needs to use different API to obtain user's info.

The documentation for these API can be found here

omniauth-taobao will chose the proper API method based on your :user_type option.

Sample API Response (For Seller API)

--- !ruby/hash:OmniAuth::AuthHash
provider: taobao
uid:
info: !ruby/hash:OmniAuth::AuthHash::InfoHash
  uid:
  nickname: UserNickName
  email:
  user_info: !ruby/hash:OmniAuth::AuthHash
    alipay_bind: bind
    consumer_protection: true/false
    nick: UserNickName
    seller_credit: !ruby/hash:OmniAuth::AuthHash
      good_num: 7
      level: 1
      score: 7
      total_num: 7
    sex: m
    status: normal
    type: C
    user_id: 1212121212
  extra: !ruby/hash:OmniAuth::AuthHash
    user_hash: !ruby/hash:OmniAuth::AuthHash
      alipay_bind: bind
      consumer_protection: true
      nick: UserNickName
      seller_credit: !ruby/hash:OmniAuth::AuthHash
        good_num: 7
        level: 1
        score: 7
        total_num: 7
      sex: m
      status: normal
      type: C
      user_id: 1212121212
credentials: !ruby/hash:OmniAuth::AuthHash
  token: Token
  refresh_token: refresh_token
  expires_at: 13722222220
  expires: true
extra: !ruby/hash:OmniAuth::AuthHash {}