class FavroApi::Driver

Public Instance Methods

cards(params = {}) click to toggle source
# File lib/favro_api/driver.rb, line 6
def cards(params = {})
  response = paginated_request(:cards, params).fetch

  response.parse(type: FavroApi::DataTypes::Card)
end
collections(params = {}) click to toggle source
# File lib/favro_api/driver.rb, line 12
def collections(params = {})
  response = paginated_request(:collections, params).fetch

  response.parse(type: FavroApi::DataTypes::Collection)
end
comments(params = {}) click to toggle source
# File lib/favro_api/driver.rb, line 18
def comments(params = {})
  response = paginated_request(:comments, params).fetch

  response.parse(type: FavroApi::DataTypes::Comment)
end
custom_fields(params = {}) click to toggle source
# File lib/favro_api/driver.rb, line 24
def custom_fields(params = {})
  response = paginated_request(:custom_fields, params).fetch

  response.parse
end
organizations(params = {}) click to toggle source
# File lib/favro_api/driver.rb, line 30
def organizations(params = {})
  response = paginated_request(:organizations, params).fetch

  response.parse(type: FavroApi::DataTypes::Organization)
end
tasklists(params = {}) click to toggle source
# File lib/favro_api/driver.rb, line 42
def tasklists(params = {})
  response = paginated_request(:tasklists, params).fetch

  response.parse(type: FavroApi::DataTypes::Tasklist)
end
tasks(params = {}) click to toggle source
# File lib/favro_api/driver.rb, line 36
def tasks(params = {})
  response = paginated_request(:tasks, params).fetch

  response.parse(type: FavroApi::DataTypes::Task)
end
users(params = {}) click to toggle source
# File lib/favro_api/driver.rb, line 48
def users(params = {})
  response = paginated_request(:users, params).fetch

  response.parse(type: FavroApi::DataTypes::User)
end
widgets(params = {}) click to toggle source
# File lib/favro_api/driver.rb, line 54
def widgets(params = {})
  response = paginated_request(:widgets, params).fetch

  response.parse(type: FavroApi::DataTypes::Widget)
end

Private Instance Methods

paginated_request(endpoint, params) click to toggle source
# File lib/favro_api/driver.rb, line 62
def paginated_request(endpoint, params)
  Request.new(
    endpoint: endpoint,
    page: params.delete(:page),
    last_response: params.delete(:last_response),
    params: params
  )
end