losant_rest 1.19.4 → 1.19.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (237) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +1 -1
  3. data/README.md +9 -9
  4. data/docs/_schemas.md +1142 -63
  5. data/docs/instanceAuditLog.md +49 -0
  6. data/docs/instanceAuditLogs.md +53 -0
  7. data/examples/auth.rb +1 -1
  8. data/examples/list_devices.rb +1 -1
  9. data/lib/platform_rest/application.rb +1 -1
  10. data/lib/platform_rest/application_api_token.rb +1 -1
  11. data/lib/platform_rest/application_api_tokens.rb +1 -1
  12. data/lib/platform_rest/application_certificate.rb +1 -1
  13. data/lib/platform_rest/application_certificate_authorities.rb +1 -1
  14. data/lib/platform_rest/application_certificate_authority.rb +1 -1
  15. data/lib/platform_rest/application_certificates.rb +1 -1
  16. data/lib/platform_rest/application_dashboard.rb +1 -1
  17. data/lib/platform_rest/application_dashboards.rb +1 -1
  18. data/lib/platform_rest/application_key.rb +1 -1
  19. data/lib/platform_rest/application_keys.rb +1 -1
  20. data/lib/platform_rest/application_template.rb +1 -1
  21. data/lib/platform_rest/application_templates.rb +1 -1
  22. data/lib/platform_rest/applications.rb +1 -1
  23. data/lib/platform_rest/audit_log.rb +1 -1
  24. data/lib/platform_rest/audit_logs.rb +1 -1
  25. data/lib/platform_rest/auth.rb +1 -1
  26. data/lib/platform_rest/client.rb +11 -3
  27. data/lib/platform_rest/credential.rb +1 -1
  28. data/lib/platform_rest/credentials.rb +1 -1
  29. data/lib/platform_rest/dashboard.rb +1 -1
  30. data/lib/platform_rest/dashboards.rb +1 -1
  31. data/lib/platform_rest/data.rb +1 -1
  32. data/lib/platform_rest/data_table.rb +1 -1
  33. data/lib/platform_rest/data_table_row.rb +1 -1
  34. data/lib/platform_rest/data_table_rows.rb +1 -1
  35. data/lib/platform_rest/data_tables.rb +1 -1
  36. data/lib/platform_rest/device.rb +1 -1
  37. data/lib/platform_rest/device_recipe.rb +1 -1
  38. data/lib/platform_rest/device_recipes.rb +1 -1
  39. data/lib/platform_rest/devices.rb +1 -1
  40. data/lib/platform_rest/edge_deployment.rb +1 -1
  41. data/lib/platform_rest/edge_deployments.rb +1 -1
  42. data/lib/platform_rest/embedded_deployment.rb +1 -1
  43. data/lib/platform_rest/embedded_deployments.rb +1 -1
  44. data/lib/platform_rest/error.rb +1 -1
  45. data/lib/platform_rest/event.rb +1 -1
  46. data/lib/platform_rest/events.rb +1 -1
  47. data/lib/platform_rest/experience.rb +1 -1
  48. data/lib/platform_rest/experience_domain.rb +1 -1
  49. data/lib/platform_rest/experience_domains.rb +1 -1
  50. data/lib/platform_rest/experience_endpoint.rb +1 -1
  51. data/lib/platform_rest/experience_endpoints.rb +1 -1
  52. data/lib/platform_rest/experience_group.rb +1 -1
  53. data/lib/platform_rest/experience_groups.rb +1 -1
  54. data/lib/platform_rest/experience_slug.rb +1 -1
  55. data/lib/platform_rest/experience_slugs.rb +1 -1
  56. data/lib/platform_rest/experience_user.rb +1 -1
  57. data/lib/platform_rest/experience_users.rb +1 -1
  58. data/lib/platform_rest/experience_version.rb +1 -1
  59. data/lib/platform_rest/experience_versions.rb +1 -1
  60. data/lib/platform_rest/experience_view.rb +1 -1
  61. data/lib/platform_rest/experience_views.rb +1 -1
  62. data/lib/platform_rest/file.rb +1 -1
  63. data/lib/platform_rest/files.rb +1 -1
  64. data/lib/platform_rest/flow.rb +1 -1
  65. data/lib/platform_rest/flow_version.rb +1 -1
  66. data/lib/platform_rest/flow_versions.rb +1 -1
  67. data/lib/platform_rest/flows.rb +1 -1
  68. data/lib/platform_rest/instance.rb +1 -1
  69. data/lib/platform_rest/instance_api_token.rb +1 -1
  70. data/lib/platform_rest/instance_api_tokens.rb +1 -1
  71. data/lib/{losant_rest/application_template.rb → platform_rest/instance_audit_log.rb} +13 -11
  72. data/lib/{losant_rest/audit_logs.rb → platform_rest/instance_audit_logs.rb} +12 -12
  73. data/lib/platform_rest/instance_custom_node.rb +1 -1
  74. data/lib/platform_rest/instance_custom_nodes.rb +1 -1
  75. data/lib/platform_rest/instance_member.rb +1 -1
  76. data/lib/platform_rest/instance_members.rb +1 -1
  77. data/lib/platform_rest/instance_org.rb +1 -1
  78. data/lib/platform_rest/instance_org_invite.rb +1 -1
  79. data/lib/platform_rest/instance_org_invites.rb +1 -1
  80. data/lib/platform_rest/instance_org_member.rb +1 -1
  81. data/lib/platform_rest/instance_org_members.rb +1 -1
  82. data/lib/platform_rest/instance_orgs.rb +1 -1
  83. data/lib/platform_rest/instance_sandbox.rb +1 -1
  84. data/lib/platform_rest/instance_sandboxes.rb +1 -1
  85. data/lib/platform_rest/instances.rb +1 -1
  86. data/lib/platform_rest/integration.rb +1 -1
  87. data/lib/platform_rest/integrations.rb +1 -1
  88. data/lib/platform_rest/me.rb +1 -1
  89. data/lib/platform_rest/notebook.rb +1 -1
  90. data/lib/platform_rest/notebooks.rb +1 -1
  91. data/lib/platform_rest/org.rb +1 -1
  92. data/lib/platform_rest/org_invites.rb +1 -1
  93. data/lib/platform_rest/orgs.rb +1 -1
  94. data/lib/platform_rest/resource_job.rb +1 -1
  95. data/lib/platform_rest/resource_jobs.rb +1 -1
  96. data/lib/platform_rest/user_api_token.rb +1 -1
  97. data/lib/platform_rest/user_api_tokens.rb +1 -1
  98. data/lib/platform_rest/utils.rb +1 -1
  99. data/lib/{losant_rest → platform_rest}/version.rb +3 -3
  100. data/lib/platform_rest/webhook.rb +1 -1
  101. data/lib/platform_rest/webhooks.rb +1 -1
  102. data/lib/platform_rest.rb +3 -1
  103. data/losant_rest.gemspec +2 -2
  104. data/schemas/apiTokenPost.json +9 -1
  105. data/schemas/auditLog.json +3 -2
  106. data/schemas/auditLogFilter.json +3 -2
  107. data/schemas/auditLogs.json +3 -2
  108. data/schemas/credential.json +50 -1
  109. data/schemas/credentialLinkedResources.json +81 -4
  110. data/schemas/credentialPatch.json +56 -0
  111. data/schemas/credentialPost.json +71 -1
  112. data/schemas/credentials.json +50 -1
  113. data/schemas/deviceConnectionStatus.json +6 -2
  114. data/schemas/devicesHistoricalImportPost.json +25 -0
  115. data/schemas/experienceLinkedResources.json +7 -5
  116. data/schemas/experienceView.json +1 -2
  117. data/schemas/experienceViewPatch.json +1 -2
  118. data/schemas/experienceViewPost.json +2 -4
  119. data/schemas/experienceViews.json +1 -2
  120. data/schemas/flow.json +2 -1
  121. data/schemas/flowPatch.json +2 -1
  122. data/schemas/flowPost.json +2 -1
  123. data/schemas/flowVersion.json +4 -2
  124. data/schemas/flowVersionPost.json +2 -1
  125. data/schemas/flowVersions.json +4 -2
  126. data/schemas/flows.json +2 -1
  127. data/schemas/flowsImportPost.json +4 -2
  128. data/schemas/flowsImportResult.json +6 -3
  129. data/schemas/githubLogin.json +9 -1
  130. data/schemas/instance.json +1 -4
  131. data/schemas/instanceAuditLog.json +94 -0
  132. data/schemas/instanceAuditLogFilter.json +106 -0
  133. data/schemas/instanceAuditLogs.json +41 -0
  134. data/schemas/instanceCustomNodePatch.json +2 -1
  135. data/schemas/instanceCustomNodePost.json +2 -1
  136. data/schemas/instanceOrgMember.json +4 -1
  137. data/schemas/instances.json +1 -4
  138. data/schemas/integration.json +75 -1
  139. data/schemas/integrationPatch.json +73 -0
  140. data/schemas/integrationPost.json +75 -1
  141. data/schemas/integrations.json +75 -1
  142. data/schemas/mePatch.json +18 -0
  143. data/schemas/samlResponse.json +9 -1
  144. data/schemas/userCredentials.json +9 -1
  145. data/schemas/userPost.json +9 -1
  146. data/test/basic_test.rb +6 -6
  147. data/test/test_helper.rb +1 -1
  148. metadata +11 -94
  149. data/lib/losant_rest/application.rb +0 -932
  150. data/lib/losant_rest/application_api_token.rb +0 -176
  151. data/lib/losant_rest/application_api_tokens.rb +0 -136
  152. data/lib/losant_rest/application_certificate.rb +0 -176
  153. data/lib/losant_rest/application_certificate_authorities.rb +0 -138
  154. data/lib/losant_rest/application_certificate_authority.rb +0 -176
  155. data/lib/losant_rest/application_certificates.rb +0 -138
  156. data/lib/losant_rest/application_dashboard.rb +0 -225
  157. data/lib/losant_rest/application_dashboards.rb +0 -138
  158. data/lib/losant_rest/application_key.rb +0 -176
  159. data/lib/losant_rest/application_keys.rb +0 -141
  160. data/lib/losant_rest/application_templates.rb +0 -176
  161. data/lib/losant_rest/applications.rb +0 -142
  162. data/lib/losant_rest/audit_log.rb +0 -81
  163. data/lib/losant_rest/auth.rb +0 -245
  164. data/lib/losant_rest/client.rb +0 -410
  165. data/lib/losant_rest/credential.rb +0 -224
  166. data/lib/losant_rest/credentials.rb +0 -138
  167. data/lib/losant_rest/dashboard.rb +0 -268
  168. data/lib/losant_rest/dashboards.rb +0 -136
  169. data/lib/losant_rest/data.rb +0 -176
  170. data/lib/losant_rest/data_table.rb +0 -274
  171. data/lib/losant_rest/data_table_row.rb +0 -182
  172. data/lib/losant_rest/data_table_rows.rb +0 -343
  173. data/lib/losant_rest/data_tables.rb +0 -138
  174. data/lib/losant_rest/device.rb +0 -749
  175. data/lib/losant_rest/device_recipe.rb +0 -234
  176. data/lib/losant_rest/device_recipes.rb +0 -146
  177. data/lib/losant_rest/devices.rb +0 -707
  178. data/lib/losant_rest/edge_deployment.rb +0 -81
  179. data/lib/losant_rest/edge_deployments.rb +0 -236
  180. data/lib/losant_rest/embedded_deployment.rb +0 -81
  181. data/lib/losant_rest/embedded_deployments.rb +0 -280
  182. data/lib/losant_rest/error.rb +0 -34
  183. data/lib/losant_rest/event.rb +0 -176
  184. data/lib/losant_rest/events.rb +0 -341
  185. data/lib/losant_rest/experience.rb +0 -142
  186. data/lib/losant_rest/experience_domain.rb +0 -176
  187. data/lib/losant_rest/experience_domains.rb +0 -126
  188. data/lib/losant_rest/experience_endpoint.rb +0 -230
  189. data/lib/losant_rest/experience_endpoints.rb +0 -200
  190. data/lib/losant_rest/experience_group.rb +0 -180
  191. data/lib/losant_rest/experience_groups.rb +0 -141
  192. data/lib/losant_rest/experience_slug.rb +0 -176
  193. data/lib/losant_rest/experience_slugs.rb +0 -126
  194. data/lib/losant_rest/experience_user.rb +0 -176
  195. data/lib/losant_rest/experience_users.rb +0 -142
  196. data/lib/losant_rest/experience_version.rb +0 -176
  197. data/lib/losant_rest/experience_versions.rb +0 -138
  198. data/lib/losant_rest/experience_view.rb +0 -228
  199. data/lib/losant_rest/experience_views.rb +0 -142
  200. data/lib/losant_rest/file.rb +0 -226
  201. data/lib/losant_rest/files.rb +0 -144
  202. data/lib/losant_rest/flow.rb +0 -580
  203. data/lib/losant_rest/flow_version.rb +0 -352
  204. data/lib/losant_rest/flow_versions.rb +0 -201
  205. data/lib/losant_rest/flows.rb +0 -310
  206. data/lib/losant_rest/instance.rb +0 -377
  207. data/lib/losant_rest/instance_api_token.rb +0 -176
  208. data/lib/losant_rest/instance_api_tokens.rb +0 -136
  209. data/lib/losant_rest/instance_custom_node.rb +0 -282
  210. data/lib/losant_rest/instance_custom_nodes.rb +0 -136
  211. data/lib/losant_rest/instance_member.rb +0 -176
  212. data/lib/losant_rest/instance_members.rb +0 -134
  213. data/lib/losant_rest/instance_org.rb +0 -336
  214. data/lib/losant_rest/instance_org_invite.rb +0 -182
  215. data/lib/losant_rest/instance_org_invites.rb +0 -138
  216. data/lib/losant_rest/instance_org_member.rb +0 -182
  217. data/lib/losant_rest/instance_org_members.rb +0 -138
  218. data/lib/losant_rest/instance_orgs.rb +0 -139
  219. data/lib/losant_rest/instance_sandbox.rb +0 -181
  220. data/lib/losant_rest/instance_sandboxes.rb +0 -98
  221. data/lib/losant_rest/instances.rb +0 -88
  222. data/lib/losant_rest/integration.rb +0 -178
  223. data/lib/losant_rest/integrations.rb +0 -138
  224. data/lib/losant_rest/me.rb +0 -790
  225. data/lib/losant_rest/notebook.rb +0 -423
  226. data/lib/losant_rest/notebooks.rb +0 -138
  227. data/lib/losant_rest/org.rb +0 -663
  228. data/lib/losant_rest/org_invites.rb +0 -124
  229. data/lib/losant_rest/orgs.rb +0 -140
  230. data/lib/losant_rest/resource_job.rb +0 -326
  231. data/lib/losant_rest/resource_jobs.rb +0 -138
  232. data/lib/losant_rest/user_api_token.rb +0 -170
  233. data/lib/losant_rest/user_api_tokens.rb +0 -132
  234. data/lib/losant_rest/utils.rb +0 -44
  235. data/lib/losant_rest/webhook.rb +0 -178
  236. data/lib/losant_rest/webhooks.rb +0 -138
  237. data/lib/losant_rest.rb +0 -129
