Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

72 lines (57 sloc) 2.479 kb

APIClient

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

Build Status Dependency Status

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('plus').to_h.keys

# Make an API call
result = client.execute(
  'plus.activities.list',
  {'collection' => 'public', 'userId' => 'me'}
)

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
Jump to Line
Something went wrong with that request. Please try again.