launchdarkly_api 3.9.0 → 5.0.0

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 (320) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +235 -223
  3. data/docs/ApprovalRequest.md +18 -0
  4. data/docs/{FeatureFlagChangeRequestApplyConfigBody.md → ApprovalRequestApplyConfigBody.md} +1 -1
  5. data/docs/{FeatureFlagChangeRequestConfigBody.md → ApprovalRequestConfigBody.md} +1 -1
  6. data/docs/{FeatureFlagChangeRequestReview.md → ApprovalRequestReview.md} +3 -3
  7. data/docs/{FeatureFlagChangeRequestReviewConfigBody.md → ApprovalRequestReviewConfigBody.md} +2 -2
  8. data/docs/{FeatureFlagChangeRequestReviewStatus.md → ApprovalRequestReviewStatus.md} +1 -1
  9. data/docs/{FeatureFlagChangeRequests.md → ApprovalRequests.md} +2 -2
  10. data/docs/Environment.md +1 -0
  11. data/docs/EnvironmentApprovalSettings.md +12 -0
  12. data/docs/FeatureFlagConfig.md +2 -0
  13. data/docs/FeatureFlagsApi.md +517 -77
  14. data/docs/FlagConfigScheduledChangesConflictsBody.md +9 -0
  15. data/docs/FlagConfigScheduledChangesPatchBody.md +9 -0
  16. data/docs/FlagConfigScheduledChangesPostBody.md +10 -0
  17. data/docs/Member.md +2 -0
  18. data/docs/MemberLastSeenMetadata.md +8 -0
  19. data/docs/UserRecordApi.md +67 -0
  20. data/docs/UsersApi.md +0 -59
  21. data/launchdarkly_api.gemspec +1 -1
  22. data/lib/launchdarkly_api.rb +14 -8
  23. data/lib/launchdarkly_api/api/access_tokens_api.rb +1 -1
  24. data/lib/launchdarkly_api/api/audit_log_api.rb +1 -1
  25. data/lib/launchdarkly_api/api/custom_roles_api.rb +1 -1
  26. data/lib/launchdarkly_api/api/customer_metrics_api.rb +1 -1
  27. data/lib/launchdarkly_api/api/data_export_destinations_api.rb +1 -1
  28. data/lib/launchdarkly_api/api/environments_api.rb +1 -1
  29. data/lib/launchdarkly_api/api/feature_flags_api.rb +639 -141
  30. data/lib/launchdarkly_api/api/integrations_api.rb +1 -1
  31. data/lib/launchdarkly_api/api/projects_api.rb +1 -1
  32. data/lib/launchdarkly_api/api/relay_proxy_configurations_api.rb +1 -1
  33. data/lib/launchdarkly_api/api/root_api.rb +1 -1
  34. data/lib/launchdarkly_api/api/team_members_api.rb +1 -1
  35. data/lib/launchdarkly_api/api/user_record_api.rb +87 -0
  36. data/lib/launchdarkly_api/api/user_segments_api.rb +1 -1
  37. data/lib/launchdarkly_api/api/user_settings_api.rb +1 -1
  38. data/lib/launchdarkly_api/api/users_api.rb +1 -65
  39. data/lib/launchdarkly_api/api/webhooks_api.rb +1 -1
  40. data/lib/launchdarkly_api/api_client.rb +1 -1
  41. data/lib/launchdarkly_api/api_error.rb +1 -1
  42. data/lib/launchdarkly_api/configuration.rb +1 -1
  43. data/lib/launchdarkly_api/models/{feature_flag_change_request.rb → approval_request.rb} +9 -18
  44. data/lib/launchdarkly_api/models/{feature_flag_change_request_apply_config_body.rb → approval_request_apply_config_body.rb} +2 -2
  45. data/lib/launchdarkly_api/models/{feature_flag_change_request_config_body.rb → approval_request_config_body.rb} +2 -2
  46. data/lib/launchdarkly_api/models/{feature_flag_change_request_review.rb → approval_request_review.rb} +4 -4
  47. data/lib/launchdarkly_api/models/{feature_flag_change_request_review_config_body.rb → approval_request_review_config_body.rb} +5 -5
  48. data/lib/launchdarkly_api/models/{feature_flag_change_request_review_status.rb → approval_request_review_status.rb} +4 -4
  49. data/lib/launchdarkly_api/models/{feature_flag_change_requests.rb → approval_requests.rb} +3 -3
  50. data/lib/launchdarkly_api/models/audit_log_entries.rb +1 -1
  51. data/lib/launchdarkly_api/models/audit_log_entry.rb +1 -1
  52. data/lib/launchdarkly_api/models/audit_log_entry_target.rb +1 -1
  53. data/lib/launchdarkly_api/models/clause.rb +1 -1
  54. data/lib/launchdarkly_api/models/client_side_availability.rb +1 -1
  55. data/lib/launchdarkly_api/models/copy_actions.rb +1 -1
  56. data/lib/launchdarkly_api/models/custom_property.rb +1 -1
  57. data/lib/launchdarkly_api/models/custom_property_values.rb +1 -1
  58. data/lib/launchdarkly_api/models/custom_role.rb +1 -1
  59. data/lib/launchdarkly_api/models/custom_role_body.rb +1 -1
  60. data/lib/launchdarkly_api/models/custom_roles.rb +1 -1
  61. data/lib/launchdarkly_api/models/defaults.rb +1 -1
  62. data/lib/launchdarkly_api/models/destination.rb +1 -1
  63. data/lib/launchdarkly_api/models/destination_amazon_kinesis.rb +1 -1
  64. data/lib/launchdarkly_api/models/destination_body.rb +1 -1
  65. data/lib/launchdarkly_api/models/destination_google_pub_sub.rb +1 -1
  66. data/lib/launchdarkly_api/models/destination_m_particle.rb +1 -1
  67. data/lib/launchdarkly_api/models/destination_segment.rb +1 -1
  68. data/lib/launchdarkly_api/models/destinations.rb +1 -1
  69. data/lib/launchdarkly_api/models/environment.rb +14 -5
  70. data/lib/launchdarkly_api/models/environment_approval_settings.rb +259 -0
  71. data/lib/launchdarkly_api/models/environment_post.rb +1 -1
  72. data/lib/launchdarkly_api/models/evaluation_usage_error.rb +1 -1
  73. data/lib/launchdarkly_api/models/events.rb +1 -1
  74. data/lib/launchdarkly_api/models/fallthrough.rb +1 -1
  75. data/lib/launchdarkly_api/models/feature_flag.rb +1 -1
  76. data/lib/launchdarkly_api/models/feature_flag_body.rb +1 -1
  77. data/lib/launchdarkly_api/models/feature_flag_config.rb +23 -5
  78. data/lib/launchdarkly_api/models/feature_flag_copy_body.rb +1 -1
  79. data/lib/launchdarkly_api/models/feature_flag_copy_object.rb +1 -1
  80. data/lib/launchdarkly_api/models/feature_flag_scheduled_change.rb +1 -1
  81. data/lib/launchdarkly_api/models/feature_flag_scheduled_changes.rb +1 -1
  82. data/lib/launchdarkly_api/models/feature_flag_scheduled_changes_conflicts.rb +1 -1
  83. data/lib/launchdarkly_api/models/feature_flag_scheduled_changes_conflicts_instructions.rb +1 -1
  84. data/lib/launchdarkly_api/models/feature_flag_status.rb +1 -1
  85. data/lib/launchdarkly_api/models/feature_flag_status_across_environments.rb +1 -1
  86. data/lib/launchdarkly_api/models/feature_flag_status_for_queried_environment.rb +1 -1
  87. data/lib/launchdarkly_api/models/feature_flag_statuses.rb +1 -1
  88. data/lib/launchdarkly_api/models/feature_flags.rb +1 -1
  89. data/lib/launchdarkly_api/models/flag_config_scheduled_changes_conflicts_body.rb +193 -0
  90. data/lib/launchdarkly_api/models/flag_config_scheduled_changes_patch_body.rb +193 -0
  91. data/lib/launchdarkly_api/models/flag_config_scheduled_changes_post_body.rb +203 -0
  92. data/lib/launchdarkly_api/models/flag_list_item.rb +1 -1
  93. data/lib/launchdarkly_api/models/hierarchical_links.rb +1 -1
  94. data/lib/launchdarkly_api/models/id.rb +1 -1
  95. data/lib/launchdarkly_api/models/integration.rb +1 -1
  96. data/lib/launchdarkly_api/models/integration__links.rb +1 -1
  97. data/lib/launchdarkly_api/models/integration_subscription.rb +1 -1
  98. data/lib/launchdarkly_api/models/integration_subscription__status.rb +1 -1
  99. data/lib/launchdarkly_api/models/integrations.rb +1 -1
  100. data/lib/launchdarkly_api/models/link.rb +1 -1
  101. data/lib/launchdarkly_api/models/links.rb +1 -1
  102. data/lib/launchdarkly_api/models/ma_uby_category.rb +1 -1
  103. data/lib/launchdarkly_api/models/mau.rb +1 -1
  104. data/lib/launchdarkly_api/models/mau_metadata.rb +1 -1
  105. data/lib/launchdarkly_api/models/member.rb +24 -5
  106. data/lib/launchdarkly_api/models/member__last_seen_metadata.rb +184 -0
  107. data/lib/launchdarkly_api/models/members.rb +1 -1
  108. data/lib/launchdarkly_api/models/members_body.rb +1 -1
  109. data/lib/launchdarkly_api/models/patch_comment.rb +1 -1
  110. data/lib/launchdarkly_api/models/patch_operation.rb +1 -1
  111. data/lib/launchdarkly_api/models/policy.rb +1 -1
  112. data/lib/launchdarkly_api/models/prerequisite.rb +1 -1
  113. data/lib/launchdarkly_api/models/project.rb +1 -1
  114. data/lib/launchdarkly_api/models/project_body.rb +1 -1
  115. data/lib/launchdarkly_api/models/projects.rb +1 -1
  116. data/lib/launchdarkly_api/models/relay_proxy_config.rb +1 -1
  117. data/lib/launchdarkly_api/models/relay_proxy_config_body.rb +1 -1
  118. data/lib/launchdarkly_api/models/relay_proxy_configs.rb +1 -1
  119. data/lib/launchdarkly_api/models/role.rb +1 -1
  120. data/lib/launchdarkly_api/models/rollout.rb +1 -1
  121. data/lib/launchdarkly_api/models/rule.rb +1 -1
  122. data/lib/launchdarkly_api/models/scheduled_changes_feature_flag_conflict.rb +1 -1
  123. data/lib/launchdarkly_api/models/semantic_patch_instruction.rb +1 -1
  124. data/lib/launchdarkly_api/models/semantic_patch_instruction_inner.rb +1 -1
  125. data/lib/launchdarkly_api/models/semantic_patch_operation.rb +1 -1
  126. data/lib/launchdarkly_api/models/site.rb +1 -1
  127. data/lib/launchdarkly_api/models/statement.rb +1 -1
  128. data/lib/launchdarkly_api/models/stream.rb +1 -1
  129. data/lib/launchdarkly_api/models/stream_by_sdk.rb +1 -1
  130. data/lib/launchdarkly_api/models/stream_by_sdk_links.rb +1 -1
  131. data/lib/launchdarkly_api/models/stream_by_sdk_links_metadata.rb +1 -1
  132. data/lib/launchdarkly_api/models/stream_links.rb +1 -1
  133. data/lib/launchdarkly_api/models/stream_sdk_version.rb +1 -1
  134. data/lib/launchdarkly_api/models/stream_sdk_version_data.rb +1 -1
  135. data/lib/launchdarkly_api/models/stream_usage_error.rb +1 -1
  136. data/lib/launchdarkly_api/models/stream_usage_links.rb +1 -1
  137. data/lib/launchdarkly_api/models/stream_usage_metadata.rb +1 -1
  138. data/lib/launchdarkly_api/models/stream_usage_series.rb +1 -1
  139. data/lib/launchdarkly_api/models/streams.rb +1 -1
  140. data/lib/launchdarkly_api/models/subscription_body.rb +1 -1
  141. data/lib/launchdarkly_api/models/target.rb +1 -1
  142. data/lib/launchdarkly_api/models/token.rb +1 -1
  143. data/lib/launchdarkly_api/models/token_body.rb +1 -1
  144. data/lib/launchdarkly_api/models/tokens.rb +1 -1
  145. data/lib/launchdarkly_api/models/unbounded_segment_target_changes.rb +1 -1
  146. data/lib/launchdarkly_api/models/unbounded_segment_targets_body.rb +1 -1
  147. data/lib/launchdarkly_api/models/usage.rb +1 -1
  148. data/lib/launchdarkly_api/models/usage_error.rb +1 -1
  149. data/lib/launchdarkly_api/models/usage_links.rb +1 -1
  150. data/lib/launchdarkly_api/models/user.rb +1 -1
  151. data/lib/launchdarkly_api/models/user_flag_setting.rb +1 -1
  152. data/lib/launchdarkly_api/models/user_flag_settings.rb +1 -1
  153. data/lib/launchdarkly_api/models/user_record.rb +1 -1
  154. data/lib/launchdarkly_api/models/user_segment.rb +1 -1
  155. data/lib/launchdarkly_api/models/user_segment_body.rb +1 -1
  156. data/lib/launchdarkly_api/models/user_segment_rule.rb +1 -1
  157. data/lib/launchdarkly_api/models/user_segments.rb +1 -1
  158. data/lib/launchdarkly_api/models/user_settings_body.rb +1 -1
  159. data/lib/launchdarkly_api/models/user_targeting_expiration_for_flag.rb +1 -1
  160. data/lib/launchdarkly_api/models/user_targeting_expiration_for_flags.rb +1 -1
  161. data/lib/launchdarkly_api/models/user_targeting_expiration_for_segment.rb +1 -1
  162. data/lib/launchdarkly_api/models/user_targeting_expiration_on_flags_for_user.rb +1 -1
  163. data/lib/launchdarkly_api/models/user_targeting_expiration_resource_id_for_flag.rb +1 -1
  164. data/lib/launchdarkly_api/models/users.rb +1 -1
  165. data/lib/launchdarkly_api/models/variation.rb +1 -1
  166. data/lib/launchdarkly_api/models/webhook.rb +1 -1
  167. data/lib/launchdarkly_api/models/webhook_body.rb +1 -1
  168. data/lib/launchdarkly_api/models/webhooks.rb +1 -1
  169. data/lib/launchdarkly_api/models/weighted_variation.rb +1 -1
  170. data/lib/launchdarkly_api/version.rb +2 -2
  171. data/openapi.yml +306 -71
  172. data/spec/api/access_tokens_api_spec.rb +1 -1
  173. data/spec/api/audit_log_api_spec.rb +1 -1
  174. data/spec/api/custom_roles_api_spec.rb +1 -1
  175. data/spec/api/customer_metrics_api_spec.rb +1 -1
  176. data/spec/api/data_export_destinations_api_spec.rb +1 -1
  177. data/spec/api/environments_api_spec.rb +1 -1
  178. data/spec/api/feature_flags_api_spec.rb +138 -37
  179. data/spec/api/integrations_api_spec.rb +1 -1
  180. data/spec/api/projects_api_spec.rb +1 -1
  181. data/spec/api/relay_proxy_configurations_api_spec.rb +1 -1
  182. data/spec/api/root_api_spec.rb +1 -1
  183. data/spec/api/team_members_api_spec.rb +1 -1
  184. data/spec/api/user_record_api_spec.rb +48 -0
  185. data/spec/api/user_segments_api_spec.rb +1 -1
  186. data/spec/api/user_settings_api_spec.rb +1 -1
  187. data/spec/api/users_api_spec.rb +1 -14
  188. data/spec/api/webhooks_api_spec.rb +1 -1
  189. data/spec/api_client_spec.rb +1 -1
  190. data/spec/configuration_spec.rb +1 -1
  191. data/spec/models/{feature_flag_change_request_apply_config_body_spec.rb → approval_request_apply_config_body_spec.rb} +7 -7
  192. data/spec/models/{feature_flag_change_request_config_body_spec.rb → approval_request_config_body_spec.rb} +7 -7
  193. data/spec/models/{feature_flag_change_request_review_config_body_spec.rb → approval_request_review_config_body_spec.rb} +8 -8
  194. data/spec/models/{feature_flag_change_request_review_spec.rb → approval_request_review_spec.rb} +7 -7
  195. data/spec/models/{feature_flag_change_request_review_status_spec.rb → approval_request_review_status_spec.rb} +7 -7
  196. data/spec/models/{feature_flag_change_request_spec.rb → approval_request_spec.rb} +7 -13
  197. data/spec/models/{feature_flag_change_requests_spec.rb → approval_requests_spec.rb} +7 -7
  198. data/spec/models/audit_log_entries_spec.rb +1 -1
  199. data/spec/models/audit_log_entry_spec.rb +1 -1
  200. data/spec/models/audit_log_entry_target_spec.rb +1 -1
  201. data/spec/models/clause_spec.rb +1 -1
  202. data/spec/models/client_side_availability_spec.rb +1 -1
  203. data/spec/models/copy_actions_spec.rb +1 -1
  204. data/spec/models/custom_property_spec.rb +1 -1
  205. data/spec/models/custom_property_values_spec.rb +1 -1
  206. data/spec/models/custom_role_body_spec.rb +1 -1
  207. data/spec/models/custom_role_spec.rb +1 -1
  208. data/spec/models/custom_roles_spec.rb +1 -1
  209. data/spec/models/defaults_spec.rb +1 -1
  210. data/spec/models/destination_amazon_kinesis_spec.rb +1 -1
  211. data/spec/models/destination_body_spec.rb +1 -1
  212. data/spec/models/destination_google_pub_sub_spec.rb +1 -1
  213. data/spec/models/destination_m_particle_spec.rb +1 -1
  214. data/spec/models/destination_segment_spec.rb +1 -1
  215. data/spec/models/destination_spec.rb +1 -1
  216. data/spec/models/destinations_spec.rb +1 -1
  217. data/spec/models/environment_approval_settings_spec.rb +69 -0
  218. data/spec/models/environment_post_spec.rb +1 -1
  219. data/spec/models/environment_spec.rb +7 -1
  220. data/spec/models/evaluation_usage_error_spec.rb +1 -1
  221. data/spec/models/events_spec.rb +1 -1
  222. data/spec/models/fallthrough_spec.rb +1 -1
  223. data/spec/models/feature_flag_body_spec.rb +1 -1
  224. data/spec/models/feature_flag_config_spec.rb +13 -1
  225. data/spec/models/feature_flag_copy_body_spec.rb +1 -1
  226. data/spec/models/feature_flag_copy_object_spec.rb +1 -1
  227. data/spec/models/feature_flag_scheduled_change_spec.rb +1 -1
  228. data/spec/models/feature_flag_scheduled_changes_conflicts_instructions_spec.rb +1 -1
  229. data/spec/models/feature_flag_scheduled_changes_conflicts_spec.rb +1 -1
  230. data/spec/models/feature_flag_scheduled_changes_spec.rb +1 -1
  231. data/spec/models/feature_flag_spec.rb +1 -1
  232. data/spec/models/feature_flag_status_across_environments_spec.rb +1 -1
  233. data/spec/models/feature_flag_status_for_queried_environment_spec.rb +1 -1
  234. data/spec/models/feature_flag_status_spec.rb +1 -1
  235. data/spec/models/feature_flag_statuses_spec.rb +1 -1
  236. data/spec/models/feature_flags_spec.rb +1 -1
  237. data/spec/models/flag_config_scheduled_changes_conflicts_body_spec.rb +47 -0
  238. data/spec/models/flag_config_scheduled_changes_patch_body_spec.rb +47 -0
  239. data/spec/models/flag_config_scheduled_changes_post_body_spec.rb +53 -0
  240. data/spec/models/flag_list_item_spec.rb +1 -1
  241. data/spec/models/hierarchical_links_spec.rb +1 -1
  242. data/spec/models/id_spec.rb +1 -1
  243. data/spec/models/integration__links_spec.rb +1 -1
  244. data/spec/models/integration_spec.rb +1 -1
  245. data/spec/models/integration_subscription__status_spec.rb +1 -1
  246. data/spec/models/integration_subscription_spec.rb +1 -1
  247. data/spec/models/integrations_spec.rb +1 -1
  248. data/spec/models/link_spec.rb +1 -1
  249. data/spec/models/links_spec.rb +1 -1
  250. data/spec/models/ma_uby_category_spec.rb +1 -1
  251. data/spec/models/mau_metadata_spec.rb +1 -1
  252. data/spec/models/mau_spec.rb +1 -1
  253. data/spec/models/member__last_seen_metadata_spec.rb +41 -0
  254. data/spec/models/member_spec.rb +13 -1
  255. data/spec/models/members_body_spec.rb +1 -1
  256. data/spec/models/members_spec.rb +1 -1
  257. data/spec/models/patch_comment_spec.rb +1 -1
  258. data/spec/models/patch_operation_spec.rb +1 -1
  259. data/spec/models/policy_spec.rb +1 -1
  260. data/spec/models/prerequisite_spec.rb +1 -1
  261. data/spec/models/project_body_spec.rb +1 -1
  262. data/spec/models/project_spec.rb +1 -1
  263. data/spec/models/projects_spec.rb +1 -1
  264. data/spec/models/relay_proxy_config_body_spec.rb +1 -1
  265. data/spec/models/relay_proxy_config_spec.rb +1 -1
  266. data/spec/models/relay_proxy_configs_spec.rb +1 -1
  267. data/spec/models/role_spec.rb +1 -1
  268. data/spec/models/rollout_spec.rb +1 -1
  269. data/spec/models/rule_spec.rb +1 -1
  270. data/spec/models/scheduled_changes_feature_flag_conflict_spec.rb +1 -1
  271. data/spec/models/semantic_patch_instruction_inner_spec.rb +1 -1
  272. data/spec/models/semantic_patch_instruction_spec.rb +1 -1
  273. data/spec/models/semantic_patch_operation_spec.rb +1 -1
  274. data/spec/models/site_spec.rb +1 -1
  275. data/spec/models/statement_spec.rb +1 -1
  276. data/spec/models/stream_by_sdk_links_metadata_spec.rb +1 -1
  277. data/spec/models/stream_by_sdk_links_spec.rb +1 -1
  278. data/spec/models/stream_by_sdk_spec.rb +1 -1
  279. data/spec/models/stream_links_spec.rb +1 -1
  280. data/spec/models/stream_sdk_version_data_spec.rb +1 -1
  281. data/spec/models/stream_sdk_version_spec.rb +1 -1
  282. data/spec/models/stream_spec.rb +1 -1
  283. data/spec/models/stream_usage_error_spec.rb +1 -1
  284. data/spec/models/stream_usage_links_spec.rb +1 -1
  285. data/spec/models/stream_usage_metadata_spec.rb +1 -1
  286. data/spec/models/stream_usage_series_spec.rb +1 -1
  287. data/spec/models/streams_spec.rb +1 -1
  288. data/spec/models/subscription_body_spec.rb +1 -1
  289. data/spec/models/target_spec.rb +1 -1
  290. data/spec/models/token_body_spec.rb +1 -1
  291. data/spec/models/token_spec.rb +1 -1
  292. data/spec/models/tokens_spec.rb +1 -1
  293. data/spec/models/unbounded_segment_target_changes_spec.rb +1 -1
  294. data/spec/models/unbounded_segment_targets_body_spec.rb +1 -1
  295. data/spec/models/usage_error_spec.rb +1 -1
  296. data/spec/models/usage_links_spec.rb +1 -1
  297. data/spec/models/usage_spec.rb +1 -1
  298. data/spec/models/user_flag_setting_spec.rb +1 -1
  299. data/spec/models/user_flag_settings_spec.rb +1 -1
  300. data/spec/models/user_record_spec.rb +1 -1
  301. data/spec/models/user_segment_body_spec.rb +1 -1
  302. data/spec/models/user_segment_rule_spec.rb +1 -1
  303. data/spec/models/user_segment_spec.rb +1 -1
  304. data/spec/models/user_segments_spec.rb +1 -1
  305. data/spec/models/user_settings_body_spec.rb +1 -1
  306. data/spec/models/user_spec.rb +1 -1
  307. data/spec/models/user_targeting_expiration_for_flag_spec.rb +1 -1
  308. data/spec/models/user_targeting_expiration_for_flags_spec.rb +1 -1
  309. data/spec/models/user_targeting_expiration_for_segment_spec.rb +1 -1
  310. data/spec/models/user_targeting_expiration_on_flags_for_user_spec.rb +1 -1
  311. data/spec/models/user_targeting_expiration_resource_id_for_flag_spec.rb +1 -1
  312. data/spec/models/users_spec.rb +1 -1
  313. data/spec/models/variation_spec.rb +1 -1
  314. data/spec/models/webhook_body_spec.rb +1 -1
  315. data/spec/models/webhook_spec.rb +1 -1
  316. data/spec/models/webhooks_spec.rb +1 -1
  317. data/spec/models/weighted_variation_spec.rb +1 -1
  318. data/spec/spec_helper.rb +1 -1
  319. metadata +161 -137
  320. data/docs/FeatureFlagChangeRequest.md +0 -19
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Build custom integrations with the LaunchDarkly REST API
5
5
 
