Sha256: c6c78fd8e4d63423a7adf08db8d63afc2a9a6a5354dfd109c9fe432ce6e3428e

Contents?: true

Size: 1.21 KB

Versions: 4

Compression:

Stored size: 1.21 KB

Contents

require 'rubygems'
require 'pp'

require File.dirname(__FILE__) + '/../lib/xero_gateway.rb'

XERO_CONSUMER_KEY    = "YOUR CONSUMER KEY"
XERO_CONSUMER_SECRET = "YOUR CONSUMER SERET"

PRIVATE_KEY          = "YOUR_PRIVATE_KEY.pem"

gateway = XeroGateway::PartnerApp.new(XERO_CONSUMER_KEY, XERO_CONSUMER_SECRET, 
                                      :private_key_file => File.join(File.dirname(__FILE__), PRIVATE_KEY))

# authorize in browser
%x(open #{gateway.request_token.authorize_url})

puts "Enter the verification code from Xero?"
oauth_verifier = gets.chomp  

gateway.authorize_from_request(gateway.request_token.token, gateway.request_token.secret, :oauth_verifier => oauth_verifier)

puts "Your access token/secret: #{gateway.access_token.token}, #{gateway.access_token.secret}. Expires: #{gateway.expires_at}"
puts "(Good for 30 Minutes - but we can renew it!)"

puts "Session Handle: #{gateway.session_handle}"

# Example API Call
pp gateway.get_contacts.contacts.map(&:name)

# Renew!
gateway.renew_access_token(gateway.access_token.token, gateway.access_token.secret, gateway.session_handle)
puts "Your renewed access token/secret is:  #{gateway.access_token.token}, #{gateway.access_token.secret}. Expires: #{gateway.expires_at}"

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
xero_gateway-2.7.0 examples/partner_app.rb
xero_gateway-2.6.0 examples/partner_app.rb
xero_gateway-2.5.0 examples/partner_app.rb
xero_gateway-2.4.0 examples/partner_app.rb