class CurrencyQuote::InvertirOnline

Constants

BASE_URL

Attributes

access_token[RW]
password[RW]
username[RW]

Public Class Methods

new(username:, password:) click to toggle source
# File lib/currency_quote/invertir_online.rb, line 8
def initialize(username:, password:)
        @username = username
        @password = password
        get_token
end

Public Instance Methods

get_quote(simbol:, mercado: 'bCBA', plazo: 't1') click to toggle source
# File lib/currency_quote/invertir_online.rb, line 14
def get_quote(simbol:, mercado: 'bCBA', plazo: 't1')
        url = BASE_URL + "/api/v2/#{mercado}/Titulos/#{simbol.upcase}/Cotizacion"
        HTTParty.get(url,
                body: {
                        'mercado' => mercado,
                        'simbol' => simbol.upcase,
                        'model.mercado' => mercado,
                        'model.plazo' => plazo
                },
                headers: {
                'Authorization' => "Bearer #{@access_token}",
                'Accept' => 'application/json'
                }
        ).parsed_response
end

Private Instance Methods

get_token() click to toggle source
# File lib/currency_quote/invertir_online.rb, line 32
def get_token
        url = BASE_URL + "/token"
        @access_token =  HTTParty.post(url, 
                body: {
                        username: username,
                        password: password,
                        grant_type: 'password'
                },
                headers:{
                        'Content-Type' => 'application/x-www-form-urlencoded',
                        'Accept' => 'application/json'
                }
        )['access_token']
end