6
- OpenAPI spec version: 3.9.0
6
+ OpenAPI spec version: 5.0.0
7
7
  Contact: support@launchdarkly.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.8
@@ -13,7 +13,7 @@ Swagger Codegen version: 2.4.8
13
13
  require 'date'
14
14
 
15
15
  module LaunchDarklyApi
16
- class FeatureFlagChangeRequestReviewStatus
16
+ class ApprovalRequestReviewStatus
17
17
 
18
18
  PENDING = 'pending'.freeze
19
19
  APPROVED = 'approved'.freeze
@@ -23,8 +23,8 @@ module LaunchDarklyApi
23
23
  # @param [String] The enum value in the form of the string
24
24
  # @return [String] The enum value
25
25
  def build_from_hash(value)
26
- constantValues = FeatureFlagChangeRequestReviewStatus.constants.select { |c| FeatureFlagChangeRequestReviewStatus::const_get(c) == value }
27
- raise "Invalid ENUM value #{value} for class #FeatureFlagChangeRequestReviewStatus" if constantValues.empty?
26
+ constantValues = ApprovalRequestReviewStatus.constants.select { |c| ApprovalRequestReviewStatus::const_get(c) == value }
27
+ raise "Invalid ENUM value #{value} for class #ApprovalRequestReviewStatus" if constantValues.empty?
28
28
  value
29
29
  end
30
30
  end
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Build custom integrations with the LaunchDarkly REST API
5
5
 
6
- OpenAPI spec version: 3.9.0
6
+ OpenAPI spec version: 5.0.0
7
7
  Contact: support@launchdarkly.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.8
@@ -13,7 +13,7 @@ Swagger Codegen version: 2.4.8
13
13
  require 'date'
14
14
 
15
15
  module LaunchDarklyApi
16
- class FeatureFlagChangeRequests
16
+ class ApprovalRequests
17
17
  attr_accessor :_links
18
18
 
19
19
  attr_accessor :items
@@ -30,7 +30,7 @@ module LaunchDarklyApi
30
30
  def self.swagger_types
31
31
  {
32
32
  :'_links' => :'Links',
33
- :'items' => :'Array<FeatureFlagChangeRequest>'
33
+ :'items' => :'Array<ApprovalRequest>'
34
34
  }
35
35
  end
36
36
 
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Build custom integrations with the LaunchDarkly REST API
5
5
 
6
- OpenAPI spec version: 3.9.0
6
+ OpenAPI spec version: 5.0.0
7
7
  Contact: support@launchdarkly.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.8
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Build custom integrations with the LaunchDarkly REST API
5
5
 
6
- OpenAPI spec version: 3.9.0
6
+ OpenAPI spec version: 5.0.0
7
7
  Contact: support@launchdarkly.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.8
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Build custom integrations with the LaunchDarkly REST API
5
5
 
