Skip to content

Instantly share code, notes, and snippets.

@gosuri
Created April 13, 2013 22:05
Show Gist options
  • Save gosuri/5380270 to your computer and use it in GitHub Desktop.
Save gosuri/5380270 to your computer and use it in GitHub Desktop.
require 'sinatra'
require 'oauth2'
require 'rest_client'
require 'json'
get '/' do
redirect client.auth_code.authorize_url(:redirect_uri => 'http://localhost:4567/callback', :state => 'your_api_is_crap')
end
get '/callback' do
token = client.auth_code.get_token(params['code'], :redirect_uri => 'http://localhost:4567/callback')
access_token = OAuth2::AccessToken.new(client, token.token, { :mode => :query, :param_name => "oauth2_access_token"})
res = access_token.get('https://api.linkedin.com/v1/company-search', :params => { :keywords => 'angelhack', :format => "json" })
res.body
end
def client
key = 'q4i0tbqcm9ki'
secret = 'PYmJWSLqcleIyUVr'
oauth_token = '352e9811-5110-45b0-b531-fe344f44ec78'
oauth_secret = 'c79ce22c-ff3b-4405-b5c9-30a9c53422ef'
site = 'https://www.linkedin.com'
@client ||= OAuth2::Client.new(key, secret,
:site => site,
:authorize_url => '/uas/oauth2/authorization',
:token_url => "/uas/oauth2/accessToken"
)
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment