launchdarkly_api 2.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (219) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +7 -0
  3. data/Gemfile.lock +69 -0
  4. data/LICENSE.txt +13 -0
  5. data/README.md +264 -0
  6. data/Rakefile +8 -0
  7. data/docs/Action.md +7 -0
  8. data/docs/Actions.md +7 -0
  9. data/docs/AuditLogApi.md +123 -0
  10. data/docs/AuditLogEntries.md +9 -0
  11. data/docs/AuditLogEntry.md +19 -0
  12. data/docs/AuditLogEntryTarget.md +10 -0
  13. data/docs/Clause.md +11 -0
  14. data/docs/CustomRole.md +13 -0
  15. data/docs/CustomRoleBody.md +11 -0
  16. data/docs/CustomRoleKeyOrId.md +7 -0
  17. data/docs/CustomRoles.md +9 -0
  18. data/docs/CustomRolesApi.md +268 -0
  19. data/docs/Environment.md +17 -0
  20. data/docs/EnvironmentBody.md +11 -0
  21. data/docs/EnvironmentsApi.md +233 -0
  22. data/docs/Fallthrough.md +9 -0
  23. data/docs/FeatureFlag.md +20 -0
  24. data/docs/FeatureFlagBody.md +13 -0
  25. data/docs/FeatureFlagConfig.md +19 -0
  26. data/docs/FeatureFlagStatus.md +11 -0
  27. data/docs/FeatureFlagStatuses.md +9 -0
  28. data/docs/FeatureFlags.md +9 -0
  29. data/docs/FeatureFlagsApi.md +411 -0
  30. data/docs/Id.md +7 -0
  31. data/docs/Link.md +9 -0
  32. data/docs/Links.md +9 -0
  33. data/docs/Member.md +14 -0
  34. data/docs/Members.md +9 -0
  35. data/docs/MembersBody.md +13 -0
  36. data/docs/PatchComment.md +9 -0
  37. data/docs/PatchOperation.md +10 -0
  38. data/docs/Policy.md +10 -0
  39. data/docs/Prerequisite.md +9 -0
  40. data/docs/Project.md +12 -0
  41. data/docs/ProjectBody.md +9 -0
  42. data/docs/Projects.md +9 -0
  43. data/docs/ProjectsApi.md +268 -0
  44. data/docs/Resource.md +7 -0
  45. data/docs/Resources.md +7 -0
  46. data/docs/Role.md +7 -0
  47. data/docs/Rollout.md +8 -0
  48. data/docs/RootApi.md +56 -0
  49. data/docs/Rule.md +10 -0
  50. data/docs/Statement.md +12 -0
  51. data/docs/Statements.md +7 -0
  52. data/docs/Target.md +9 -0
  53. data/docs/TeamMembersApi.md +268 -0
  54. data/docs/User.md +18 -0
  55. data/docs/UserFlagSetting.md +10 -0
  56. data/docs/UserFlagSettings.md +9 -0
  57. data/docs/UserRecord.md +12 -0
  58. data/docs/UserSegment.md +17 -0
  59. data/docs/UserSegmentBody.md +11 -0
  60. data/docs/UserSegmentRule.md +10 -0
  61. data/docs/UserSegments.md +9 -0
  62. data/docs/UserSegmentsApi.md +305 -0
  63. data/docs/UserSettingsApi.md +193 -0
  64. data/docs/UserSettingsBody.md +8 -0
  65. data/docs/Users.md +10 -0
  66. data/docs/UsersApi.md +255 -0
  67. data/docs/Variation.md +10 -0
  68. data/docs/Webhook.md +14 -0
  69. data/docs/WebhookBody.md +12 -0
  70. data/docs/Webhooks.md +9 -0
  71. data/docs/WebhooksApi.md +268 -0
  72. data/docs/WeightedVariation.md +9 -0
  73. data/git_push.sh +55 -0
  74. data/launchdarkly_api-2.0.2.gem +0 -0
  75. data/launchdarkly_api.gemspec +46 -0
  76. data/lib/.DS_Store +0 -0
  77. data/lib/launchdarkly_api/api/audit_log_api.rb +142 -0
  78. data/lib/launchdarkly_api/api/custom_roles_api.rb +296 -0
  79. data/lib/launchdarkly_api/api/environments_api.rb +271 -0
  80. data/lib/launchdarkly_api/api/feature_flags_api.rb +463 -0
  81. data/lib/launchdarkly_api/api/projects_api.rb +296 -0
  82. data/lib/launchdarkly_api/api/root_api.rb +72 -0
  83. data/lib/launchdarkly_api/api/team_members_api.rb +296 -0
  84. data/lib/launchdarkly_api/api/user_segments_api.rb +359 -0
  85. data/lib/launchdarkly_api/api/user_settings_api.rb +241 -0
  86. data/lib/launchdarkly_api/api/users_api.rb +299 -0
  87. data/lib/launchdarkly_api/api/webhooks_api.rb +296 -0
  88. data/lib/launchdarkly_api/api_client.rb +389 -0
  89. data/lib/launchdarkly_api/api_error.rb +38 -0
  90. data/lib/launchdarkly_api/configuration.rb +209 -0
  91. data/lib/launchdarkly_api/models/action.rb +179 -0
  92. data/lib/launchdarkly_api/models/actions.rb +179 -0
  93. data/lib/launchdarkly_api/models/audit_log_entries.rb +199 -0
  94. data/lib/launchdarkly_api/models/audit_log_entry.rb +287 -0
  95. data/lib/launchdarkly_api/models/audit_log_entry_target.rb +208 -0
  96. data/lib/launchdarkly_api/models/clause.rb +217 -0
  97. data/lib/launchdarkly_api/models/custom_role.rb +237 -0
  98. data/lib/launchdarkly_api/models/custom_role_body.rb +234 -0
  99. data/lib/launchdarkly_api/models/custom_role_key_or_id.rb +179 -0
  100. data/lib/launchdarkly_api/models/custom_roles.rb +197 -0
  101. data/lib/launchdarkly_api/models/environment.rb +277 -0
  102. data/lib/launchdarkly_api/models/environment_body.rb +234 -0
  103. data/lib/launchdarkly_api/models/fallthrough.rb +197 -0
  104. data/lib/launchdarkly_api/models/feature_flag.rb +310 -0
  105. data/lib/launchdarkly_api/models/feature_flag_body.rb +258 -0
  106. data/lib/launchdarkly_api/models/feature_flag_config.rb +294 -0
  107. data/lib/launchdarkly_api/models/feature_flag_status.rb +249 -0
  108. data/lib/launchdarkly_api/models/feature_flag_statuses.rb +199 -0
  109. data/lib/launchdarkly_api/models/feature_flags.rb +199 -0
  110. data/lib/launchdarkly_api/models/id.rb +179 -0
  111. data/lib/launchdarkly_api/models/link.rb +197 -0
  112. data/lib/launchdarkly_api/models/links.rb +197 -0
  113. data/lib/launchdarkly_api/models/member.rb +244 -0
  114. data/lib/launchdarkly_api/models/members.rb +197 -0
  115. data/lib/launchdarkly_api/models/members_body.rb +240 -0
  116. data/lib/launchdarkly_api/models/patch_comment.rb +199 -0
  117. data/lib/launchdarkly_api/models/patch_operation.rb +221 -0
  118. data/lib/launchdarkly_api/models/policy.rb +207 -0
  119. data/lib/launchdarkly_api/models/prerequisite.rb +197 -0
  120. data/lib/launchdarkly_api/models/project.rb +226 -0
  121. data/lib/launchdarkly_api/models/project_body.rb +207 -0
  122. data/lib/launchdarkly_api/models/projects.rb +199 -0
  123. data/lib/launchdarkly_api/models/resource.rb +179 -0
  124. data/lib/launchdarkly_api/models/resources.rb +179 -0
  125. data/lib/launchdarkly_api/models/role.rb +33 -0
  126. data/lib/launchdarkly_api/models/rollout.rb +190 -0
  127. data/lib/launchdarkly_api/models/rule.rb +208 -0
  128. data/lib/launchdarkly_api/models/statement.rb +259 -0
  129. data/lib/launchdarkly_api/models/statements.rb +179 -0
  130. data/lib/launchdarkly_api/models/target.rb +199 -0
  131. data/lib/launchdarkly_api/models/user.rb +278 -0
  132. data/lib/launchdarkly_api/models/user_flag_setting.rb +208 -0
  133. data/lib/launchdarkly_api/models/user_flag_settings.rb +197 -0
  134. data/lib/launchdarkly_api/models/user_record.rb +224 -0
  135. data/lib/launchdarkly_api/models/user_segment.rb +300 -0
  136. data/lib/launchdarkly_api/models/user_segment_body.rb +231 -0
  137. data/lib/launchdarkly_api/models/user_segment_rule.rb +208 -0
  138. data/lib/launchdarkly_api/models/user_segments.rb +199 -0
  139. data/lib/launchdarkly_api/models/user_settings_body.rb +189 -0
  140. data/lib/launchdarkly_api/models/users.rb +208 -0
  141. data/lib/launchdarkly_api/models/variation.rb +211 -0
  142. data/lib/launchdarkly_api/models/webhook.rb +249 -0
  143. data/lib/launchdarkly_api/models/webhook_body.rb +244 -0
  144. data/lib/launchdarkly_api/models/webhooks.rb +199 -0
  145. data/lib/launchdarkly_api/models/weighted_variation.rb +197 -0
  146. data/lib/launchdarkly_api/version.rb +15 -0
  147. data/lib/launchdarkly_api.rb +105 -0
  148. data/lib/swagger_client/.DS_Store +0 -0
  149. data/spec/api/audit_log_api_spec.rb +63 -0
  150. data/spec/api/custom_roles_api_spec.rb +95 -0
  151. data/spec/api/environments_api_spec.rb +88 -0
  152. data/spec/api/feature_flags_api_spec.rb +130 -0
  153. data/spec/api/projects_api_spec.rb +95 -0
  154. data/spec/api/root_api_spec.rb +46 -0
  155. data/spec/api/team_members_api_spec.rb +95 -0
  156. data/spec/api/user_segments_api_spec.rb +106 -0
  157. data/spec/api/user_settings_api_spec.rb +80 -0
  158. data/spec/api/users_api_spec.rb +96 -0
  159. data/spec/api/webhooks_api_spec.rb +95 -0
  160. data/spec/api_client_spec.rb +226 -0
  161. data/spec/configuration_spec.rb +42 -0
  162. data/spec/models/action_spec.rb +36 -0
  163. data/spec/models/actions_spec.rb +36 -0
  164. data/spec/models/audit_log_entries_spec.rb +48 -0
  165. data/spec/models/audit_log_entry_spec.rb +108 -0
  166. data/spec/models/audit_log_entry_target_spec.rb +54 -0
  167. data/spec/models/clause_spec.rb +60 -0
  168. data/spec/models/custom_role_body_spec.rb +60 -0
  169. data/spec/models/custom_role_key_or_id_spec.rb +36 -0
  170. data/spec/models/custom_role_spec.rb +72 -0
  171. data/spec/models/custom_roles_spec.rb +48 -0
  172. data/spec/models/environment_body_spec.rb +60 -0
  173. data/spec/models/environment_spec.rb +96 -0
  174. data/spec/models/fallthrough_spec.rb +48 -0
  175. data/spec/models/feature_flag_body_spec.rb +72 -0
  176. data/spec/models/feature_flag_config_spec.rb +108 -0
  177. data/spec/models/feature_flag_spec.rb +114 -0
  178. data/spec/models/feature_flag_status_spec.rb +64 -0
  179. data/spec/models/feature_flag_statuses_spec.rb +48 -0
  180. data/spec/models/feature_flags_spec.rb +48 -0
  181. data/spec/models/id_spec.rb +36 -0
  182. data/spec/models/link_spec.rb +48 -0
  183. data/spec/models/links_spec.rb +48 -0
  184. data/spec/models/member_spec.rb +78 -0
  185. data/spec/models/members_body_spec.rb +72 -0
  186. data/spec/models/members_spec.rb +48 -0
  187. data/spec/models/patch_comment_spec.rb +48 -0
  188. data/spec/models/patch_operation_spec.rb +54 -0
  189. data/spec/models/policy_spec.rb +54 -0
  190. data/spec/models/prerequisite_spec.rb +48 -0
  191. data/spec/models/project_body_spec.rb +48 -0
  192. data/spec/models/project_spec.rb +66 -0
  193. data/spec/models/projects_spec.rb +48 -0
  194. data/spec/models/resource_spec.rb +36 -0
  195. data/spec/models/resources_spec.rb +36 -0
  196. data/spec/models/role_spec.rb +36 -0
  197. data/spec/models/rollout_spec.rb +42 -0
  198. data/spec/models/rule_spec.rb +54 -0
  199. data/spec/models/statement_spec.rb +70 -0
  200. data/spec/models/statements_spec.rb +36 -0
  201. data/spec/models/target_spec.rb +48 -0
  202. data/spec/models/user_flag_setting_spec.rb +54 -0
  203. data/spec/models/user_flag_settings_spec.rb +48 -0
  204. data/spec/models/user_record_spec.rb +66 -0
  205. data/spec/models/user_segment_body_spec.rb +60 -0
  206. data/spec/models/user_segment_rule_spec.rb +54 -0
  207. data/spec/models/user_segment_spec.rb +96 -0
  208. data/spec/models/user_segments_spec.rb +48 -0
  209. data/spec/models/user_settings_body_spec.rb +42 -0
  210. data/spec/models/user_spec.rb +102 -0
  211. data/spec/models/users_spec.rb +54 -0
  212. data/spec/models/variation_spec.rb +54 -0
  213. data/spec/models/webhook_body_spec.rb +66 -0
  214. data/spec/models/webhook_spec.rb +78 -0
  215. data/spec/models/webhooks_spec.rb +48 -0
  216. data/spec/models/weighted_variation_spec.rb +48 -0
  217. data/spec/spec_helper.rb +111 -0
  218. data/test.rb +50 -0
  219. metadata +509 -0