6
- OpenAPI spec version: 3.9.0
6
+ OpenAPI spec version: 5.0.0
7
7
  Contact: support@launchdarkly.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.8
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Build custom integrations with the LaunchDarkly REST API
5
5
 
6
- OpenAPI spec version: 3.9.0
6
+ OpenAPI spec version: 5.0.0
7
7
  Contact: support@launchdarkly.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.8
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Build custom integrations with the LaunchDarkly REST API
5
5
 
6
- OpenAPI spec version: 3.9.0
6
+ OpenAPI spec version: 5.0.0
7
7
  Contact: support@launchdarkly.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.8
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Build custom integrations with the LaunchDarkly REST API
5
5
 
6
- OpenAPI spec version: 3.9.0
6
+ OpenAPI spec version: 5.0.0
7
7
  Contact: support@launchdarkly.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.8
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Build custom integrations with the LaunchDarkly REST API
5
5
 
6
- OpenAPI spec version: 3.9.0
6
+ OpenAPI spec version: 5.0.0
7
7
  Contact: support@launchdarkly.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.8
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Build custom integrations with the LaunchDarkly REST API
5
5
 
6
- OpenAPI spec version: 3.9.0
6
+ OpenAPI spec version: 5.0.0
7
7
  Contact: support@launchdarkly.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.8
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Build custom integrations with the LaunchDarkly REST API
5
5
 
