Class: ShapeShiftRuby::Client
- Inherits:
-
Object
- Object
- ShapeShiftRuby::Client
- Defined in:
- lib/shapeshift_ruby/client.rb
Constant Summary collapse
- API_URL =
'https://shapeshift.io'.freeze
Instance Method Summary collapse
- #cancel_pending(address:) ⇒ Object
- #coins ⇒ Object
- #fixed_amount_transaction(withdrawal:, pair:, amount:, return_address: '', dest_tag: '', rs_address: '', api_key: '') ⇒ Object
- #limit(pair:) ⇒ Object
- #mail(email:, transaction_id:) ⇒ Object
- #market_info(pair:) ⇒ Object
-
#rate(pair:) ⇒ Object
GET Requests.
- #recent_transactions(max:) ⇒ Object
-
#shift(withdrawal:, pair:, return_address: '', dest_tag: '', rs_address: '', api_key: '') ⇒ Object
Post requests.
- #time_remaining(deposit_address:) ⇒ Object
- #transaction_by_address(address, api_key:) ⇒ Object
- #transaction_by_api_key(api_key:) ⇒ Object
- #transaction_status(deposit_address:) ⇒ Object
- #validate_address(address:, coin_symbol:) ⇒ Object
Instance Method Details
#cancel_pending(address:) ⇒ Object
80 81 82 |
# File 'lib/shapeshift_ruby/client.rb', line 80 def cancel_pending(address:) api_request(url: url('cancelpending'), method: 'post', params: { address: address }) end |
#coins ⇒ Object
34 35 36 |
# 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: '') ⇒ Object
68 69 70 71 72 73 74 75 76 77 78 |
# 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:) ⇒ Object
14 15 16 |
# File 'lib/shapeshift_ruby/client.rb', line 14 def limit(pair:) api_request(url: url("limit/#{pair}"), method: 'get') end |
#mail(email:, transaction_id:) ⇒ Object
64 65 66 |
# 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:) ⇒ Object
18 19 20 |
# File 'lib/shapeshift_ruby/client.rb', line 18 def market_info(pair:) api_request(url: url("marketinfo/#{pair}"), method: 'get') end |
#rate(pair:) ⇒ Object
GET Requests
10 11 12 |
# File 'lib/shapeshift_ruby/client.rb', line 10 def rate(pair:) api_request(url: url("rate/#{pair}"), method: 'get') end |
#recent_transactions(max:) ⇒ Object
22 23 24 |
# 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: '') ⇒ Object
Post requests
52 53 54 55 56 57 58 59 60 61 |
# 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:) ⇒ Object
30 31 32 |
# 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:) ⇒ Object
46 47 48 |
# 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:) ⇒ Object
42 43 44 |
# 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:) ⇒ Object
26 27 28 |
# 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:) ⇒ Object
38 39 40 |
# 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 |