class YNAB::AccountsApi

Attributes

api_client[RW]

Public Class Methods

new(api_client = ApiClient.default) click to toggle source
# File lib/ynab/api/accounts_api.rb, line 19
def initialize(api_client = ApiClient.default)
  @api_client = api_client
end

Public Instance Methods

create_account(budget_id, data, opts = {}) click to toggle source

Create a new account Creates a new account @param budget_id The id of the budget ("last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: api.youneedabudget.com/#oauth-default-budget) @param data The account to create. @param [Hash] opts the optional parameters @return [AccountResponse]

# File lib/ynab/api/accounts_api.rb, line 28
def create_account(budget_id, data, opts = {})
  data, _status_code, _headers = create_account_with_http_info(budget_id, data, opts)
  data
end
create_account_with_http_info(budget_id, data, opts = {}) click to toggle source

Create a new account Creates a new account @param budget_id The id of the budget ("last-used&quot; can be used to specify the last used budget and "default&quot; can be used if default budget selection is enabled (see: api.youneedabudget.com/#oauth-default-budget) @param data The account to create. @param [Hash] opts the optional parameters @return [Array<(AccountResponse, Fixnum, Hash)>] AccountResponse data, response status code and response headers

# File lib/ynab/api/accounts_api.rb, line 39
def create_account_with_http_info(budget_id, data, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: AccountsApi.create_account ...'
  end
  # verify the required parameter 'budget_id' is set
  if @api_client.config.client_side_validation && budget_id.nil?
    fail ArgumentError, "Missing the required parameter 'budget_id' when calling AccountsApi.create_account"
  end
  # verify the required parameter 'data' is set
  if @api_client.config.client_side_validation && data.nil?
    fail ArgumentError, "Missing the required parameter 'data' when calling AccountsApi.create_account"
  end
  # resource path
  local_var_path = '/budgets/{budget_id}/accounts'.sub('{' + 'budget_id' + '}', budget_id.to_s)

  # query parameters
  query_params = {}

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])

  # form parameters
  form_params = {}

  # http body (model)
  post_body = @api_client.object_to_http_body(data)
  auth_names = ['bearer']
  data, status_code, headers = @api_client.call_api(:POST, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => 'AccountResponse')
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: AccountsApi#create_account\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
get_account_by_id(budget_id, account_id, opts = {}) click to toggle source

Single account Returns a single account @param budget_id The id of the budget. "last-used&quot; can be used to specify the last used budget and "default&quot; can be used if default budget selection is enabled (see: api.youneedabudget.com/#oauth-default-budget). @param account_id The id of the account @param [Hash] opts the optional parameters @return [AccountResponse]

# File lib/ynab/api/accounts_api.rb, line 86
def get_account_by_id(budget_id, account_id, opts = {})
  data, _status_code, _headers = get_account_by_id_with_http_info(budget_id, account_id, opts)
  data
end
get_account_by_id_with_http_info(budget_id, account_id, opts = {}) click to toggle source

Single account Returns a single account @param budget_id The id of the budget. "last-used&quot; can be used to specify the last used budget and "default&quot; can be used if default budget selection is enabled (see: api.youneedabudget.com/#oauth-default-budget). @param account_id The id of the account @param [Hash] opts the optional parameters @return [Array<(AccountResponse, Fixnum, Hash)>] AccountResponse data, response status code and response headers

# File lib/ynab/api/accounts_api.rb, line 97
def get_account_by_id_with_http_info(budget_id, account_id, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: AccountsApi.get_account_by_id ...'
  end
  # verify the required parameter 'budget_id' is set
  if @api_client.config.client_side_validation && budget_id.nil?
    fail ArgumentError, "Missing the required parameter 'budget_id' when calling AccountsApi.get_account_by_id"
  end
  # verify the required parameter 'account_id' is set
  if @api_client.config.client_side_validation && account_id.nil?
    fail ArgumentError, "Missing the required parameter 'account_id' when calling AccountsApi.get_account_by_id"
  end
  # resource path
  local_var_path = '/budgets/{budget_id}/accounts/{account_id}'.sub('{' + 'budget_id' + '}', budget_id.to_s).sub('{' + 'account_id' + '}', account_id.to_s)

  # query parameters
  query_params = {}

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])

  # form parameters
  form_params = {}

  # http body (model)
  post_body = nil
  auth_names = ['bearer']
  data, status_code, headers = @api_client.call_api(:GET, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => 'AccountResponse')
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: AccountsApi#get_account_by_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
get_accounts(budget_id, opts = {}) click to toggle source

Account list Returns all accounts @param budget_id The id of the budget. "last-used&quot; can be used to specify the last used budget and "default&quot; can be used if default budget selection is enabled (see: api.youneedabudget.com/#oauth-default-budget). @param [Hash] opts the optional parameters @option opts [Integer] :last_knowledge_of_server The starting server knowledge. If provided, only entities that have changed since &#x60;last_knowledge_of_server&#x60; will be included. @return [AccountsResponse]

# File lib/ynab/api/accounts_api.rb, line 144
def get_accounts(budget_id, opts = {})
  data, _status_code, _headers = get_accounts_with_http_info(budget_id, opts)
  data
end
get_accounts_with_http_info(budget_id, opts = {}) click to toggle source

Account list Returns all accounts @param budget_id The id of the budget. "last-used&quot; can be used to specify the last used budget and "default&quot; can be used if default budget selection is enabled (see: api.youneedabudget.com/#oauth-default-budget). @param [Hash] opts the optional parameters @option opts [Integer] :last_knowledge_of_server The starting server knowledge. If provided, only entities that have changed since &#x60;last_knowledge_of_server&#x60; will be included. @return [Array<(AccountsResponse, Fixnum, Hash)>] AccountsResponse data, response status code and response headers

# File lib/ynab/api/accounts_api.rb, line 155
def get_accounts_with_http_info(budget_id, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: AccountsApi.get_accounts ...'
  end
  # verify the required parameter 'budget_id' is set
  if @api_client.config.client_side_validation && budget_id.nil?
    fail ArgumentError, "Missing the required parameter 'budget_id' when calling AccountsApi.get_accounts"
  end
  # resource path
  local_var_path = '/budgets/{budget_id}/accounts'.sub('{' + 'budget_id' + '}', budget_id.to_s)

  # query parameters
  query_params = {}
  query_params[:'last_knowledge_of_server'] = opts[:'last_knowledge_of_server'] if !opts[:'last_knowledge_of_server'].nil?

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])

  # form parameters
  form_params = {}

  # http body (model)
  post_body = nil
  auth_names = ['bearer']
  data, status_code, headers = @api_client.call_api(:GET, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => 'AccountsResponse')
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: AccountsApi#get_accounts\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end