0.0
No commit activity in last 3 years
No release in over 3 years
Simple foursquare api client
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies
 Project Readme

Foursquared

Simple client library for Foursquare API V2 with OAuth2 authentication

Installation

Add this line to your application's Gemfile:

gem 'foursquared'

And then execute:

$ bundle

Or install it yourself as:

$ gem install foursquared

Usage

OAuth2 Authentication

Foursquare OAuth2 authentication is integrated here. First you will have to initialize a Foursquared::OAuth::Client object with the client id, client secret and the callback url

oauth_client = Foursquared::OAuth::Client.new("your_client_id", "your_client_secret", "http://yourcallbackurl")

Obtain the authentication url

auth_url = oauth_client.authorize_url

Redirect the user to the above obtained auth_url. After user gives access to your app, they will be redirected to the callback url with a 'code' parameter. Extract this code and get the access token by invoking the following method

access_token = oauth_client.get_access_token("the_extracted_code")

Instantiate a client

After getting the access token instantiate the Foursquared client

client = Foursquared::Client.new(:access_token => "your_acess_token")

For userless access you can skip the above step and instantiate the client with your client id and client secret.

client = Foursquared::Client.new(:client_id => "your_client_id", :client_secret => "your_client_secret")

Features

  1. Every response item is an object. For example, every user will be a Foursquared::Response::User.
  2. Each object will have its own actions. For example you can friend, unfriend or deny the request from a user after retrieving the user object.

Examples

You can always navigate to the documentation for a list of all supported methods and available options.

Get user details

client.user(10230)

Get a venue details

venue = client.venue("4b2afcaaf964a5205bb324e3")

Checkin at a venue

You can use the above obtained Foursquared::Response::Venue object to checkin

venue.checkin(:broadcast => 'public', :ll => '36.142064,-86.816086', :shout => 'zomg coffee!1!')

You can also directly checkin at a venue providing its venue id.

client.add_checkin(:venueId => "4b2afcaaf964a5205bb324e3", :broadcast => 'public', :ll => '36.142064,-86.816086', :shout => 'zomg coffee!1!')

Todo

  • Add more tests
  • Improve documentation
  • Integrate more endpoints

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request