Module: Coinbase::Advanced::REST::Resources::Portfolios

Included in:
Coinbase::Advanced::REST::RESTBase
Defined in:
lib/coinbase/advanced/rest/resources/portfolios.rb

Instance Method Summary collapse

Instance Method Details

#create_portfolio(params = {}) ⇒ Object

Raises:

  • (ArgumentError)


12
13
14
15
16
# File 'lib/coinbase/advanced/rest/resources/portfolios.rb', line 12

def create_portfolio(params = {})
  raise ArgumentError, "Missing :name" unless params.key? :name

  post("portfolios", params)
end

#delete_portfolio(params = {}) ⇒ Object

Raises:

  • (ArgumentError)


35
36
37
38
39
# File 'lib/coinbase/advanced/rest/resources/portfolios.rb', line 35

def delete_portfolio(params = {})
  raise ArgumentError, "Missing :portfolio_uuid" unless params.key? :portfolio_uuid

  delete("portfolios/#{params[:portfolio_uuid]}")
end

#edit_portfolio(params = {}) ⇒ Object

Raises:

  • (ArgumentError)


41
42
43
44
45
46
47
# File 'lib/coinbase/advanced/rest/resources/portfolios.rb', line 41

def edit_portfolio(params = {})
  raise ArgumentError, "Missing :portfolio_uuid" unless params.key? :portfolio_uuid
  raise ArgumentError, "Missing :name" unless params.key? :name

  portfolio_uuid = params.delete(:portfolio_uuid)
  put("portfolios/#{portfolio_uuid}", params)
end

#get_portfolio_funds(params = {}) ⇒ Object

Raises:

  • (ArgumentError)


28
29
30
31
32
33
# File 'lib/coinbase/advanced/rest/resources/portfolios.rb', line 28

def get_portfolio_funds(params = {})
  raise ArgumentError, "Missing :portfolio_uuid" unless params.key? :portfolio_uuid

  portfolio_uuid = params.delete(:portfolio_uuid)
  get("portfolios/#{portfolio_uuid}", params)
end

#list_portfolios(params = {}) ⇒ Object



8
9
10
# File 'lib/coinbase/advanced/rest/resources/portfolios.rb', line 8

def list_portfolios(params = {})
  get("portfolios", params)
end

#move_portfolio_funds(params = {}) ⇒ Object

Raises:

  • (ArgumentError)


18
19
20
21
22
23
24
25
26
# File 'lib/coinbase/advanced/rest/resources/portfolios.rb', line 18

def move_portfolio_funds(params = {})
  raise ArgumentError, "Missing :funds" unless params.key? :funds
  raise ArgumentError, "Missing :funds[:value]" unless params[:funds].key? :value
  raise ArgumentError, "Missing :funds[:currency]" unless params[:funds].key? :currency
  raise ArgumentError, "Missing :source_portfolio_uuid" unless params.key? :source_portfolio_uuid
  raise ArgumentError, "Missing :target_portfolio_uuid" unless params.key? :target_portfolio_uuid

  post("portfolios/move_funds", params)
end