Class: LosantRest::ExperienceUsers
- Inherits:
-
Object
- Object
- LosantRest::ExperienceUsers
- Defined in:
- lib/losant_rest/experience_users.rb
Overview
Class containing all the actions for the Experience Users Resource
Instance Method Summary collapse
-
#get(params = {}) ⇒ Object
Returns the experience users for an application.
-
#initialize(client) ⇒ ExperienceUsers
constructor
A new instance of ExperienceUsers.
-
#post(params = {}) ⇒ Object
Create a new experience user for an application.
Constructor Details
#initialize(client) ⇒ ExperienceUsers
Returns a new instance of ExperienceUsers.
30 31 32 |
# File 'lib/losant_rest/experience_users.rb', line 30 def initialize(client) @client = client end |
Instance Method Details
#get(params = {}) ⇒ Object
Returns the experience users for an 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.Application, all.Application.read, all.Organization, all.Organization.read, all.User, all.User.read, experienceUsers.*, or experienceUsers.get.
Parameters:
-
string applicationId - ID associated with the application
-
string sortField - Field to sort the results by. Accepted values are: firstName, lastName, email, id, creationDate, lastLogin, 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: firstName, lastName, email
-
string filter - Filter to apply against the filtered field. Supports globbing. Blank or not provided means no filtering.
-
string experienceGroupId - Filter users to those only in the specified group, special experienceGroupIds of ‘any’ which will give users who are in at least one group and ‘none’ will give you users who are not in any groups.
-
string includeAncestorGroups - If set will include members from ancestors of the specified experienceGroupId
-
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 experience users (api.losant.com/#/definitions/experienceUsers)
Errors:
-
400 - Error if malformed request (api.losant.com/#/definitions/error)
-
404 - Error if application was not found (api.losant.com/#/definitions/error)
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 92 |
# File 'lib/losant_rest/experience_users.rb', line 63 def get(params = {}) params = Utils.symbolize_hash_keys(params) query_params = { _actions: false, _links: true, _embedded: true } headers = {} body = nil raise ArgumentError.new("applicationId is required") unless params.has_key?(:applicationId) 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[:experienceGroupId] = params[:experienceGroupId] if params.has_key?(:experienceGroupId) query_params[:includeAncestorGroups] = params[:includeAncestorGroups] if params.has_key?(:includeAncestorGroups) 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/#{params[:applicationId]}/experience/users" @client.request( method: :get, path: path, query: query_params, headers: headers, body: body) end |
#post(params = {}) ⇒ Object
Create a new experience user for an 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.Application, all.Organization, all.User, experienceUsers.*, or experienceUsers.post.
Parameters:
-
string applicationId - ID associated with the application
-
hash experienceUser - New experience user information (api.losant.com/#/definitions/experienceUserPost)
-
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 experience user (api.losant.com/#/definitions/experienceUser)
Errors:
-
400 - Error if malformed request (api.losant.com/#/definitions/error)
-
404 - Error if application was not found (api.losant.com/#/definitions/error)
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/experience_users.rb', line 116 def post(params = {}) params = Utils.symbolize_hash_keys(params) query_params = { _actions: false, _links: true, _embedded: true } headers = {} body = nil raise ArgumentError.new("applicationId is required") unless params.has_key?(:applicationId) raise ArgumentError.new("experienceUser is required") unless params.has_key?(:experienceUser) body = params[:experienceUser] if params.has_key?(:experienceUser) 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/#{params[:applicationId]}/experience/users" @client.request( method: :post, path: path, query: query_params, headers: headers, body: body) end |