launchdarkly_api 2.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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,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 ProjectsApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+
23
+ # Delete a project by key. Caution-- deleting a project will delete all associated environments and feature flags. You cannot delete the last project in an account.
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 [Hash] opts the optional parameters
27
+ # @return [nil]
28
+ def delete_project(project_key, opts = {})
29
+ delete_project_with_http_info(project_key, opts)
30
+ return nil
31
+ end
32
+
33
+ # Delete a project by key. Caution-- deleting a project will delete all associated environments and feature flags. You cannot delete the last project in an account.
34
+ #
35
+ # @param project_key The project key, used to tie the flags together under one project so they can be managed together.
36
+ # @param [Hash] opts the optional parameters
37
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
38
+ def delete_project_with_http_info(project_key, opts = {})
39
+ if @api_client.config.debugging
40
+ @api_client.config.logger.debug "Calling API: ProjectsApi.delete_project ..."
41
+ end
42
+ # verify the required parameter 'project_key' is set
43
+ if @api_client.config.client_side_validation && project_key.nil?
44
+ fail ArgumentError, "Missing the required parameter 'project_key' when calling ProjectsApi.delete_project"
45
+ end
46
+ # resource path
47
+ local_var_path = "/projects/{projectKey}".sub('{' + 'projectKey' + '}', project_key.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: ProjectsApi#delete_project\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
73
+ end
74
+ return data, status_code, headers
75
+ end
76
+
77
+ # Fetch a single project by key.
78
+ #
79
+ # @param project_key The project key, used to tie the flags together under one project so they can be managed together.
80
+ # @param [Hash] opts the optional parameters
81
+ # @return [Project]
82
+ def get_project(project_key, opts = {})
83
+ data, _status_code, _headers = get_project_with_http_info(project_key, opts)
84
+ return data
85
+ end
86
+
87
+ # Fetch a single project by key.
88
+ #
89
+ # @param project_key The project key, used to tie the flags together under one project so they can be managed together.
90
+ # @param [Hash] opts the optional parameters
91
+ # @return [Array<(Project, Fixnum, Hash)>] Project data, response status code and response headers
92
+ def get_project_with_http_info(project_key, opts = {})
93
+ if @api_client.config.debugging
94
+ @api_client.config.logger.debug "Calling API: ProjectsApi.get_project ..."
95
+ end
96
+ # verify the required parameter 'project_key' is set
97
+ if @api_client.config.client_side_validation && project_key.nil?
98
+ fail ArgumentError, "Missing the required parameter 'project_key' when calling ProjectsApi.get_project"
99
+ end
100
+ # resource path
101
+ local_var_path = "/projects/{projectKey}".sub('{' + 'projectKey' + '}', project_key.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 => 'Project')
126
+ if @api_client.config.debugging
127
+ @api_client.config.logger.debug "API called: ProjectsApi#get_project\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
128
+ end
129
+ return data, status_code, headers
130
+ end
131
+
132
+ # Returns a list of all projects in the account.
133
+ #
134
+ # @param [Hash] opts the optional parameters
135
+ # @return [Projects]
136
+ def get_projects(opts = {})
137
+ data, _status_code, _headers = get_projects_with_http_info(opts)
138
+ return data
139
+ end
140
+
141
+ # Returns a list of all projects in the account.
142
+ #
143
+ # @param [Hash] opts the optional parameters
144
+ # @return [Array<(Projects, Fixnum, Hash)>] Projects data, response status code and response headers
145
+ def get_projects_with_http_info(opts = {})
146
+ if @api_client.config.debugging
147
+ @api_client.config.logger.debug "Calling API: ProjectsApi.get_projects ..."
148
+ end
149
+ # resource path
150
+ local_var_path = "/projects"
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 => 'Projects')
175
+ if @api_client.config.debugging
176
+ @api_client.config.logger.debug "API called: ProjectsApi#get_projects\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
177
+ end
178
+ return data, status_code, headers
179
+ end
180
+
181
+ # Modify a project by ID.
182
+ #
183
+ # @param project_key The project key, used to tie the flags together under one project so they can be managed together.
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 [Project]
187
+ def patch_project(project_key, patch_delta, opts = {})
188
+ data, _status_code, _headers = patch_project_with_http_info(project_key, patch_delta, opts)
189
+ return data
190
+ end
191
+
192
+ # Modify a project by ID.
193
+ #
194
+ # @param project_key The project key, used to tie the flags together under one project so they can be managed together.
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<(Project, Fixnum, Hash)>] Project data, response status code and response headers
198
+ def patch_project_with_http_info(project_key, patch_delta, opts = {})
199
+ if @api_client.config.debugging
200
+ @api_client.config.logger.debug "Calling API: ProjectsApi.patch_project ..."
201
+ end
202
+ # verify the required parameter 'project_key' is set
203
+ if @api_client.config.client_side_validation && project_key.nil?
204
+ fail ArgumentError, "Missing the required parameter 'project_key' when calling ProjectsApi.patch_project"
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 ProjectsApi.patch_project"
209
+ end
210
+ # resource path
211
+ local_var_path = "/projects/{projectKey}".sub('{' + 'projectKey' + '}', project_key.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 => 'Project')
236
+ if @api_client.config.debugging
237
+ @api_client.config.logger.debug "API called: ProjectsApi#patch_project\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
238
+ end
239
+ return data, status_code, headers
240
+ end
241
+
242
+ # Create a new project with the given key and name.
243
+ #
244
+ # @param project_body Project keys must be unique within an account.
245
+ # @param [Hash] opts the optional parameters
246
+ # @return [nil]
247
+ def post_project(project_body, opts = {})
248
+ post_project_with_http_info(project_body, opts)
249
+ return nil
250
+ end
251
+
252
+ # Create a new project with the given key and name.
253
+ #
254
+ # @param project_body Project keys must be unique within an account.
255
+ # @param [Hash] opts the optional parameters
256
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
257
+ def post_project_with_http_info(project_body, opts = {})
258
+ if @api_client.config.debugging
259
+ @api_client.config.logger.debug "Calling API: ProjectsApi.post_project ..."
260
+ end
261
+ # verify the required parameter 'project_body' is set
262
+ if @api_client.config.client_side_validation && project_body.nil?
263
+ fail ArgumentError, "Missing the required parameter 'project_body' when calling ProjectsApi.post_project"
264
+ end
265
+ # resource path
266
+ local_var_path = "/projects"
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(project_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: ProjectsApi#post_project\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
292
+ end
293
+ return data, status_code, headers
294
+ end
295
+ end
296
+ end
@@ -0,0 +1,72 @@
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 RootApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+
23
+ #
24
+ # You can issue a GET request to the root resource to find all of the resource categories supported by the API.
25
+ # @param [Hash] opts the optional parameters
26
+ # @return [Links]
27
+ def get_root(opts = {})
28
+ data, _status_code, _headers = get_root_with_http_info(opts)
29
+ return data
30
+ end
31
+
32
+ #
33
+ # You can issue a GET request to the root resource to find all of the resource categories supported by the API.
34
+ # @param [Hash] opts the optional parameters
35
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
36
+ def get_root_with_http_info(opts = {})
37
+ if @api_client.config.debugging
38
+ @api_client.config.logger.debug "Calling API: RootApi.get_root ..."
39
+ end
40
+ # resource path
41
+ local_var_path = "/"
42
+
43
+ # query parameters
44
+ query_params = {}
45
+
46
+ # header parameters
47
+ header_params = {}
48
+ # HTTP header 'Accept' (if needed)
49
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
50
+ # HTTP header 'Content-Type'
51
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
52
+
53
+ # form parameters
54
+ form_params = {}
55
+
56
+ # http body (model)
57
+ post_body = nil
58
+ auth_names = ['Token']
59
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
60
+ :header_params => header_params,
61
+ :query_params => query_params,
62
+ :form_params => form_params,
63
+ :body => post_body,
64
+ :auth_names => auth_names,
65
+ :return_type => 'Links')
66
+ if @api_client.config.debugging
67
+ @api_client.config.logger.debug "API called: RootApi#get_root\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
68
+ end
69
+ return data, status_code, headers
70
+ end
71
+ end
72
+ 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 TeamMembersApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+
23
+ # Delete a team member by ID.
24
+ #
25
+ # @param member_id The member ID.
26
+ # @param [Hash] opts the optional parameters
27
+ # @return [nil]
28
+ def delete_member(member_id, opts = {})
29
+ delete_member_with_http_info(member_id, opts)
30
+ return nil
31
+ end
32
+
33
+ # Delete a team member by ID.
34
+ #
35
+ # @param member_id The member ID.
36
+ # @param [Hash] opts the optional parameters
37
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
38
+ def delete_member_with_http_info(member_id, opts = {})
39
+ if @api_client.config.debugging
40
+ @api_client.config.logger.debug "Calling API: TeamMembersApi.delete_member ..."
41
+ end
42
+ # verify the required parameter 'member_id' is set
43
+ if @api_client.config.client_side_validation && member_id.nil?
44
+ fail ArgumentError, "Missing the required parameter 'member_id' when calling TeamMembersApi.delete_member"
45
+ end
46
+ # resource path
47
+ local_var_path = "/members/{memberId}".sub('{' + 'memberId' + '}', member_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: TeamMembersApi#delete_member\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
73
+ end
74
+ return data, status_code, headers
75
+ end
76
+
77
+ # Get a single team member by ID.
78
+ #
79
+ # @param member_id The member ID.
80
+ # @param [Hash] opts the optional parameters
81
+ # @return [Member]
82
+ def get_member(member_id, opts = {})
83
+ data, _status_code, _headers = get_member_with_http_info(member_id, opts)
84
+ return data
85
+ end
86
+
87
+ # Get a single team member by ID.
88
+ #
89
+ # @param member_id The member ID.
90
+ # @param [Hash] opts the optional parameters
91
+ # @return [Array<(Member, Fixnum, Hash)>] Member data, response status code and response headers
92
+ def get_member_with_http_info(member_id, opts = {})
93
+ if @api_client.config.debugging
94
+ @api_client.config.logger.debug "Calling API: TeamMembersApi.get_member ..."
95
+ end
96
+ # verify the required parameter 'member_id' is set
97
+ if @api_client.config.client_side_validation && member_id.nil?
98
+ fail ArgumentError, "Missing the required parameter 'member_id' when calling TeamMembersApi.get_member"
99
+ end
100
+ # resource path
101
+ local_var_path = "/members/{memberId}".sub('{' + 'memberId' + '}', member_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 => 'Member')
126
+ if @api_client.config.debugging
127
+ @api_client.config.logger.debug "API called: TeamMembersApi#get_member\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
128
+ end
129
+ return data, status_code, headers
130
+ end
131
+
132
+ # Returns a list of all members in the account.
133
+ #
134
+ # @param [Hash] opts the optional parameters
135
+ # @return [Members]
136
+ def get_members(opts = {})
137
+ data, _status_code, _headers = get_members_with_http_info(opts)
138
+ return data
139
+ end
140
+
141
+ # Returns a list of all members in the account.
142
+ #
143
+ # @param [Hash] opts the optional parameters
144
+ # @return [Array<(Members, Fixnum, Hash)>] Members data, response status code and response headers
145
+ def get_members_with_http_info(opts = {})
146
+ if @api_client.config.debugging
147
+ @api_client.config.logger.debug "Calling API: TeamMembersApi.get_members ..."
148
+ end
149
+ # resource path
150
+ local_var_path = "/members"
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 => 'Members')
175
+ if @api_client.config.debugging
176
+ @api_client.config.logger.debug "API called: TeamMembersApi#get_members\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
177
+ end
178
+ return data, status_code, headers
179
+ end
180
+
181
+ # Modify a team member by ID.
182
+ #
183
+ # @param member_id The member 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 [Member]
187
+ def patch_member(member_id, patch_delta, opts = {})
188
+ data, _status_code, _headers = patch_member_with_http_info(member_id, patch_delta, opts)
189
+ return data
190
+ end
191
+
192
+ # Modify a team member by ID.
193
+ #
194
+ # @param member_id The member 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<(Member, Fixnum, Hash)>] Member data, response status code and response headers
198
+ def patch_member_with_http_info(member_id, patch_delta, opts = {})
199
+ if @api_client.config.debugging
200
+ @api_client.config.logger.debug "Calling API: TeamMembersApi.patch_member ..."
201
+ end
202
+ # verify the required parameter 'member_id' is set
203
+ if @api_client.config.client_side_validation && member_id.nil?
204
+ fail ArgumentError, "Missing the required parameter 'member_id' when calling TeamMembersApi.patch_member"
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 TeamMembersApi.patch_member"
209
+ end
210
+ # resource path
211
+ local_var_path = "/members/{memberId}".sub('{' + 'memberId' + '}', member_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 => 'Member')
236
+ if @api_client.config.debugging
237
+ @api_client.config.logger.debug "API called: TeamMembersApi#patch_member\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
238
+ end
239
+ return data, status_code, headers
240
+ end
241
+
242
+ # Invite new members.
243
+ #
244
+ # @param members_body New members to invite.
245
+ # @param [Hash] opts the optional parameters
246
+ # @return [nil]
247
+ def post_members(members_body, opts = {})
248
+ post_members_with_http_info(members_body, opts)
249
+ return nil
250
+ end
251
+
252
+ # Invite new members.
253
+ #
254
+ # @param members_body New members to invite.
255
+ # @param [Hash] opts the optional parameters
256
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
257
+ def post_members_with_http_info(members_body, opts = {})
258
+ if @api_client.config.debugging
259
+ @api_client.config.logger.debug "Calling API: TeamMembersApi.post_members ..."
260
+ end
261
+ # verify the required parameter 'members_body' is set
262
+ if @api_client.config.client_side_validation && members_body.nil?
263
+ fail ArgumentError, "Missing the required parameter 'members_body' when calling TeamMembersApi.post_members"
264
+ end
265
+ # resource path
266
+ local_var_path = "/members"
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(members_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: TeamMembersApi#post_members\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
292
+ end
293
+ return data, status_code, headers
294
+ end
295
+ end
296
+ end