6
- OpenAPI spec version: 3.9.0
6
+ OpenAPI spec version: 5.0.0
7
7
  Contact: support@launchdarkly.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.8
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Build custom integrations with the LaunchDarkly REST API
5
5
 
6
- OpenAPI spec version: 3.9.0
6
+ OpenAPI spec version: 5.0.0
7
7
  Contact: support@launchdarkly.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.8
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Build custom integrations with the LaunchDarkly REST API
5
5
 
6
- OpenAPI spec version: 3.9.0
6
+ OpenAPI spec version: 5.0.0
7
7
  Contact: support@launchdarkly.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.8
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Build custom integrations with the LaunchDarkly REST API
5
5
 
6
- OpenAPI spec version: 3.9.0
6
+ OpenAPI spec version: 5.0.0
7
7
  Contact: support@launchdarkly.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.8
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Build custom integrations with the LaunchDarkly REST API
5
5
 
6
- OpenAPI spec version: 3.9.0
6
+ OpenAPI spec version: 5.0.0
7
7
  Contact: support@launchdarkly.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.8
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Build custom integrations with the LaunchDarkly REST API
5
5
 
6
- OpenAPI spec version: 3.9.0
6
+ OpenAPI spec version: 5.0.0
7
7
  Contact: support@launchdarkly.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.8
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Build custom integrations with the LaunchDarkly REST API
5
5
 
