class Nubank
Constants
- VERSION
Attributes
conn[R]
Public Class Methods
new(cpf, password)
click to toggle source
# File lib/nubank.rb, line 16 def initialize(cpf, password) @cpf = cpf @password = password @conn = Faraday.new(url: NUBANK_URL) services end
Public Instance Methods
account()
click to toggle source
# File lib/nubank.rb, line 23 def account JSON.parse(account_request.body)['account'] end
bills_summary()
click to toggle source
# File lib/nubank.rb, line 27 def bills_summary JSON.parse(bills_summary_request.body)['bills'] end
events()
click to toggle source
# File lib/nubank.rb, line 31 def events JSON.parse(events_request.body)['events'] end
login()
click to toggle source
# File lib/nubank.rb, line 35 def login @login ||= JSON.parse(login_request.body) end
logout()
click to toggle source
# File lib/nubank.rb, line 39 def logout logout_request @conn = nil end
services()
click to toggle source
# File lib/nubank.rb, line 44 def services @services ||= JSON.parse(discovery_request.body) end
urls()
click to toggle source
# File lib/nubank.rb, line 48 def urls @login['_links'] end
Private Instance Methods
account_request()
click to toggle source
# File lib/nubank.rb, line 54 def account_request make_get_request(urls['account']['href']) end
auth_headers()
click to toggle source
# File lib/nubank.rb, line 91 def auth_headers @auth_headers ||= begin access_token = login['access_token'] HEADERS.merge('Authorization' => "Bearer #{access_token}") end end
bills_summary_request()
click to toggle source
# File lib/nubank.rb, line 58 def bills_summary_request make_get_request(urls['bills_summary']['href']) end
discovery_request()
click to toggle source
# File lib/nubank.rb, line 62 def discovery_request @conn.get do |request| request.url('/api/discovery') request.headers = HEADERS end end
events_request()
click to toggle source
# File lib/nubank.rb, line 69 def events_request make_get_request(urls['events']['href']) end
login_request()
click to toggle source
# File lib/nubank.rb, line 73 def login_request @conn.post do |request| request.url(services['login']) request.headers = HEADERS request.body = JSON.dump({ grant_type: 'password', login: @cpf, password: @password, client_id: 'other.conta', client_secret: 'yQPeLzoHuJzlMMSAjC-LgNUJdUecx8XO' }) end end
logout_request()
click to toggle source
# File lib/nubank.rb, line 87 def logout_request make_post_request(urls['revoke_token']['href']) end
make_get_request(url)
click to toggle source
# File lib/nubank.rb, line 98 def make_get_request(url) @conn.get do |request| request.url(url) request.headers = auth_headers end end
make_post_request(url)
click to toggle source
# File lib/nubank.rb, line 105 def make_post_request(url) @conn.post do |request| request.url(url) request.headers = auth_headers end end