@@ -0,0 +1,299 @@
1
+ =begin
2
+ #LaunchDarkly REST API
3
+
4
+ #Build custom integrations with the LaunchDarkly REST API
5
+
6
+ OpenAPI spec version: 2.0.3
7
+ Contact: support@launchdarkly.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.3.1
10
+
11
+ =end
12
+
13
+ require "uri"
14
+
15
+ module LaunchDarklyApi
16
+ class UsersApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+
23
+ # Delete a user by ID.
24
+ #
25
+ # @param project_key The project key, used to tie the flags together under one project so they can be managed together.
26
+ # @param environment_key The environment key, used to tie together flag configuration and users under one environment so they can be managed together.
27
+ # @param user_key The user's key.
28
+ # @param [Hash] opts the optional parameters
29
+ # @return [nil]
30
+ def delete_user(project_key, environment_key, user_key, opts = {})
31
+ delete_user_with_http_info(project_key, environment_key, user_key, opts)
32
+ return nil
33
+ end
34
+
35
+ # Delete a user by ID.
36
+ #
37
+ # @param project_key The project key, used to tie the flags together under one project so they can be managed together.
38
+ # @param environment_key The environment key, used to tie together flag configuration and users under one environment so they can be managed together.
39
+ # @param user_key The user's key.
40
+ # @param [Hash] opts the optional parameters
41
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
42
+ def delete_user_with_http_info(project_key, environment_key, user_key, opts = {})
43
+ if @api_client.config.debugging
44
+ @api_client.config.logger.debug "Calling API: UsersApi.delete_user ..."
45
+ end
46
+ # verify the required parameter 'project_key' is set
47
+ if @api_client.config.client_side_validation && project_key.nil?
48
+ fail ArgumentError, "Missing the required parameter 'project_key' when calling UsersApi.delete_user"
49
+ end
50
+ # verify the required parameter 'environment_key' is set
51
+ if @api_client.config.client_side_validation && environment_key.nil?
52
+ fail ArgumentError, "Missing the required parameter 'environment_key' when calling UsersApi.delete_user"
53
+ end
54
+ # verify the required parameter 'user_key' is set
55
+ if @api_client.config.client_side_validation && user_key.nil?
56
+ fail ArgumentError, "Missing the required parameter 'user_key' when calling UsersApi.delete_user"
57
+ end
58
+ # resource path
59
+ local_var_path = "/users/{projectKey}/{environmentKey}/{userKey}".sub('{' + 'projectKey' + '}', project_key.to_s).sub('{' + 'environmentKey' + '}', environment_key.to_s).sub('{' + 'userKey' + '}', user_key.to_s)
60
+
61
+ # query parameters
62
+ query_params = {}
63
+
64
+ # header parameters
65
+ header_params = {}
66
+ # HTTP header 'Accept' (if needed)
67
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
68
+ # HTTP header 'Content-Type'
69
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
70
+
71
+ # form parameters
72
+ form_params = {}
73
+
74
+ # http body (model)
75
+ post_body = nil
76
+ auth_names = ['Token']
77
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
78
+ :header_params => header_params,
79
+ :query_params => query_params,
80
+ :form_params => form_params,
81
+ :body => post_body,
82
+ :auth_names => auth_names)
83
+ if @api_client.config.debugging
84
+ @api_client.config.logger.debug "API called: UsersApi#delete_user\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
85
+ end
86
+ return data, status_code, headers
87
+ end
88
+
89
+ # Search users in LaunchDarkly based on their last active date, or a search query. It should not be used to enumerate all users in LaunchDarkly-- use the List users API resource.
90
+ #
91
+ # @param project_key The project key, used to tie the flags together under one project so they can be managed together.
92
+ # @param environment_key The environment key, used to tie together flag configuration and users under one environment so they can be managed together.
93
+ # @param [Hash] opts the optional parameters
94
+ # @option opts [String] :q Search query.
95
+ # @option opts [Integer] :limit Pagination limit.
96
+ # @option opts [Integer] :offset Specifies the first item to return in the collection.
97
+ # @option opts [Float] :after A timestamp filter, expressed as a Unix epoch time in milliseconds. All entries returned will have occured after this timestamp.
98
+ # @return [Users]
99
+ def get_search_users(project_key, environment_key, opts = {})
100
+ data, _status_code, _headers = get_search_users_with_http_info(project_key, environment_key, opts)
101
+ return data
102
+ end
103
+
104
+ # Search users in LaunchDarkly based on their last active date, or a search query. It should not be used to enumerate all users in LaunchDarkly-- use the List users API resource.
105
+ #
106
+ # @param project_key The project key, used to tie the flags together under one project so they can be managed together.
107
+ # @param environment_key The environment key, used to tie together flag configuration and users under one environment so they can be managed together.
108
+ # @param [Hash] opts the optional parameters
109
+ # @option opts [String] :q Search query.
110
+ # @option opts [Integer] :limit Pagination limit.
111
+ # @option opts [Integer] :offset Specifies the first item to return in the collection.
112
+ # @option opts [Float] :after A timestamp filter, expressed as a Unix epoch time in milliseconds. All entries returned will have occured after this timestamp.
113
+ # @return [Array<(Users, Fixnum, Hash)>] Users data, response status code and response headers
114
+ def get_search_users_with_http_info(project_key, environment_key, opts = {})
115
+ if @api_client.config.debugging
116
+ @api_client.config.logger.debug "Calling API: UsersApi.get_search_users ..."
117
+ end
118
+ # verify the required parameter 'project_key' is set
119
+ if @api_client.config.client_side_validation && project_key.nil?
120
+ fail ArgumentError, "Missing the required parameter 'project_key' when calling UsersApi.get_search_users"
121
+ end
122
+ # verify the required parameter 'environment_key' is set
123
+ if @api_client.config.client_side_validation && environment_key.nil?
124
+ fail ArgumentError, "Missing the required parameter 'environment_key' when calling UsersApi.get_search_users"
125
+ end
126
+ # resource path
127
+ local_var_path = "/user-search/{projectKey}/{environmentKey}".sub('{' + 'projectKey' + '}', project_key.to_s).sub('{' + 'environmentKey' + '}', environment_key.to_s)
128
+
129
+ # query parameters
130
+ query_params = {}
131
+ query_params[:'q'] = opts[:'q'] if !opts[:'q'].nil?
132
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
133
+ query_params[:'offset'] = opts[:'offset'] if !opts[:'offset'].nil?
134
+ query_params[:'after'] = opts[:'after'] if !opts[:'after'].nil?
135
+
136
+ # header parameters
137
+ header_params = {}
138
+ # HTTP header 'Accept' (if needed)
139
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
140
+ # HTTP header 'Content-Type'
141
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
142
+
143
+ # form parameters
144
+ form_params = {}
145
+
146
+ # http body (model)
147
+ post_body = nil
148
+ auth_names = ['Token']
149
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
150
+ :header_params => header_params,
151
+ :query_params => query_params,
152
+ :form_params => form_params,
153
+ :body => post_body,
154
+ :auth_names => auth_names,
155
+ :return_type => 'Users')
156
+ if @api_client.config.debugging
157
+ @api_client.config.logger.debug "API called: UsersApi#get_search_users\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
158
+ end
159
+ return data, status_code, headers
160
+ end
161
+
162
+ # Get a user by key.
163
+ #
164
+ # @param project_key The project key, used to tie the flags together under one project so they can be managed together.
165
+ # @param environment_key The environment key, used to tie together flag configuration and users under one environment so they can be managed together.
166
+ # @param user_key The user&#39;s key.
167
+ # @param [Hash] opts the optional parameters
168
+ # @return [User]
169
+ def get_user(project_key, environment_key, user_key, opts = {})
170
+ data, _status_code, _headers = get_user_with_http_info(project_key, environment_key, user_key, opts)
171
+ return data
172
+ end
173
+
174
+ # Get a user by key.
175
+ #
176
+ # @param project_key The project key, used to tie the flags together under one project so they can be managed together.
177
+ # @param environment_key The environment key, used to tie together flag configuration and users under one environment so they can be managed together.
178
+ # @param user_key The user&#39;s key.
179
+ # @param [Hash] opts the optional parameters
180
+ # @return [Array<(User, Fixnum, Hash)>] User data, response status code and response headers
181
+ def get_user_with_http_info(project_key, environment_key, user_key, opts = {})
182
+ if @api_client.config.debugging
183
+ @api_client.config.logger.debug "Calling API: UsersApi.get_user ..."
184
+ end
185
+ # verify the required parameter 'project_key' is set
186
+ if @api_client.config.client_side_validation && project_key.nil?
187
+ fail ArgumentError, "Missing the required parameter 'project_key' when calling UsersApi.get_user"
188
+ end
189
+ # verify the required parameter 'environment_key' is set
190
+ if @api_client.config.client_side_validation && environment_key.nil?
191
+ fail ArgumentError, "Missing the required parameter 'environment_key' when calling UsersApi.get_user"
192
+ end
193
+ # verify the required parameter 'user_key' is set
194
+ if @api_client.config.client_side_validation && user_key.nil?
195
+ fail ArgumentError, "Missing the required parameter 'user_key' when calling UsersApi.get_user"
196
+ end
197
+ # resource path
198
+ local_var_path = "/users/{projectKey}/{environmentKey}/{userKey}".sub('{' + 'projectKey' + '}', project_key.to_s).sub('{' + 'environmentKey' + '}', environment_key.to_s).sub('{' + 'userKey' + '}', user_key.to_s)
199
+
200
+ # query parameters
201
+ query_params = {}
202
+
203
+ # header parameters
204
+ header_params = {}
205
+ # HTTP header 'Accept' (if needed)
206
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
207
+ # HTTP header 'Content-Type'
208
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
209
+
210
+ # form parameters
211
+ form_params = {}
212
+
213
+ # http body (model)
214
+ post_body = nil
215
+ auth_names = ['Token']
216
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
217
+ :header_params => header_params,
218
+ :query_params => query_params,
219
+ :form_params => form_params,
220
+ :body => post_body,
221
+ :auth_names => auth_names,
222
+ :return_type => 'User')
223
+ if @api_client.config.debugging
224
+ @api_client.config.logger.debug "API called: UsersApi#get_user\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
225
+ end
226
+ return data, status_code, headers
227
+ end
228
+
229
+ # List all users in the environment. Includes the total count of users. In each page, there will be up to 'limit' users returned (default 20). This is useful for exporting all users in the system for further analysis. Paginated collections will include a next link containing a URL with the next set of elements in the collection.
230
+ #
231
+ # @param project_key The project key, used to tie the flags together under one project so they can be managed together.
232
+ # @param environment_key The environment key, used to tie together flag configuration and users under one environment so they can be managed together.
233
+ # @param [Hash] opts the optional parameters
234
+ # @option opts [Integer] :limit Pagination limit.
235
+ # @option opts [String] :h This parameter is required when following \&quot;next\&quot; links.
236
+ # @option opts [String] :scroll_id This parameter is required when following \&quot;next\&quot; links.
237
+ # @return [Users]
238
+ def get_users(project_key, environment_key, opts = {})
239
+ data, _status_code, _headers = get_users_with_http_info(project_key, environment_key, opts)
240
+ return data
241
+ end
242
+
243
+ # List all users in the environment. Includes the total count of users. In each page, there will be up to &#39;limit&#39; users returned (default 20). This is useful for exporting all users in the system for further analysis. Paginated collections will include a next link containing a URL with the next set of elements in the collection.
244
+ #
245
+ # @param project_key The project key, used to tie the flags together under one project so they can be managed together.
246
+ # @param environment_key The environment key, used to tie together flag configuration and users under one environment so they can be managed together.
247
+ # @param [Hash] opts the optional parameters
248
+ # @option opts [Integer] :limit Pagination limit.
249
+ # @option opts [String] :h This parameter is required when following \&quot;next\&quot; links.
250
+ # @option opts [String] :scroll_id This parameter is required when following \&quot;next\&quot; links.
251
+ # @return [Array<(Users, Fixnum, Hash)>] Users data, response status code and response headers
252
+ def get_users_with_http_info(project_key, environment_key, opts = {})
253
+ if @api_client.config.debugging
254
+ @api_client.config.logger.debug "Calling API: UsersApi.get_users ..."
255
+ end
256
+ # verify the required parameter 'project_key' is set
257
+ if @api_client.config.client_side_validation && project_key.nil?
258
+ fail ArgumentError, "Missing the required parameter 'project_key' when calling UsersApi.get_users"
259
+ end
260
+ # verify the required parameter 'environment_key' is set
261
+ if @api_client.config.client_side_validation && environment_key.nil?
262
+ fail ArgumentError, "Missing the required parameter 'environment_key' when calling UsersApi.get_users"
263
+ end
264
+ # resource path
265
+ local_var_path = "/users/{projectKey}/{environmentKey}".sub('{' + 'projectKey' + '}', project_key.to_s).sub('{' + 'environmentKey' + '}', environment_key.to_s)
266
+
267
+ # query parameters
268
+ query_params = {}
269
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
270
+ query_params[:'h'] = opts[:'h'] if !opts[:'h'].nil?
271
+ query_params[:'scrollId'] = opts[:'scroll_id'] if !opts[:'scroll_id'].nil?
272
+
273
+ # header parameters
274
+ header_params = {}
275
+ # HTTP header 'Accept' (if needed)
276
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
277
+ # HTTP header 'Content-Type'
278
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
279
+
280
+ # form parameters
281
+ form_params = {}
282
+
283
+ # http body (model)
284
+ post_body = nil
285
+ auth_names = ['Token']
286
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
287
+ :header_params => header_params,
288
+ :query_params => query_params,
289
+ :form_params => form_params,
290
+ :body => post_body,
291
+ :auth_names => auth_names,
292
+ :return_type => 'Users')
293
+ if @api_client.config.debugging
294
+ @api_client.config.logger.debug "API called: UsersApi#get_users\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
295
+ end
296
+ return data, status_code, headers
297
+ end
298
+ end
299
+ end
@@ -0,0 +1,296 @@
1
+ =begin
2
+ #LaunchDarkly REST API
3
+
4
+ #Build custom integrations with the LaunchDarkly REST API
5
+
6
+ OpenAPI spec version: 2.0.3
7
+ Contact: support@launchdarkly.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.3.1
10
+
11
+ =end
12
+
13
+ require "uri"
14
+
15
+ module LaunchDarklyApi
16
+ class WebhooksApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+
23
+ # Delete a webhook by ID.
24
+ #
25
+ # @param resource_id The resource ID.
26
+ # @param [Hash] opts the optional parameters
27
+ # @return [nil]
28
+ def delete_webhook(resource_id, opts = {})
29
+ delete_webhook_with_http_info(resource_id, opts)
30
+ return nil
31
+ end
32
+
33
+ # Delete a webhook by ID.
34
+ #
35
+ # @param resource_id The resource ID.
36
+ # @param [Hash] opts the optional parameters
37
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
38
+ def delete_webhook_with_http_info(resource_id, opts = {})
39
+ if @api_client.config.debugging
40
+ @api_client.config.logger.debug "Calling API: WebhooksApi.delete_webhook ..."
41
+ end
42
+ # verify the required parameter 'resource_id' is set
43
+ if @api_client.config.client_side_validation && resource_id.nil?
44
+ fail ArgumentError, "Missing the required parameter 'resource_id' when calling WebhooksApi.delete_webhook"
45
+ end
46
+ # resource path
47
+ local_var_path = "/webhooks/{resourceId}".sub('{' + 'resourceId' + '}', resource_id.to_s)
48
+
49
+ # query parameters
50
+ query_params = {}
51
+
52
+ # header parameters
53
+ header_params = {}
54
+ # HTTP header 'Accept' (if needed)
55
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
56
+ # HTTP header 'Content-Type'
57
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
58
+
59
+ # form parameters
60
+ form_params = {}
61
+
62
+ # http body (model)
63
+ post_body = nil
64
+ auth_names = ['Token']
65
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
66
+ :header_params => header_params,
67
+ :query_params => query_params,
68
+ :form_params => form_params,
69
+ :body => post_body,
70
+ :auth_names => auth_names)
71
+ if @api_client.config.debugging
72
+ @api_client.config.logger.debug "API called: WebhooksApi#delete_webhook\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
73
+ end
74
+ return data, status_code, headers
75
+ end
76
+
77
+ # Get a webhook by ID.
78
+ #
79
+ # @param resource_id The resource ID.
80
+ # @param [Hash] opts the optional parameters
81
+ # @return [Webhook]
82
+ def get_webhook(resource_id, opts = {})
83
+ data, _status_code, _headers = get_webhook_with_http_info(resource_id, opts)
84
+ return data
85
+ end
86
+
87
+ # Get a webhook by ID.
88
+ #
89
+ # @param resource_id The resource ID.
90
+ # @param [Hash] opts the optional parameters
91
+ # @return [Array<(Webhook, Fixnum, Hash)>] Webhook data, response status code and response headers
92
+ def get_webhook_with_http_info(resource_id, opts = {})
93
+ if @api_client.config.debugging
94
+ @api_client.config.logger.debug "Calling API: WebhooksApi.get_webhook ..."
95
+ end
96
+ # verify the required parameter 'resource_id' is set
97
+ if @api_client.config.client_side_validation && resource_id.nil?
98
+ fail ArgumentError, "Missing the required parameter 'resource_id' when calling WebhooksApi.get_webhook"
99
+ end
100
+ # resource path
101
+ local_var_path = "/webhooks/{resourceId}".sub('{' + 'resourceId' + '}', resource_id.to_s)
102
+
103
+ # query parameters
104
+ query_params = {}
105
+
106
+ # header parameters
107
+ header_params = {}
108
+ # HTTP header 'Accept' (if needed)
109
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
110
+ # HTTP header 'Content-Type'
111
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
112
+
113
+ # form parameters
114
+ form_params = {}
115
+
116
+ # http body (model)
117
+ post_body = nil
118
+ auth_names = ['Token']
119
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
120
+ :header_params => header_params,
121
+ :query_params => query_params,
122
+ :form_params => form_params,
123
+ :body => post_body,
124
+ :auth_names => auth_names,
125
+ :return_type => 'Webhook')
126
+ if @api_client.config.debugging
127
+ @api_client.config.logger.debug "API called: WebhooksApi#get_webhook\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
128
+ end
129
+ return data, status_code, headers
130
+ end
131
+
132
+ # Fetch a list of all webhooks.
133
+ #
134
+ # @param [Hash] opts the optional parameters
135
+ # @return [Webhooks]
136
+ def get_webhooks(opts = {})
137
+ data, _status_code, _headers = get_webhooks_with_http_info(opts)
138
+ return data
139
+ end
140
+
141
+ # Fetch a list of all webhooks.
142
+ #
143
+ # @param [Hash] opts the optional parameters
144
+ # @return [Array<(Webhooks, Fixnum, Hash)>] Webhooks data, response status code and response headers
145
+ def get_webhooks_with_http_info(opts = {})
146
+ if @api_client.config.debugging
147
+ @api_client.config.logger.debug "Calling API: WebhooksApi.get_webhooks ..."
148
+ end
149
+ # resource path
150
+ local_var_path = "/webhooks"
151
+
152
+ # query parameters
153
+ query_params = {}
154
+
155
+ # header parameters
156
+ header_params = {}
157
+ # HTTP header 'Accept' (if needed)
158
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
159
+ # HTTP header 'Content-Type'
160
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
161
+
162
+ # form parameters
163
+ form_params = {}
164
+
165
+ # http body (model)
166
+ post_body = nil
167
+ auth_names = ['Token']
168
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
169
+ :header_params => header_params,
170
+ :query_params => query_params,
171
+ :form_params => form_params,
172
+ :body => post_body,
173
+ :auth_names => auth_names,
174
+ :return_type => 'Webhooks')
175
+ if @api_client.config.debugging
176
+ @api_client.config.logger.debug "API called: WebhooksApi#get_webhooks\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
177
+ end
178
+ return data, status_code, headers
179
+ end
180
+
181
+ # Modify a webhook by ID.
182
+ #
183
+ # @param resource_id The resource ID.
184
+ # @param patch_delta Requires a JSON Patch representation of the desired changes to the project. &#39;http://jsonpatch.com/&#39;
185
+ # @param [Hash] opts the optional parameters
186
+ # @return [Webhook]
187
+ def patch_webhook(resource_id, patch_delta, opts = {})
188
+ data, _status_code, _headers = patch_webhook_with_http_info(resource_id, patch_delta, opts)
189
+ return data
190
+ end
191
+
192
+ # Modify a webhook by ID.
193
+ #
194
+ # @param resource_id The resource ID.
195
+ # @param patch_delta Requires a JSON Patch representation of the desired changes to the project. &#39;http://jsonpatch.com/&#39;
196
+ # @param [Hash] opts the optional parameters
197
+ # @return [Array<(Webhook, Fixnum, Hash)>] Webhook data, response status code and response headers
198
+ def patch_webhook_with_http_info(resource_id, patch_delta, opts = {})
199
+ if @api_client.config.debugging
200
+ @api_client.config.logger.debug "Calling API: WebhooksApi.patch_webhook ..."
201
+ end
202
+ # verify the required parameter 'resource_id' is set
203
+ if @api_client.config.client_side_validation && resource_id.nil?
204
+ fail ArgumentError, "Missing the required parameter 'resource_id' when calling WebhooksApi.patch_webhook"
205
+ end
206
+ # verify the required parameter 'patch_delta' is set
207
+ if @api_client.config.client_side_validation && patch_delta.nil?
208
+ fail ArgumentError, "Missing the required parameter 'patch_delta' when calling WebhooksApi.patch_webhook"
209
+ end
210
+ # resource path
211
+ local_var_path = "/webhooks/{resourceId}".sub('{' + 'resourceId' + '}', resource_id.to_s)
212
+
213
+ # query parameters
214
+ query_params = {}
215
+
216
+ # header parameters
217
+ header_params = {}
218
+ # HTTP header 'Accept' (if needed)
219
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
220
+ # HTTP header 'Content-Type'
221
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
222
+
223
+ # form parameters
224
+ form_params = {}
225
+
226
+ # http body (model)
227
+ post_body = @api_client.object_to_http_body(patch_delta)
228
+ auth_names = ['Token']
229
+ data, status_code, headers = @api_client.call_api(:PATCH, local_var_path,
230
+ :header_params => header_params,
231
+ :query_params => query_params,
232
+ :form_params => form_params,
233
+ :body => post_body,
234
+ :auth_names => auth_names,
235
+ :return_type => 'Webhook')
236
+ if @api_client.config.debugging
237
+ @api_client.config.logger.debug "API called: WebhooksApi#patch_webhook\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
238
+ end
239
+ return data, status_code, headers
240
+ end
241
+
242
+ # Create a webhook.
243
+ #
244
+ # @param webhook_body New webhook.
245
+ # @param [Hash] opts the optional parameters
246
+ # @return [nil]
247
+ def post_webhook(webhook_body, opts = {})
248
+ post_webhook_with_http_info(webhook_body, opts)
249
+ return nil
250
+ end
251
+
252
+ # Create a webhook.
253
+ #
254
+ # @param webhook_body New webhook.
255
+ # @param [Hash] opts the optional parameters
256
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
257
+ def post_webhook_with_http_info(webhook_body, opts = {})
258
+ if @api_client.config.debugging
259
+ @api_client.config.logger.debug "Calling API: WebhooksApi.post_webhook ..."
260
+ end
261
+ # verify the required parameter 'webhook_body' is set
262
+ if @api_client.config.client_side_validation && webhook_body.nil?
263
+ fail ArgumentError, "Missing the required parameter 'webhook_body' when calling WebhooksApi.post_webhook"
264
+ end
265
+ # resource path
266
+ local_var_path = "/webhooks"
267
+
268
+ # query parameters
269
+ query_params = {}
270
+
271
+ # header parameters
272
+ header_params = {}
273
+ # HTTP header 'Accept' (if needed)
274
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
275
+ # HTTP header 'Content-Type'
276
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
277
+
278
+ # form parameters
279
+ form_params = {}
280
+
281
+ # http body (model)
282
+ post_body = @api_client.object_to_http_body(webhook_body)
283
+ auth_names = ['Token']
284
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
285
+ :header_params => header_params,
286
+ :query_params => query_params,
287
+ :form_params => form_params,
288
+ :body => post_body,
289
+ :auth_names => auth_names)
290
+ if @api_client.config.debugging
291
+ @api_client.config.logger.debug "API called: WebhooksApi#post_webhook\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
292
+ end
293
+ return data, status_code, headers
294
+ end
295
+ end
296
+ end