6
- OpenAPI spec version: 3.9.0
6
+ OpenAPI spec version: 5.0.0
7
7
  Contact: support@launchdarkly.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.8
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Build custom integrations with the LaunchDarkly REST API
5
5
 
6
- OpenAPI spec version: 3.9.0
6
+ OpenAPI spec version: 5.0.0
7
7
  Contact: support@launchdarkly.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.8
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Build custom integrations with the LaunchDarkly REST API
5
5
 
6
- OpenAPI spec version: 3.9.0
6
+ OpenAPI spec version: 5.0.0
7
7
  Contact: support@launchdarkly.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.8
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Build custom integrations with the LaunchDarkly REST API
5
5
 
6
- OpenAPI spec version: 3.9.0
6
+ OpenAPI spec version: 5.0.0
7
7
  Contact: support@launchdarkly.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.8
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Build custom integrations with the LaunchDarkly REST API
5
5
 
6
- OpenAPI spec version: 3.9.0
6
+ OpenAPI spec version: 5.0.0
7
7
  Contact: support@launchdarkly.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.8
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Build custom integrations with the LaunchDarkly REST API
5
5
 
6
- OpenAPI spec version: 3.9.0
6
+ OpenAPI spec version: 5.0.0
7
7
  Contact: support@launchdarkly.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.8
@@ -51,6 +51,8 @@ module LaunchDarklyApi
51
51
  # Determines if this environment requires confirmation for flag and segment changes.
52
52
  attr_accessor :confirm_changes
53
53
 
54
+ attr_accessor :approval_settings
55
+
54
56
  # Attribute mapping from ruby-style variable name to JSON key.
55
57
  def self.attribute_map
