Class: LosantRest::Dashboards

Inherits:
Object
  • Object
show all
Defined in:
lib/losant_rest/dashboards.rb

Overview

Class containing all the actions for the Dashboards Resource

Instance Method Summary collapse

Constructor Details

#initialize(client) ⇒ Dashboards

Returns a new instance of Dashboards.



30
31
32
# File 'lib/losant_rest/dashboards.rb', line 30

def initialize(client)
  @client = client
end

Instance Method Details

#get(params = {}) ⇒ Object

Returns the dashboards the current user has permission to see

Authentication: The client must be configured with a valid api access token to call this action. The token must include at least one of the following scopes: all.Organization, all.Organization.read, all.User, all.User.read, dashboards.*, or dashboards.get.

Parameters:

  • string sortField - Field to sort the results by. Accepted values are: name, id, creationDate, ownerId, applicationId, lastUpdated

  • string sortDirection - Direction to sort the results by. Accepted values are: asc, desc

  • string page - Which page of results to return

  • string perPage - How many items to return per page

  • string filterField - Field to filter the results by. Blank or not provided means no filtering. Accepted values are: name

  • string filter - Filter to apply against the filtered field. Supports globbing. Blank or not provided means no filtering.

  • string applicationId - If not provided, return all dashboards. If provided but blank, only return dashboards that are not linked to applications. If provided and an id, only return dashboards linked to the given application id.

  • string orgId - If not provided, return all dashboards. If provided but blank, only return dashboards belonging to the current user. If provided and an id, only return dashboards belonging to the given organization id.

  • string losantdomain - Domain scope of request (rarely needed)

  • boolean _actions - Return resource actions in response

  • boolean _links - Return resource link in response

  • boolean _embedded - Return embedded resources in response

Responses:

Errors:



61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
# File 'lib/losant_rest/dashboards.rb', line 61

def get(params = {})
  params = Utils.symbolize_hash_keys(params)
  query_params = { _actions: false, _links: true, _embedded: true }
  headers = {}
  body = nil


  query_params[:sortField] = params[:sortField] if params.has_key?(:sortField)
  query_params[:sortDirection] = params[:sortDirection] if params.has_key?(:sortDirection)
  query_params[:page] = params[:page] if params.has_key?(:page)
  query_params[:perPage] = params[:perPage] if params.has_key?(:perPage)
  query_params[:filterField] = params[:filterField] if params.has_key?(:filterField)
  query_params[:filter] = params[:filter] if params.has_key?(:filter)
  query_params[:applicationId] = params[:applicationId] if params.has_key?(:applicationId)
  query_params[:orgId] = params[:orgId] if params.has_key?(:orgId)
  headers[:losantdomain] = params[:losantdomain] if params.has_key?(:losantdomain)
  query_params[:_actions] = params[:_actions] if params.has_key?(:_actions)
  query_params[:_links] = params[:_links] if params.has_key?(:_links)
  query_params[:_embedded] = params[:_embedded] if params.has_key?(:_embedded)

  path = "/dashboards"

  @client.request(
    method: :get,
    path: path,
    query: query_params,
    headers: headers,
    body: body)
end

#post(params = {}) ⇒ Object

Create a new dashboard

Authentication: The client must be configured with a valid api access token to call this action. The token must include at least one of the following scopes: all.Organization, all.User, dashboards.*, or dashboards.post.

Parameters:

  • hash dashboard - New dashboard information (api.losant.com/#/definitions/dashboardPost)

  • string losantdomain - Domain scope of request (rarely needed)

  • boolean _actions - Return resource actions in response

  • boolean _links - Return resource link in response

  • boolean _embedded - Return embedded resources in response

Responses:

Errors:

Raises:

  • (ArgumentError)


111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
# File 'lib/losant_rest/dashboards.rb', line 111

def post(params = {})
  params = Utils.symbolize_hash_keys(params)
  query_params = { _actions: false, _links: true, _embedded: true }
  headers = {}
  body = nil

  raise ArgumentError.new("dashboard is required") unless params.has_key?(:dashboard)

  body = params[:dashboard] if params.has_key?(:dashboard)
  headers[:losantdomain] = params[:losantdomain] if params.has_key?(:losantdomain)
  query_params[:_actions] = params[:_actions] if params.has_key?(:_actions)
  query_params[:_links] = params[:_links] if params.has_key?(:_links)
  query_params[:_embedded] = params[:_embedded] if params.has_key?(:_embedded)

  path = "/dashboards"

  @client.request(
    method: :post,
    path: path,
    query: query_params,
    headers: headers,
    body: body)
end