Go to file
Bob Aman 4db326a3ed Added task for wiki autogeneration. 2011-10-15 11:22:36 +03:00
bin Fixed issue with registering custom discovery URIs. 2011-10-07 12:19:29 +03:00
examples Don't repeat yourself. 2011-10-12 00:00:57 +03:00
lib/google Added task for wiki autogeneration. 2011-10-15 11:22:36 +03:00
spec Fixed issues with recursive structures and external references. 2011-10-05 14:13:39 +03:00
tasks Added task for wiki autogeneration. 2011-10-15 11:22:36 +03:00
.gitignore Added task for wiki autogeneration. 2011-10-15 11:22:36 +03:00
CHANGELOG Fixed issue with version and moved version back to 0.3.0. 2011-10-15 11:21:21 +03:00
LICENSE Basic project skeleton. 2010-07-28 19:30:56 +00:00
README.md Updated READMEs to use Markdown format. 2011-10-06 11:48:53 +03:00
Rakefile Gem spec requires author to be supplied. 2011-08-02 14:39:46 -04:00

README.md

APIClient

Homepage
http://code.google.com/p/google-api-ruby-client
Author
Bob Aman
Copyright
Copyright © 2011 Google, Inc.
License
Apache 2.0

Description

The Google API Ruby Client makes it trivial to discover and access supported APIs.

Example Usage

# Initialize the client
require 'google/api_client'
require 'signet/oauth_1/client'
client = Google::APIClient.new(
  :service => 'buzz',
  # Buzz has API-specific endpoints
  :authorization => Signet::OAuth1::Client.new(
    :temporary_credential_uri =>
      'https://www.google.com/accounts/OAuthGetRequestToken',
    :authorization_uri =>
      'https://www.google.com/buzz/api/auth/OAuthAuthorizeToken',
    :token_credential_uri =>
      'https://www.google.com/accounts/OAuthGetAccessToken',
    :client_credential_key => 'anonymous',
    :client_credential_secret => 'anonymous'
  )
)
client.authorization.fetch_temporary_credential!(
  :additional_parameters => {
    'scope' => 'https://www.googleapis.com/auth/buzz'
  }
)
redirect_uri = client.authorization.authorization_uri(
  :additional_parameters => {
    'domain' => client.authorization.client_credential_key,
    'scope' => 'https://www.googleapis.com/auth/buzz'
  }
)
# Redirect user here
client.authorization.fetch_token_credential!(:verifier => '12345')

# Discover available methods
method_names = client.discovered_api('buzz').to_h.keys

# Make an API call
response = client.execute(
  'chili.activities.list',
  {'scope' => '@self', 'userId' => '@me', 'alt' => 'json'}
)
status, headers, body = response

Install

Be sure http://rubygems.org/ is in your gem sources.

For normal client usage, this is sufficient:

$ sudo gem install google-api-client

The command line interface, the example applications, and the test suite require additional dependencies. These may be obtained with:

$ sudo gem install google-api-client --development --force --no-rdoc --no-ri