56
58
  {
@@ -66,7 +68,8 @@ module LaunchDarklyApi
66
68
  :'default_track_events' => :'defaultTrackEvents',
67
69
  :'tags' => :'tags',
68
70
  :'require_comments' => :'requireComments',
69
- :'confirm_changes' => :'confirmChanges'
71
+ :'confirm_changes' => :'confirmChanges',
72
+ :'approval_settings' => :'approvalSettings'
70
73
  }
71
74
  end
72
75
 
@@ -85,7 +88,8 @@ module LaunchDarklyApi
85
88
  :'default_track_events' => :'BOOLEAN',
86
89
  :'tags' => :'Array<String>',
87
90
  :'require_comments' => :'BOOLEAN',
88
- :'confirm_changes' => :'BOOLEAN'
91
+ :'confirm_changes' => :'BOOLEAN',
92
+ :'approval_settings' => :'EnvironmentApprovalSettings'
89
93
  }
90
94
  end
91
95
 
@@ -150,6 +154,10 @@ module LaunchDarklyApi
150
154
  if attributes.has_key?(:'confirmChanges')
151
155
  self.confirm_changes = attributes[:'confirmChanges']
152
156
  end
157
+
158
+ if attributes.has_key?(:'approvalSettings')
159
+ self.approval_settings = attributes[:'approvalSettings']
160
+ end
153
161
  end
154
162
 
155
163
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -182,7 +190,8 @@ module LaunchDarklyApi
182
190
  default_track_events == o.default_track_events &&
183
191
  tags == o.tags &&
184
192
  require_comments == o.require_comments &&
185
- confirm_changes == o.confirm_changes
193
+ confirm_changes == o.confirm_changes &&
194
+ approval_settings == o.approval_settings
186
195
  end
187
196
 
188
197
  # @see the `==` method
@@ -194,7 +203,7 @@ module LaunchDarklyApi
194
203
  # Calculates hash code according to all attributes.
195
204
  # @return [Fixnum] Hash code
196
205
  def hash
197
- [_links, _id, key, name, api_key, mobile_key, color, default_ttl, secure_mode, default_track_events, tags, require_comments, confirm_changes].hash
206
+ [_links, _id, key, name, api_key, mobile_key, color, default_ttl, secure_mode, default_track_events, tags, require_comments, confirm_changes, approval_settings].hash
198
207
  end
199
208
 
200
209
  # Builds the object from hash
