Class: PlatformRest::Applications

Inherits:
Object
  • Object
show all
Defined in:
lib/platform_rest/applications.rb

Overview

Class containing all the actions for the Applications Resource

Instance Method Summary collapse

Constructor Details

#initialize(client) ⇒ Applications

Returns a new instance of Applications.



30
31
32
# File 'lib/platform_rest/applications.rb', line 30

def initialize(client)
  @client = client
end

Instance Method Details

#get(params = {}) ⇒ Object

Returns the applications 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.cli, all.User.read, applications.*, or applications.get.

Parameters:

  • string sortField - Field to sort the results by. Accepted values are: name, id, creationDate, ownerId, 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 orgId - If not provided, return all applications. If provided but blank, only return applications belonging to the current user. If provided and an id, only return applications belonging to the given organization id.

  • string summaryExclude - Comma-separated list of summary fields to exclude from application summary

  • string summaryInclude - Comma-separated list of summary fields to include in application summary

  • 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:



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
90
91
# File 'lib/platform_rest/applications.rb', line 62

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[:orgId] = params[:orgId] if params.has_key?(:orgId)
  query_params[:summaryExclude] = params[:summaryExclude] if params.has_key?(:summaryExclude)
  query_params[:summaryInclude] = params[:summaryInclude] if params.has_key?(:summaryInclude)
  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 = "/applications"

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

#period_summaries(params = {}) ⇒ Object

Returns application usage summaries over a selected date range

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, applications.*, or applications.periodSummaries.

Parameters:

  • string start - Start of range for resource count queries (ms since epoch)

  • string end - End of range for resource count queries (ms since epoch)

  • string asBytes - If the resulting payload counts should be returned as bytes

  • string includeNonBillable - If non-billable payloads should be included in the result

  • string sortField - Field to sort the results by. Accepted values are: name, id, creationDate, ownerId, 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 orgId - If not provided, return all applications. If provided but blank, only return applications belonging to the current user. If provided and an id, only return applications belonging to the given organization id.

  • string exclude - Comma-separated list of resources to exclude from summary

  • string include - Comma-separated list of summary fields to include in application summary

  • 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:



125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
# File 'lib/platform_rest/applications.rb', line 125

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


  query_params[:start] = params[:start] if params.has_key?(:start)
  query_params[:end] = params[:end] if params.has_key?(:end)
  query_params[:asBytes] = params[:asBytes] if params.has_key?(:asBytes)
  query_params[:includeNonBillable] = params[:includeNonBillable] if params.has_key?(:includeNonBillable)
  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[:orgId] = params[:orgId] if params.has_key?(:orgId)
  query_params[:exclude] = params[:exclude] if params.has_key?(:exclude)
  query_params[:include] = params[:include] if params.has_key?(:include)
  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 = "/applications/periodSummaries"

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

#post(params = {}) ⇒ Object

Create a new application

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, applications.*, or applications.post.

Parameters:

  • hash application - New application information (api.losant.com/#/definitions/applicationPost)

  • string summaryExclude - Comma-separated list of summary fields to exclude from application summary

  • string summaryInclude - Comma-separated list of summary fields to include in application summary

  • 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)


182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
# File 'lib/platform_rest/applications.rb', line 182

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

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

  body = params[:application] if params.has_key?(:application)
  query_params[:summaryExclude] = params[:summaryExclude] if params.has_key?(:summaryExclude)
  query_params[:summaryInclude] = params[:summaryInclude] if params.has_key?(:summaryInclude)
  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 = "/applications"

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