@@ -1,176 +0,0 @@
1
- # The MIT License (MIT)
2
- #
3
- # Copyright (c) 2023 Losant IoT, Inc.
4
- #
5
- # Permission is hereby granted, free of charge, to any person obtaining a copy
6
- # of this software and associated documentation files (the "Software"), to deal
7
- # in the Software without restriction, including without limitation the rights
8
- # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- # copies of the Software, and to permit persons to whom the Software is
10
- # furnished to do so, subject to the following conditions:
11
- #
12
- # The above copyright notice and this permission notice shall be included in all
13
- # copies or substantial portions of the Software.
14
- #
15
- # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- # SOFTWARE.
22
-
23
- require "json"
24
-
25
- module LosantRest
26
-
27
- # Class containing all the actions for the Experience Slug Resource
28
- class ExperienceSlug
29
-
30
- def initialize(client)
31
- @client = client
32
- end
33
-
34
- # Deletes an experience slug
35
- #
36
- # Authentication:
37
- # The client must be configured with a valid api
38
- # access token to call this action. The token
39
- # must include at least one of the following scopes:
40
- # all.Application, all.Organization, all.User, experienceSlug.*, or experienceSlug.delete.
41
- #
42
- # Parameters:
43
- # * {string} applicationId - ID associated with the application
44
- # * {string} experienceSlugId - ID associated with the experience slug
45
- # * {string} losantdomain - Domain scope of request (rarely needed)
46
- # * {boolean} _actions - Return resource actions in response
47
- # * {boolean} _links - Return resource link in response
48
- # * {boolean} _embedded - Return embedded resources in response
49
- #
50
- # Responses:
51
- # * 200 - If experience slug was successfully deleted (https://api.losant.com/#/definitions/success)
52
- #
53
- # Errors:
54
- # * 400 - Error if malformed request (https://api.losant.com/#/definitions/error)
55
- # * 404 - Error if experience slug was not found (https://api.losant.com/#/definitions/error)
56
- def delete(params = {})
57
- params = Utils.symbolize_hash_keys(params)
58
- query_params = { _actions: false, _links: true, _embedded: true }
59
- headers = {}
60
- body = nil
61
-
62
- raise ArgumentError.new("applicationId is required") unless params.has_key?(:applicationId)
63
- raise ArgumentError.new("experienceSlugId is required") unless params.has_key?(:experienceSlugId)
64
-
65
- headers[:losantdomain] = params[:losantdomain] if params.has_key?(:losantdomain)
66
- query_params[:_actions] = params[:_actions] if params.has_key?(:_actions)
67
- query_params[:_links] = params[:_links] if params.has_key?(:_links)
68
- query_params[:_embedded] = params[:_embedded] if params.has_key?(:_embedded)
69
-
70
- path = "/applications/#{params[:applicationId]}/experience/slugs/#{params[:experienceSlugId]}"
71
-
72
- @client.request(
73
- method: :delete,
74
- path: path,
75
- query: query_params,
76
- headers: headers,
77
- body: body)
78
- end
79
-
80
- # Retrieves information on an experience slug
81
- #
82
- # Authentication:
83
- # The client must be configured with a valid api
84
- # access token to call this action. The token
85
- # must include at least one of the following scopes:
86
- # all.Application, all.Application.read, all.Organization, all.Organization.read, all.User, all.User.read, experienceSlug.*, or experienceSlug.get.
87
- #
88
- # Parameters:
89
- # * {string} applicationId - ID associated with the application
90
- # * {string} experienceSlugId - ID associated with the experience slug
91
- # * {string} losantdomain - Domain scope of request (rarely needed)
92
- # * {boolean} _actions - Return resource actions in response
93
- # * {boolean} _links - Return resource link in response
94
- # * {boolean} _embedded - Return embedded resources in response
95
- #
96
- # Responses:
97
- # * 200 - Experience slug information (https://api.losant.com/#/definitions/experienceSlug)
98
- #
99
- # Errors:
100
- # * 400 - Error if malformed request (https://api.losant.com/#/definitions/error)
101
- # * 404 - Error if experience slug was not found (https://api.losant.com/#/definitions/error)
102
- def get(params = {})
103
- params = Utils.symbolize_hash_keys(params)
104
- query_params = { _actions: false, _links: true, _embedded: true }
105
- headers = {}
106
- body = nil
107
-
108
- raise ArgumentError.new("applicationId is required") unless params.has_key?(:applicationId)
109
- raise ArgumentError.new("experienceSlugId is required") unless params.has_key?(:experienceSlugId)
110
-
111
- headers[:losantdomain] = params[:losantdomain] if params.has_key?(:losantdomain)
112
- query_params[:_actions] = params[:_actions] if params.has_key?(:_actions)
113
- query_params[:_links] = params[:_links] if params.has_key?(:_links)
114
- query_params[:_embedded] = params[:_embedded] if params.has_key?(:_embedded)
115
-
116
- path = "/applications/#{params[:applicationId]}/experience/slugs/#{params[:experienceSlugId]}"
117
-
118
- @client.request(
119
- method: :get,
120
- path: path,
121
- query: query_params,
122
- headers: headers,
123
- body: body)
124
- end
125
-
126
- # Updates information about an experience slug
127
- #
128
- # Authentication:
129
- # The client must be configured with a valid api
130
- # access token to call this action. The token
131
- # must include at least one of the following scopes:
132
- # all.Application, all.Organization, all.User, experienceSlug.*, or experienceSlug.patch.
133
- #
134
- # Parameters:
135
- # * {string} applicationId - ID associated with the application
136
- # * {string} experienceSlugId - ID associated with the experience slug
137
- # * {hash} experienceSlug - Object containing new properties of the experience slug (https://api.losant.com/#/definitions/experienceSlugPatch)
138
- # * {string} losantdomain - Domain scope of request (rarely needed)
139
- # * {boolean} _actions - Return resource actions in response
140
- # * {boolean} _links - Return resource link in response
141
- # * {boolean} _embedded - Return embedded resources in response
142
- #
143
- # Responses:
144
- # * 200 - Updated experience slug information (https://api.losant.com/#/definitions/experienceSlug)
145
- #
146
- # Errors:
147
- # * 400 - Error if malformed request (https://api.losant.com/#/definitions/error)
148
- # * 404 - Error if experience slug was not found (https://api.losant.com/#/definitions/error)
149
- def patch(params = {})
150
- params = Utils.symbolize_hash_keys(params)
151
- query_params = { _actions: false, _links: true, _embedded: true }
152
- headers = {}
153
- body = nil
154
-
155
- raise ArgumentError.new("applicationId is required") unless params.has_key?(:applicationId)
156
- raise ArgumentError.new("experienceSlugId is required") unless params.has_key?(:experienceSlugId)
157
- raise ArgumentError.new("experienceSlug is required") unless params.has_key?(:experienceSlug)
158
-
159
- body = params[:experienceSlug] if params.has_key?(:experienceSlug)
160
- headers[:losantdomain] = params[:losantdomain] if params.has_key?(:losantdomain)
161
- query_params[:_actions] = params[:_actions] if params.has_key?(:_actions)
162
- query_params[:_links] = params[:_links] if params.has_key?(:_links)
163
- query_params[:_embedded] = params[:_embedded] if params.has_key?(:_embedded)
164
-
165
- path = "/applications/#{params[:applicationId]}/experience/slugs/#{params[:experienceSlugId]}"
166
-
167
- @client.request(
168
- method: :patch,
169
- path: path,
170
- query: query_params,
171
- headers: headers,
172
- body: body)
173
- end
174
-
175
- end
176
- end
@@ -1,126 +0,0 @@
1
- # The MIT License (MIT)
2
- #
3
- # Copyright (c) 2023 Losant IoT, Inc.
4
- #
5
- # Permission is hereby granted, free of charge, to any person obtaining a copy
6
- # of this software and associated documentation files (the "Software"), to deal
7
- # in the Software without restriction, including without limitation the rights
8
- # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- # copies of the Software, and to permit persons to whom the Software is
10
- # furnished to do so, subject to the following conditions:
11
- #
12
- # The above copyright notice and this permission notice shall be included in all
13
- # copies or substantial portions of the Software.
14
- #
15
- # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- # SOFTWARE.
22
-
23
- require "json"
24
-
25
- module LosantRest
26
-
27
- # Class containing all the actions for the Experience Slugs Resource
28
- class ExperienceSlugs
29
-
30
- def initialize(client)
31
- @client = client
32
- end
33
-
34
- # Returns the experience slugs for an application
35
- #
36
- # Authentication:
37
- # The client must be configured with a valid api
38
- # access token to call this action. The token
39
- # must include at least one of the following scopes:
40
- # all.Application, all.Application.cli, all.Application.read, all.Organization, all.Organization.read, all.User, all.User.cli, all.User.read, experienceSlugs.*, or experienceSlugs.get.
41
- #
42
- # Parameters:
43
- # * {string} applicationId - ID associated with the application
44
- # * {string} losantdomain - Domain scope of request (rarely needed)
45
- # * {boolean} _actions - Return resource actions in response
46
- # * {boolean} _links - Return resource link in response
47
- # * {boolean} _embedded - Return embedded resources in response
48
- #
49
- # Responses:
50
- # * 200 - Collection of experience slugs (https://api.losant.com/#/definitions/experienceSlugs)
51
- #
52
- # Errors:
53
- # * 400 - Error if malformed request (https://api.losant.com/#/definitions/error)
54
- # * 404 - Error if application was not found (https://api.losant.com/#/definitions/error)
55
- def get(params = {})
56
- params = Utils.symbolize_hash_keys(params)
57
- query_params = { _actions: false, _links: true, _embedded: true }
58
- headers = {}
59
- body = nil
60
-
61
- raise ArgumentError.new("applicationId is required") unless params.has_key?(:applicationId)
62
-
63
- headers[:losantdomain] = params[:losantdomain] if params.has_key?(:losantdomain)
64
- query_params[:_actions] = params[:_actions] if params.has_key?(:_actions)
65
- query_params[:_links] = params[:_links] if params.has_key?(:_links)
66
- query_params[:_embedded] = params[:_embedded] if params.has_key?(:_embedded)
67
-
68
- path = "/applications/#{params[:applicationId]}/experience/slugs"
69
-
70
- @client.request(
71
- method: :get,
72
- path: path,
73
- query: query_params,
74
- headers: headers,
75
- body: body)
76
- end
77
-
78
- # Create a new experience slug for an application
79
- #
80
- # Authentication:
81
- # The client must be configured with a valid api
82
- # access token to call this action. The token
83
- # must include at least one of the following scopes:
84
- # all.Application, all.Organization, all.User, experienceSlugs.*, or experienceSlugs.post.
85
- #
86
- # Parameters:
87
- # * {string} applicationId - ID associated with the application
88
- # * {hash} experienceSlug - New experience slug information (https://api.losant.com/#/definitions/experienceSlugPost)
89
- # * {string} losantdomain - Domain scope of request (rarely needed)
90
- # * {boolean} _actions - Return resource actions in response
91
- # * {boolean} _links - Return resource link in response
92
- # * {boolean} _embedded - Return embedded resources in response
93
- #
94
- # Responses:
95
- # * 201 - Successfully created experience slug (https://api.losant.com/#/definitions/experienceSlug)
96
- #
97
- # Errors:
98
- # * 400 - Error if malformed request (https://api.losant.com/#/definitions/error)
99
- # * 404 - Error if application was not found (https://api.losant.com/#/definitions/error)
100
- def post(params = {})
101
- params = Utils.symbolize_hash_keys(params)
102
- query_params = { _actions: false, _links: true, _embedded: true }
103
- headers = {}
104
- body = nil
105
-
106
- raise ArgumentError.new("applicationId is required") unless params.has_key?(:applicationId)
107
- raise ArgumentError.new("experienceSlug is required") unless params.has_key?(:experienceSlug)
108
-
109
- body = params[:experienceSlug] if params.has_key?(:experienceSlug)
110
- headers[:losantdomain] = params[:losantdomain] if params.has_key?(:losantdomain)
111
- query_params[:_actions] = params[:_actions] if params.has_key?(:_actions)
112
- query_params[:_links] = params[:_links] if params.has_key?(:_links)
113
- query_params[:_embedded] = params[:_embedded] if params.has_key?(:_embedded)
114
-
115
- path = "/applications/#{params[:applicationId]}/experience/slugs"
116
-
117
- @client.request(
118
- method: :post,
119
- path: path,
120
- query: query_params,
121
- headers: headers,
122
- body: body)
123
- end
124
-
125
- end
126
- end
@@ -1,176 +0,0 @@
1
- # The MIT License (MIT)
2
- #
3
- # Copyright (c) 2023 Losant IoT, Inc.
4
- #
5
- # Permission is hereby granted, free of charge, to any person obtaining a copy
6
- # of this software and associated documentation files (the "Software"), to deal
7
- # in the Software without restriction, including without limitation the rights
8
- # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- # copies of the Software, and to permit persons to whom the Software is
10
- # furnished to do so, subject to the following conditions:
11
- #
12
- # The above copyright notice and this permission notice shall be included in all
13
- # copies or substantial portions of the Software.
14
- #
15
- # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- # SOFTWARE.
22
-
23
- require "json"
24
-
25
- module LosantRest
26
-
27
- # Class containing all the actions for the Experience User Resource
28
- class ExperienceUser
29
-
30
- def initialize(client)
31
- @client = client
32
- end
33
-
34
- # Deletes an experience user
35
- #
36
- # Authentication:
37
- # The client must be configured with a valid api
38
- # access token to call this action. The token
39
- # must include at least one of the following scopes:
40
- # all.Application, all.Organization, all.User, experienceUser.*, or experienceUser.delete.
41
- #
42
- # Parameters:
43
- # * {string} applicationId - ID associated with the application
44
- # * {string} experienceUserId - ID associated with the experience user
45
- # * {string} losantdomain - Domain scope of request (rarely needed)
46
- # * {boolean} _actions - Return resource actions in response
47
- # * {boolean} _links - Return resource link in response
48
- # * {boolean} _embedded - Return embedded resources in response
49
- #
50
- # Responses:
51
- # * 200 - If experience user was successfully deleted (https://api.losant.com/#/definitions/success)
52
- #
53
- # Errors:
54
- # * 400 - Error if malformed request (https://api.losant.com/#/definitions/error)
55
- # * 404 - Error if experience user was not found (https://api.losant.com/#/definitions/error)
56
- def delete(params = {})
57
- params = Utils.symbolize_hash_keys(params)
58
- query_params = { _actions: false, _links: true, _embedded: true }
59
- headers = {}
60
- body = nil
61
-
62
- raise ArgumentError.new("applicationId is required") unless params.has_key?(:applicationId)
63
- raise ArgumentError.new("experienceUserId is required") unless params.has_key?(:experienceUserId)
64
-
65
- headers[:losantdomain] = params[:losantdomain] if params.has_key?(:losantdomain)
66
- query_params[:_actions] = params[:_actions] if params.has_key?(:_actions)
67
- query_params[:_links] = params[:_links] if params.has_key?(:_links)
68
- query_params[:_embedded] = params[:_embedded] if params.has_key?(:_embedded)
69
-
70
- path = "/applications/#{params[:applicationId]}/experience/users/#{params[:experienceUserId]}"
71
-
72
- @client.request(
73
- method: :delete,
74
- path: path,
75
- query: query_params,
76
- headers: headers,
77
- body: body)
78
- end
79
-
80
- # Retrieves information on an experience user
81
- #
82
- # Authentication:
83
- # The client must be configured with a valid api
84
- # access token to call this action. The token
85
- # must include at least one of the following scopes:
86
- # all.Application, all.Application.read, all.Organization, all.Organization.read, all.User, all.User.read, experienceUser.*, or experienceUser.get.
87
- #
88
- # Parameters:
89
- # * {string} applicationId - ID associated with the application
90
- # * {string} experienceUserId - ID associated with the experience user
91
- # * {string} losantdomain - Domain scope of request (rarely needed)
92
- # * {boolean} _actions - Return resource actions in response
93
- # * {boolean} _links - Return resource link in response
94
- # * {boolean} _embedded - Return embedded resources in response
95
- #
96
- # Responses:
97
- # * 200 - Experience user information (https://api.losant.com/#/definitions/experienceUser)
98
- #
99
- # Errors:
100
- # * 400 - Error if malformed request (https://api.losant.com/#/definitions/error)
101
- # * 404 - Error if experience user was not found (https://api.losant.com/#/definitions/error)
102
- def get(params = {})
103
- params = Utils.symbolize_hash_keys(params)
104
- query_params = { _actions: false, _links: true, _embedded: true }
105
- headers = {}
106
- body = nil
107
-
108
- raise ArgumentError.new("applicationId is required") unless params.has_key?(:applicationId)
109
- raise ArgumentError.new("experienceUserId is required") unless params.has_key?(:experienceUserId)
110
-
111
- headers[:losantdomain] = params[:losantdomain] if params.has_key?(:losantdomain)
112
- query_params[:_actions] = params[:_actions] if params.has_key?(:_actions)
113
- query_params[:_links] = params[:_links] if params.has_key?(:_links)
114
- query_params[:_embedded] = params[:_embedded] if params.has_key?(:_embedded)
115
-
116
- path = "/applications/#{params[:applicationId]}/experience/users/#{params[:experienceUserId]}"
117
-
118
- @client.request(
119
- method: :get,
120
- path: path,
121
- query: query_params,
122
- headers: headers,
123
- body: body)
124
- end
125
-
126
- # Updates information about an experience user
127
- #
128
- # Authentication:
129
- # The client must be configured with a valid api
130
- # access token to call this action. The token
131
- # must include at least one of the following scopes:
132
- # all.Application, all.Organization, all.User, experienceUser.*, or experienceUser.patch.
133
- #
134
- # Parameters:
135
- # * {string} applicationId - ID associated with the application
136
- # * {string} experienceUserId - ID associated with the experience user
137
- # * {hash} experienceUser - Object containing new properties of the experience user (https://api.losant.com/#/definitions/experienceUserPatch)
138
- # * {string} losantdomain - Domain scope of request (rarely needed)
139
- # * {boolean} _actions - Return resource actions in response
140
- # * {boolean} _links - Return resource link in response
141
- # * {boolean} _embedded - Return embedded resources in response
142
- #
143
- # Responses:
144
- # * 200 - Updated experience user information (https://api.losant.com/#/definitions/experienceUser)
145
- #
146
- # Errors:
147
- # * 400 - Error if malformed request (https://api.losant.com/#/definitions/error)
148
- # * 404 - Error if experience user was not found (https://api.losant.com/#/definitions/error)
149
- def patch(params = {})
150
- params = Utils.symbolize_hash_keys(params)
151
- query_params = { _actions: false, _links: true, _embedded: true }
152
- headers = {}
153
- body = nil
154
-
155
- raise ArgumentError.new("applicationId is required") unless params.has_key?(:applicationId)
156
- raise ArgumentError.new("experienceUserId is required") unless params.has_key?(:experienceUserId)
157
- raise ArgumentError.new("experienceUser is required") unless params.has_key?(:experienceUser)
158
-
159
- body = params[:experienceUser] if params.has_key?(:experienceUser)
160
- headers[:losantdomain] = params[:losantdomain] if params.has_key?(:losantdomain)
161
- query_params[:_actions] = params[:_actions] if params.has_key?(:_actions)
162
- query_params[:_links] = params[:_links] if params.has_key?(:_links)
163
- query_params[:_embedded] = params[:_embedded] if params.has_key?(:_embedded)
164
-
165
- path = "/applications/#{params[:applicationId]}/experience/users/#{params[:experienceUserId]}"
166
-
167
- @client.request(
168
- method: :patch,
169
- path: path,
170
- query: query_params,
171
- headers: headers,
172
- body: body)
173
- end
174
-
175
- end
176
- end
@@ -1,142 +0,0 @@
1
- # The MIT License (MIT)
2
- #
3
- # Copyright (c) 2023 Losant IoT, Inc.
4
- #
5
- # Permission is hereby granted, free of charge, to any person obtaining a copy
6
- # of this software and associated documentation files (the "Software"), to deal
7
- # in the Software without restriction, including without limitation the rights
8
- # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- # copies of the Software, and to permit persons to whom the Software is
10
- # furnished to do so, subject to the following conditions:
11
- #
12
- # The above copyright notice and this permission notice shall be included in all
13
- # copies or substantial portions of the Software.
14
- #
15
- # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- # SOFTWARE.
22
-
23
- require "json"
24
-
25
- module LosantRest
26
-
27
- # Class containing all the actions for the Experience Users Resource
28
- class ExperienceUsers
29
-
30
- def initialize(client)
31
- @client = client
32
- end
33
-
34
- # Returns the experience users for an application
35
- #
36
- # Authentication:
37
- # The client must be configured with a valid api
38
- # access token to call this action. The token
39
- # must include at least one of the following scopes:
40
- # all.Application, all.Application.read, all.Organization, all.Organization.read, all.User, all.User.read, experienceUsers.*, or experienceUsers.get.
41
- #
42
- # Parameters:
43
- # * {string} applicationId - ID associated with the application
44
- # * {string} sortField - Field to sort the results by. Accepted values are: firstName, lastName, email, id, creationDate, lastLogin, lastUpdated
45
- # * {string} sortDirection - Direction to sort the results by. Accepted values are: asc, desc
46
- # * {string} page - Which page of results to return
47
- # * {string} perPage - How many items to return per page
48
- # * {string} filterField - Field to filter the results by. Blank or not provided means no filtering. Accepted values are: firstName, lastName, email
49
- # * {string} filter - Filter to apply against the filtered field. Supports globbing. Blank or not provided means no filtering.
50
- # * {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.
51
- # * {string} includeAncestorGroups - If set will include members from ancestors of the specified experienceGroupId
52
- # * {string} losantdomain - Domain scope of request (rarely needed)
53
- # * {boolean} _actions - Return resource actions in response
54
- # * {boolean} _links - Return resource link in response
55
- # * {boolean} _embedded - Return embedded resources in response
56
- #
57
- # Responses:
58
- # * 200 - Collection of experience users (https://api.losant.com/#/definitions/experienceUsers)
59
- #
60
- # Errors:
61
- # * 400 - Error if malformed request (https://api.losant.com/#/definitions/error)
62
- # * 404 - Error if application was not found (https://api.losant.com/#/definitions/error)
63
- def get(params = {})
64
- params = Utils.symbolize_hash_keys(params)
65
- query_params = { _actions: false, _links: true, _embedded: true }
66
- headers = {}
67
- body = nil
68
-
69
- raise ArgumentError.new("applicationId is required") unless params.has_key?(:applicationId)
70
-
71
- query_params[:sortField] = params[:sortField] if params.has_key?(:sortField)
72
- query_params[:sortDirection] = params[:sortDirection] if params.has_key?(:sortDirection)
73
- query_params[:page] = params[:page] if params.has_key?(:page)
74
- query_params[:perPage] = params[:perPage] if params.has_key?(:perPage)
75
- query_params[:filterField] = params[:filterField] if params.has_key?(:filterField)
76
- query_params[:filter] = params[:filter] if params.has_key?(:filter)
77
- query_params[:experienceGroupId] = params[:experienceGroupId] if params.has_key?(:experienceGroupId)
78
- query_params[:includeAncestorGroups] = params[:includeAncestorGroups] if params.has_key?(:includeAncestorGroups)
79
- headers[:losantdomain] = params[:losantdomain] if params.has_key?(:losantdomain)
80
- query_params[:_actions] = params[:_actions] if params.has_key?(:_actions)
81
- query_params[:_links] = params[:_links] if params.has_key?(:_links)
82
- query_params[:_embedded] = params[:_embedded] if params.has_key?(:_embedded)
83
-
84
- path = "/applications/#{params[:applicationId]}/experience/users"
85
-
86
- @client.request(
87
- method: :get,
88
- path: path,
89
- query: query_params,
90
- headers: headers,
91
- body: body)
92
- end
93
-
94
- # Create a new experience user for an application
95
- #
96
- # Authentication:
97
- # The client must be configured with a valid api
98
- # access token to call this action. The token
99
- # must include at least one of the following scopes:
100
- # all.Application, all.Organization, all.User, experienceUsers.*, or experienceUsers.post.
101
- #
102
- # Parameters:
103
- # * {string} applicationId - ID associated with the application
104
- # * {hash} experienceUser - New experience user information (https://api.losant.com/#/definitions/experienceUserPost)
105
- # * {string} losantdomain - Domain scope of request (rarely needed)
106
- # * {boolean} _actions - Return resource actions in response
107
- # * {boolean} _links - Return resource link in response
108
- # * {boolean} _embedded - Return embedded resources in response
109
- #
110
- # Responses:
111
- # * 201 - Successfully created experience user (https://api.losant.com/#/definitions/experienceUser)
112
- #
113
- # Errors:
114
- # * 400 - Error if malformed request (https://api.losant.com/#/definitions/error)
115
- # * 404 - Error if application was not found (https://api.losant.com/#/definitions/error)
116
- def post(params = {})
117
- params = Utils.symbolize_hash_keys(params)
118
- query_params = { _actions: false, _links: true, _embedded: true }
119
- headers = {}
120
- body = nil
121
-
122
- raise ArgumentError.new("applicationId is required") unless params.has_key?(:applicationId)
123
- raise ArgumentError.new("experienceUser is required") unless params.has_key?(:experienceUser)
124
-
125
- body = params[:experienceUser] if params.has_key?(:experienceUser)
126
- headers[:losantdomain] = params[:losantdomain] if params.has_key?(:losantdomain)
127
- query_params[:_actions] = params[:_actions] if params.has_key?(:_actions)
128
- query_params[:_links] = params[:_links] if params.has_key?(:_links)
129
- query_params[:_embedded] = params[:_embedded] if params.has_key?(:_embedded)
130
-
131
- path = "/applications/#{params[:applicationId]}/experience/users"
132
-
133
- @client.request(
134
- method: :post,
135
- path: path,
136
- query: query_params,
137
- headers: headers,
138
- body: body)
139
- end
140
-
141
- end
142
- end