Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Ruby library for consuming Google, Yahoo!, Flickr and Windows Live contact APIs
branch: master
Failed to load latest commit information.
spec made windows live results return a collection of contact objects as well
vendor add mislav/fakeweb as submodule and compensate for the changes
.gitignore doc love baby
MIT-LICENSE helper for AuthSub request
README.rdoc update Contacts::Google docs
Rakefile add mislav/fakeweb as submodule and compensate for the changes


Basic usage instructions

Fetch users' contact lists from your web application without asking them to provide their passwords.

First, register your application's domain. Then make users follow this URL:


They will authenticate on Google and it will send them back to the URL provided. Google will add a token GET parameter to the query part of the URL. Use that token in the next step:

gmail =[:token])
# => [#<Contact 1>, #<Contact 2>, ...]

The resulting Contacts::Contact objects have `name` and `email` properties.

Read more in Contacts::Google. I plan to support more APIs (Microsoft Live, for starters); feel free to contribute.

Author: Mislav Marohnić (

Documentation auto-generated from specifications


  • generates a URL for target with default parameters

  • should handle boolean parameters

  • skips parameters that have nil value

  • should be able to exchange one-time for session token


  • fetches contacts feed via HTTP GET

  • handles a normal response body

  • handles gzipped response

  • raises a FetchingError when something goes awry

  • parses the resulting feed into name/email pairs

  • parses a complex feed into name/email pairs

  • makes modification time available after parsing

Contacts::Google GET query parameter handling

  • abstracts ugly parameters behind nicer ones

  • should have implicit :descending with :order

  • should have default :limit of 200

  • should skip nil values in parameters

Something went wrong with that request. Please try again.