This is the official OmniAuth strategy for authenticating to qnyp. To use it, you'll need to register your application on qnyp Applications Page (Login required).
First start by adding this gem to your Gemfile:
gem 'omniauth-qnyp'
Next, tell OmniAuth about this provider.
For a Rails app, your config/initializers/omniauth.rb
file should look like this:
Rails.application.config.middleware.use OmniAuth::Builder do
provider :qnyp, ENV.fetch('QNYP_APP_ID'), ENV.fetch('QNYP_APP_SECRET'), scope: 'public'
end
Replace QNYP_APP_ID
and QNYP_APP_SECRET
with your application ID and application secret.
qnyp API lets you set scopes to provide granular access to different types of data.
If you want to access public information by API, specify scope:
option with public
:
Rails.application.config.middleware.use OmniAuth::Builder do
provider :qnyp, '...', '...', scope: 'public'
end
Or, if you want to access public information and write a log by API, specify scope:
option with public write
:
Rails.application.config.middleware.use OmniAuth::Builder do
provider :qnyp, '...', '...', scope: 'public write'
end
OmniAuth will return an authentication hash similar to the example below. Learn more about the Auth Hash Schema.
{
"provider" => "qnyp",
"uid" => 1, # User ID
"info" => {
"language" => "ja", # Preffered language for UI (ja or en)
"name" => "junya", # Name for display
"profile_image_url" => "http://example.com/profile_image.png", # Profile image URL
"username" => "junya", # Username (unique identifier)
},
"credentials" => {
"expires" => false,
"token" => "...", # Access token
}
}
$ bundle install
- Fork it ( https://github.com/qnyp/omniauth-qnyp/fork )
- 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 a new Pull Request
The MIT License (MIT) Copyright (c) 2017 qnyp, LLC.
See LICENSE.txt
.