Class: LosantRest::Applications
- Inherits:
-
Object
- Object
- LosantRest::Applications
- Defined in:
- lib/losant_rest/applications.rb
Overview
Class containing all the actions for the Applications Resource
Instance Method Summary collapse
-
#get(params = {}) ⇒ Object
Returns the applications the current user has permission to see.
-
#initialize(client) ⇒ Applications
constructor
A new instance of Applications.
-
#post(params = {}) ⇒ Object
Create a new application.
Constructor Details
#initialize(client) ⇒ Applications
Returns a new instance of Applications.
30 31 32 |
# File 'lib/losant_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:
-
200 - Collection of applications (api.losant.com/#/definitions/applications)
Errors:
-
400 - Error if malformed request (api.losant.com/#/definitions/error)
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/losant_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 |
#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:
-
201 - Successfully created application (api.losant.com/#/definitions/application)
Errors:
-
400 - Error if malformed request (api.losant.com/#/definitions/error)
115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 |
# File 'lib/losant_rest/applications.rb', line 115 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 |