Module: MixinBot::API::Transfer

Included in:
MixinBot::API
Defined in:
lib/mixin_bot/api/transfer.rb

Instance Method Summary collapse

Instance Method Details

#create_transfer(pin, options) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/mixin_bot/api/transfer.rb', line 6

def create_transfer(pin, options)
  asset_id = options[:asset_id]
  opponent_id = options[:opponent_id]
  amount = options[:amount]
  memo = options[:memo]
  trace_id = options[:trace_id] || SecureRandom.uuid

  path = '/transfers'
  payload = {
    asset_id: asset_id,
    opponent_id: opponent_id,
    pin: pin,
    amount: amount.to_s,
    trace_id: trace_id,
    memo: memo
  }

  access_token ||= access_token('POST', path, payload.to_json)
  authorization = format('Bearer %<access_token>s', access_token: access_token)
  client.post(path, headers: { 'Authorization': authorization }, json: payload)
end

#read_transfer(trace_id) ⇒ Object



28
29
30
31
32
33
# File 'lib/mixin_bot/api/transfer.rb', line 28

def read_transfer(trace_id)
  path = format('/transfers/trace/%<trace_id>s', trace_id: trace_id)
  access_token ||= access_token('GET', path, '')
  authorization = format('Bearer %<access_token>s', access_token: access_token)
  client.get(path, headers: { 'Authorization': authorization })
end