@@ -0,0 +1,259 @@
1
+ =begin
2
+ #LaunchDarkly REST API
3
+
4
+ #Build custom integrations with the LaunchDarkly REST API
5
+
6
+ OpenAPI spec version: 5.0.0
7
+ Contact: support@launchdarkly.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.8
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module LaunchDarklyApi
16
+ # Approval settings for an environment. Only appears if the approvals feature is enabled.
17
+ class EnvironmentApprovalSettings
18
+ # The approvals system used.
19
+ attr_accessor :service_kind
20
+
21
+ # Whether any changes to flags in this environment will require approval.
22
+ attr_accessor :required
23
+
24
+ # Whether requesters can approve or decline their own request. They may always comment.
25
+ attr_accessor :can_review_own_request
26
+
27
+ # The number of approvals required before an approval request can be applied.
28
+ attr_accessor :min_num_approvals
29
+
30
+ # Whether changes can be applied as long as minNumApprovals is met, regardless of if any reviewers have declined a request.
31
+ attr_accessor :can_apply_declined_changes
32
+
33
+ class EnumAttributeValidator
34
+ attr_reader :datatype
35
+ attr_reader :allowable_values
36
+
37
+ def initialize(datatype, allowable_values)
38
+ @allowable_values = allowable_values.map do |value|
39
+ case datatype.to_s
40
+ when /Integer/i
41
+ value.to_i
42
+ when /Float/i
43
+ value.to_f
44
+ else
45
+ value
46
+ end
47
+ end
48
+ end
49
+
50
+ def valid?(value)
51
+ !value || allowable_values.include?(value)
52
+ end
53
+ end
54
+
55
+ # Attribute mapping from ruby-style variable name to JSON key.
56
+ def self.attribute_map
57
+ {
58
+ :'service_kind' => :'serviceKind',
59
+ :'required' => :'required',
60
+ :'can_review_own_request' => :'canReviewOwnRequest',
61
+ :'min_num_approvals' => :'minNumApprovals',
62
+ :'can_apply_declined_changes' => :'canApplyDeclinedChanges'
63
+ }
64
+ end
65
+
66
+ # Attribute type mapping.
67
+ def self.swagger_types
68
+ {
69
+ :'service_kind' => :'String',
70
+ :'required' => :'BOOLEAN',
71
+ :'can_review_own_request' => :'BOOLEAN',
72
+ :'min_num_approvals' => :'Integer',
73
+ :'can_apply_declined_changes' => :'BOOLEAN'
74
+ }
75
+ end
76
+
77
+ # Initializes the object
78
+ # @param [Hash] attributes Model attributes in the form of hash
79
+ def initialize(attributes = {})
80
+ return unless attributes.is_a?(Hash)
81
+
82
+ # convert string to symbol for hash key
83
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
84
+
85
+ if attributes.has_key?(:'serviceKind')
86
+ self.service_kind = attributes[:'serviceKind']
87
+ end
88
+
89
+ if attributes.has_key?(:'required')
90
+ self.required = attributes[:'required']
91
+ end
92
+
93
+ if attributes.has_key?(:'canReviewOwnRequest')
94
+ self.can_review_own_request = attributes[:'canReviewOwnRequest']
95
+ end
96
+
97
+ if attributes.has_key?(:'minNumApprovals')
98
+ self.min_num_approvals = attributes[:'minNumApprovals']
99
+ end
100
+
101
+ if attributes.has_key?(:'canApplyDeclinedChanges')
102
+ self.can_apply_declined_changes = attributes[:'canApplyDeclinedChanges']
103
+ end
104
+ end
105
+
106
+ # Show invalid properties with the reasons. Usually used together with valid?
107
+ # @return Array for valid properties with the reasons
108
+ def list_invalid_properties
109
+ invalid_properties = Array.new
110
+ invalid_properties
111
+ end
112
+
113
+ # Check to see if the all the properties in the model are valid
114
+ # @return true if the model is valid
115
+ def valid?
116
+ service_kind_validator = EnumAttributeValidator.new('String', ['launchdarkly', 'service-now'])
117
+ return false unless service_kind_validator.valid?(@service_kind)
118
+ true
119
+ end
120
+
121
+ # Custom attribute writer method checking allowed values (enum).
122
+ # @param [Object] service_kind Object to be assigned
123
+ def service_kind=(service_kind)
124
+ validator = EnumAttributeValidator.new('String', ['launchdarkly', 'service-now'])
125
+ unless validator.valid?(service_kind)
126
+ fail ArgumentError, 'invalid value for "service_kind", must be one of #{validator.allowable_values}.'
127
+ end
128
+ @service_kind = service_kind
129
+ end
130
+
131
+ # Checks equality by comparing each attribute.
132
+ # @param [Object] Object to be compared
133
+ def ==(o)
134
+ return true if self.equal?(o)
135
+ self.class == o.class &&
136
+ service_kind == o.service_kind &&
137
+ required == o.required &&
138
+ can_review_own_request == o.can_review_own_request &&
139
+ min_num_approvals == o.min_num_approvals &&
140
+ can_apply_declined_changes == o.can_apply_declined_changes
141
+ end
142
+
143
+ # @see the `==` method
144
+ # @param [Object] Object to be compared
145
+ def eql?(o)
146
+ self == o
147
+ end
148
+
149
+ # Calculates hash code according to all attributes.
150
+ # @return [Fixnum] Hash code
151
+ def hash
152
+ [service_kind, required, can_review_own_request, min_num_approvals, can_apply_declined_changes].hash
153
+ end
154
+
155
+ # Builds the object from hash
156
+ # @param [Hash] attributes Model attributes in the form of hash
157
+ # @return [Object] Returns the model itself
158
+ def build_from_hash(attributes)
159
+ return nil unless attributes.is_a?(Hash)
160
+ self.class.swagger_types.each_pair do |key, type|
161
+ if type =~ /\AArray<(.*)>/i
162
+ # check to ensure the input is an array given that the the attribute
163
+ # is documented as an array but the input is not
164
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
165
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
166
+ end
167
+ elsif !attributes[self.class.attribute_map[key]].nil?
168
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
169
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
170
+ end
171
+
172
+ self
173
+ end
174
+
175
+ # Deserializes the data based on type
176
+ # @param string type Data type
177
+ # @param string value Value to be deserialized
178
+ # @return [Object] Deserialized data
179
+ def _deserialize(type, value)
180
+ case type.to_sym
181
+ when :DateTime
182
+ DateTime.parse(value)
183
+ when :Date
184
+ Date.parse(value)
185
+ when :String
186
+ value.to_s
187
+ when :Integer
188
+ value.to_i
189
+ when :Float
190
+ value.to_f
191
+ when :BOOLEAN
192
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
193
+ true
194
+ else
195
+ false
196
+ end
197
+ when :Object
198
+ # generic object (usually a Hash), return directly
199
+ value
200
+ when /\AArray<(?<inner_type>.+)>\z/
201
+ inner_type = Regexp.last_match[:inner_type]
202
+ value.map { |v| _deserialize(inner_type, v) }
203
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
204
+ k_type = Regexp.last_match[:k_type]
205
+ v_type = Regexp.last_match[:v_type]
206
+ {}.tap do |hash|
207
+ value.each do |k, v|
208
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
209
+ end
210
+ end
211
+ else # model
212
+ temp_model = LaunchDarklyApi.const_get(type).new
213
+ temp_model.build_from_hash(value)
214
+ end
215
+ end
216
+
217
+ # Returns the string representation of the object
218
+ # @return [String] String presentation of the object
219
+ def to_s
220
+ to_hash.to_s
221
+ end
222
+
223
+ # to_body is an alias to to_hash (backward compatibility)
224
+ # @return [Hash] Returns the object in the form of hash
225
+ def to_body
226
+ to_hash
227
+ end
228
+
229
+ # Returns the object in the form of hash
230
+ # @return [Hash] Returns the object in the form of hash
231
+ def to_hash
232
+ hash = {}
233
+ self.class.attribute_map.each_pair do |attr, param|
234
+ value = self.send(attr)
235
+ next if value.nil?
236
+ hash[param] = _to_hash(value)
237
+ end
238
+ hash
239
+ end
240
+
241
+ # Outputs non-array value in the form of hash
242
+ # For object, use to_hash. Otherwise, just return the value
243
+ # @param [Object] value Any valid value
244
+ # @return [Hash] Returns the value in the form of hash
245
+ def _to_hash(value)
246
+ if value.is_a?(Array)
247
+ value.compact.map { |v| _to_hash(v) }
248
+ elsif value.is_a?(Hash)
249
+ {}.tap do |hash|
250
+ value.each { |k, v| hash[k] = _to_hash(v) }
251
+ end
252
+ elsif value.respond_to? :to_hash
253
+ value.to_hash
254
+ else
255
+ value
256
+ end
257
+ end
258
+ end
259
+ end