class ShapeShiftRuby::Client
Constants
- API_URL
Public Instance Methods
cancel_pending(address:)
click to toggle source
# File lib/shapeshift_ruby/client.rb, line 80 def cancel_pending(address:) api_request(url: url('cancelpending'), method: 'post', params: { address: address }) end
coins()
click to toggle source
# File lib/shapeshift_ruby/client.rb, line 34 def coins api_request(url: url('getcoins'), method: 'get') end
fixed_amount_transaction(withdrawal:, pair:, amount:, return_address: '', dest_tag: '', rs_address: '', api_key: '')
click to toggle source
# File lib/shapeshift_ruby/client.rb, line 68 def fixed_amount_transaction(withdrawal:, pair:, amount:, return_address: '', dest_tag: '', rs_address: '', api_key: '') api_request(url: url('sendamount'), method: 'post', params: { amount: amount, pair: pair, withdrawal: withdrawal, returnAddress: return_address, destTag: dest_tag, rsAddress: rs_address, apiKey: api_key }) end
limit(pair:)
click to toggle source
# File lib/shapeshift_ruby/client.rb, line 14 def limit(pair:) api_request(url: url("limit/#{pair}"), method: 'get') end
mail(email:, transaction_id:)
click to toggle source
# File lib/shapeshift_ruby/client.rb, line 64 def mail(email:, transaction_id:) api_request(url: url('mail'), method: 'post', params: { email: email, txid: transaction_id }) end
market_info(pair:)
click to toggle source
# File lib/shapeshift_ruby/client.rb, line 18 def market_info(pair:) api_request(url: url("marketinfo/#{pair}"), method: 'get') end
rate(pair:)
click to toggle source
GET Requests
# File lib/shapeshift_ruby/client.rb, line 10 def rate(pair:) api_request(url: url("rate/#{pair}"), method: 'get') end
recent_transactions(max:)
click to toggle source
# File lib/shapeshift_ruby/client.rb, line 22 def recent_transactions(max:) api_request(url: url("recenttx/#{max}"), method: 'get') end
shift(withdrawal:, pair:, return_address: '', dest_tag: '', rs_address: '', api_key: '')
click to toggle source
Post requests
# File lib/shapeshift_ruby/client.rb, line 52 def shift(withdrawal:, pair:, return_address: '', dest_tag: '', rs_address: '', api_key: '') api_request(url: url('shift'), method: 'post', params: { pair: pair, withdrawal: withdrawal, returnAddress: return_address, destTag: dest_tag, rsAddress: rs_address, apiKey: api_key }) end
time_remaining(deposit_address:)
click to toggle source
# File lib/shapeshift_ruby/client.rb, line 30 def time_remaining(deposit_address:) api_request(url: url("timeremaining/#{deposit_address}"), method: 'get') end
transaction_by_address(address, api_key:)
click to toggle source
# File lib/shapeshift_ruby/client.rb, line 46 def transaction_by_address(address, api_key:) api_request(url: url("txbyaddress/#{address}/#{api_key}"), method: 'get') end
transaction_by_api_key(api_key:)
click to toggle source
# File lib/shapeshift_ruby/client.rb, line 42 def transaction_by_api_key(api_key:) api_request(url: url("txbyapikey/#{api_key}"), method: 'get') end
transaction_status(deposit_address:)
click to toggle source
# File lib/shapeshift_ruby/client.rb, line 26 def transaction_status(deposit_address:) api_request(url: url("txStat/#{deposit_address}"), method: 'get') end
validate_address(address:, coin_symbol:)
click to toggle source
# File lib/shapeshift_ruby/client.rb, line 38 def validate_address(address:, coin_symbol:) api_request(url: url("validateAddress/#{address}/#{coin_symbol}"), method: 'get') end
Private Instance Methods
api_request(url:, method:, params: {})
click to toggle source
# File lib/shapeshift_ruby/client.rb, line 90 def api_request(url:, method:, params: {}) data = RestClient::Request.execute( method: method, url: url, payload: params, ) JSON.parse(data) end
url(path)
click to toggle source
# File lib/shapeshift_ruby/client.rb, line 86 def url(path) "#{API_URL}/#{path}" end