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.
- checksums.yaml +7 -0
- data/Gemfile +7 -0
- data/Gemfile.lock +69 -0
- data/LICENSE.txt +13 -0
- data/README.md +264 -0
- data/Rakefile +8 -0
- data/docs/Action.md +7 -0
- data/docs/Actions.md +7 -0
- data/docs/AuditLogApi.md +123 -0
- data/docs/AuditLogEntries.md +9 -0
- data/docs/AuditLogEntry.md +19 -0
- data/docs/AuditLogEntryTarget.md +10 -0
- data/docs/Clause.md +11 -0
- data/docs/CustomRole.md +13 -0
- data/docs/CustomRoleBody.md +11 -0
- data/docs/CustomRoleKeyOrId.md +7 -0
- data/docs/CustomRoles.md +9 -0
- data/docs/CustomRolesApi.md +268 -0
- data/docs/Environment.md +17 -0
- data/docs/EnvironmentBody.md +11 -0
- data/docs/EnvironmentsApi.md +233 -0
- data/docs/Fallthrough.md +9 -0
- data/docs/FeatureFlag.md +20 -0
- data/docs/FeatureFlagBody.md +13 -0
- data/docs/FeatureFlagConfig.md +19 -0
- data/docs/FeatureFlagStatus.md +11 -0
- data/docs/FeatureFlagStatuses.md +9 -0
- data/docs/FeatureFlags.md +9 -0
- data/docs/FeatureFlagsApi.md +411 -0
- data/docs/Id.md +7 -0
- data/docs/Link.md +9 -0
- data/docs/Links.md +9 -0
- data/docs/Member.md +14 -0
- data/docs/Members.md +9 -0
- data/docs/MembersBody.md +13 -0
- data/docs/PatchComment.md +9 -0
- data/docs/PatchOperation.md +10 -0
- data/docs/Policy.md +10 -0
- data/docs/Prerequisite.md +9 -0
- data/docs/Project.md +12 -0
- data/docs/ProjectBody.md +9 -0
- data/docs/Projects.md +9 -0
- data/docs/ProjectsApi.md +268 -0
- data/docs/Resource.md +7 -0
- data/docs/Resources.md +7 -0
- data/docs/Role.md +7 -0
- data/docs/Rollout.md +8 -0
- data/docs/RootApi.md +56 -0
- data/docs/Rule.md +10 -0
- data/docs/Statement.md +12 -0
- data/docs/Statements.md +7 -0
- data/docs/Target.md +9 -0
- data/docs/TeamMembersApi.md +268 -0
- data/docs/User.md +18 -0
- data/docs/UserFlagSetting.md +10 -0
- data/docs/UserFlagSettings.md +9 -0
- data/docs/UserRecord.md +12 -0
- data/docs/UserSegment.md +17 -0
- data/docs/UserSegmentBody.md +11 -0
- data/docs/UserSegmentRule.md +10 -0
- data/docs/UserSegments.md +9 -0
- data/docs/UserSegmentsApi.md +305 -0
- data/docs/UserSettingsApi.md +193 -0
- data/docs/UserSettingsBody.md +8 -0
- data/docs/Users.md +10 -0
- data/docs/UsersApi.md +255 -0
- data/docs/Variation.md +10 -0
- data/docs/Webhook.md +14 -0
- data/docs/WebhookBody.md +12 -0
- data/docs/Webhooks.md +9 -0
- data/docs/WebhooksApi.md +268 -0
- data/docs/WeightedVariation.md +9 -0
- data/git_push.sh +55 -0
- data/launchdarkly_api-2.0.2.gem +0 -0
- data/launchdarkly_api.gemspec +46 -0
- data/lib/.DS_Store +0 -0
- data/lib/launchdarkly_api/api/audit_log_api.rb +142 -0
- data/lib/launchdarkly_api/api/custom_roles_api.rb +296 -0
- data/lib/launchdarkly_api/api/environments_api.rb +271 -0
- data/lib/launchdarkly_api/api/feature_flags_api.rb +463 -0
- data/lib/launchdarkly_api/api/projects_api.rb +296 -0
- data/lib/launchdarkly_api/api/root_api.rb +72 -0
- data/lib/launchdarkly_api/api/team_members_api.rb +296 -0
- data/lib/launchdarkly_api/api/user_segments_api.rb +359 -0
- data/lib/launchdarkly_api/api/user_settings_api.rb +241 -0
- data/lib/launchdarkly_api/api/users_api.rb +299 -0
- data/lib/launchdarkly_api/api/webhooks_api.rb +296 -0
- data/lib/launchdarkly_api/api_client.rb +389 -0
- data/lib/launchdarkly_api/api_error.rb +38 -0
- data/lib/launchdarkly_api/configuration.rb +209 -0
- data/lib/launchdarkly_api/models/action.rb +179 -0
- data/lib/launchdarkly_api/models/actions.rb +179 -0
- data/lib/launchdarkly_api/models/audit_log_entries.rb +199 -0
- data/lib/launchdarkly_api/models/audit_log_entry.rb +287 -0
- data/lib/launchdarkly_api/models/audit_log_entry_target.rb +208 -0
- data/lib/launchdarkly_api/models/clause.rb +217 -0
- data/lib/launchdarkly_api/models/custom_role.rb +237 -0
- data/lib/launchdarkly_api/models/custom_role_body.rb +234 -0
- data/lib/launchdarkly_api/models/custom_role_key_or_id.rb +179 -0
- data/lib/launchdarkly_api/models/custom_roles.rb +197 -0
- data/lib/launchdarkly_api/models/environment.rb +277 -0
- data/lib/launchdarkly_api/models/environment_body.rb +234 -0
- data/lib/launchdarkly_api/models/fallthrough.rb +197 -0
- data/lib/launchdarkly_api/models/feature_flag.rb +310 -0
- data/lib/launchdarkly_api/models/feature_flag_body.rb +258 -0
- data/lib/launchdarkly_api/models/feature_flag_config.rb +294 -0
- data/lib/launchdarkly_api/models/feature_flag_status.rb +249 -0
- data/lib/launchdarkly_api/models/feature_flag_statuses.rb +199 -0
- data/lib/launchdarkly_api/models/feature_flags.rb +199 -0
- data/lib/launchdarkly_api/models/id.rb +179 -0
- data/lib/launchdarkly_api/models/link.rb +197 -0
- data/lib/launchdarkly_api/models/links.rb +197 -0
- data/lib/launchdarkly_api/models/member.rb +244 -0
- data/lib/launchdarkly_api/models/members.rb +197 -0
- data/lib/launchdarkly_api/models/members_body.rb +240 -0
- data/lib/launchdarkly_api/models/patch_comment.rb +199 -0
- data/lib/launchdarkly_api/models/patch_operation.rb +221 -0
- data/lib/launchdarkly_api/models/policy.rb +207 -0
- data/lib/launchdarkly_api/models/prerequisite.rb +197 -0
- data/lib/launchdarkly_api/models/project.rb +226 -0
- data/lib/launchdarkly_api/models/project_body.rb +207 -0
- data/lib/launchdarkly_api/models/projects.rb +199 -0
- data/lib/launchdarkly_api/models/resource.rb +179 -0
- data/lib/launchdarkly_api/models/resources.rb +179 -0
- data/lib/launchdarkly_api/models/role.rb +33 -0
- data/lib/launchdarkly_api/models/rollout.rb +190 -0
- data/lib/launchdarkly_api/models/rule.rb +208 -0
- data/lib/launchdarkly_api/models/statement.rb +259 -0
- data/lib/launchdarkly_api/models/statements.rb +179 -0
- data/lib/launchdarkly_api/models/target.rb +199 -0
- data/lib/launchdarkly_api/models/user.rb +278 -0
- data/lib/launchdarkly_api/models/user_flag_setting.rb +208 -0
- data/lib/launchdarkly_api/models/user_flag_settings.rb +197 -0
- data/lib/launchdarkly_api/models/user_record.rb +224 -0
- data/lib/launchdarkly_api/models/user_segment.rb +300 -0
- data/lib/launchdarkly_api/models/user_segment_body.rb +231 -0
- data/lib/launchdarkly_api/models/user_segment_rule.rb +208 -0
- data/lib/launchdarkly_api/models/user_segments.rb +199 -0
- data/lib/launchdarkly_api/models/user_settings_body.rb +189 -0
- data/lib/launchdarkly_api/models/users.rb +208 -0
- data/lib/launchdarkly_api/models/variation.rb +211 -0
- data/lib/launchdarkly_api/models/webhook.rb +249 -0
- data/lib/launchdarkly_api/models/webhook_body.rb +244 -0
- data/lib/launchdarkly_api/models/webhooks.rb +199 -0
- data/lib/launchdarkly_api/models/weighted_variation.rb +197 -0
- data/lib/launchdarkly_api/version.rb +15 -0
- data/lib/launchdarkly_api.rb +105 -0
- data/lib/swagger_client/.DS_Store +0 -0
- data/spec/api/audit_log_api_spec.rb +63 -0
- data/spec/api/custom_roles_api_spec.rb +95 -0
- data/spec/api/environments_api_spec.rb +88 -0
- data/spec/api/feature_flags_api_spec.rb +130 -0
- data/spec/api/projects_api_spec.rb +95 -0
- data/spec/api/root_api_spec.rb +46 -0
- data/spec/api/team_members_api_spec.rb +95 -0
- data/spec/api/user_segments_api_spec.rb +106 -0
- data/spec/api/user_settings_api_spec.rb +80 -0
- data/spec/api/users_api_spec.rb +96 -0
- data/spec/api/webhooks_api_spec.rb +95 -0
- data/spec/api_client_spec.rb +226 -0
- data/spec/configuration_spec.rb +42 -0
- data/spec/models/action_spec.rb +36 -0
- data/spec/models/actions_spec.rb +36 -0
- data/spec/models/audit_log_entries_spec.rb +48 -0
- data/spec/models/audit_log_entry_spec.rb +108 -0
- data/spec/models/audit_log_entry_target_spec.rb +54 -0
- data/spec/models/clause_spec.rb +60 -0
- data/spec/models/custom_role_body_spec.rb +60 -0
- data/spec/models/custom_role_key_or_id_spec.rb +36 -0
- data/spec/models/custom_role_spec.rb +72 -0
- data/spec/models/custom_roles_spec.rb +48 -0
- data/spec/models/environment_body_spec.rb +60 -0
- data/spec/models/environment_spec.rb +96 -0
- data/spec/models/fallthrough_spec.rb +48 -0
- data/spec/models/feature_flag_body_spec.rb +72 -0
- data/spec/models/feature_flag_config_spec.rb +108 -0
- data/spec/models/feature_flag_spec.rb +114 -0
- data/spec/models/feature_flag_status_spec.rb +64 -0
- data/spec/models/feature_flag_statuses_spec.rb +48 -0
- data/spec/models/feature_flags_spec.rb +48 -0
- data/spec/models/id_spec.rb +36 -0
- data/spec/models/link_spec.rb +48 -0
- data/spec/models/links_spec.rb +48 -0
- data/spec/models/member_spec.rb +78 -0
- data/spec/models/members_body_spec.rb +72 -0
- data/spec/models/members_spec.rb +48 -0
- data/spec/models/patch_comment_spec.rb +48 -0
- data/spec/models/patch_operation_spec.rb +54 -0
- data/spec/models/policy_spec.rb +54 -0
- data/spec/models/prerequisite_spec.rb +48 -0
- data/spec/models/project_body_spec.rb +48 -0
- data/spec/models/project_spec.rb +66 -0
- data/spec/models/projects_spec.rb +48 -0
- data/spec/models/resource_spec.rb +36 -0
- data/spec/models/resources_spec.rb +36 -0
- data/spec/models/role_spec.rb +36 -0
- data/spec/models/rollout_spec.rb +42 -0
- data/spec/models/rule_spec.rb +54 -0
- data/spec/models/statement_spec.rb +70 -0
- data/spec/models/statements_spec.rb +36 -0
- data/spec/models/target_spec.rb +48 -0
- data/spec/models/user_flag_setting_spec.rb +54 -0
- data/spec/models/user_flag_settings_spec.rb +48 -0
- data/spec/models/user_record_spec.rb +66 -0
- data/spec/models/user_segment_body_spec.rb +60 -0
- data/spec/models/user_segment_rule_spec.rb +54 -0
- data/spec/models/user_segment_spec.rb +96 -0
- data/spec/models/user_segments_spec.rb +48 -0
- data/spec/models/user_settings_body_spec.rb +42 -0
- data/spec/models/user_spec.rb +102 -0
- data/spec/models/users_spec.rb +54 -0
- data/spec/models/variation_spec.rb +54 -0
- data/spec/models/webhook_body_spec.rb +66 -0
- data/spec/models/webhook_spec.rb +78 -0
- data/spec/models/webhooks_spec.rb +48 -0
- data/spec/models/weighted_variation_spec.rb +48 -0
- data/spec/spec_helper.rb +111 -0
- data/test.rb +50 -0
- metadata +509 -0
|
@@ -0,0 +1,463 @@
|
|
|
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 FeatureFlagsApi
|
|
17
|
+
attr_accessor :api_client
|
|
18
|
+
|
|
19
|
+
def initialize(api_client = ApiClient.default)
|
|
20
|
+
@api_client = api_client
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
# Delete a feature flag in all environments. Be careful-- only delete feature flags that are no longer being used by your application.
|
|
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 feature_flag_key The feature flag's key. The key identifies the flag in your code.
|
|
27
|
+
# @param [Hash] opts the optional parameters
|
|
28
|
+
# @return [nil]
|
|
29
|
+
def delete_feature_flag(project_key, feature_flag_key, opts = {})
|
|
30
|
+
delete_feature_flag_with_http_info(project_key, feature_flag_key, opts)
|
|
31
|
+
return nil
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
# Delete a feature flag in all environments. Be careful-- only delete feature flags that are no longer being used by your application.
|
|
35
|
+
#
|
|
36
|
+
# @param project_key The project key, used to tie the flags together under one project so they can be managed together.
|
|
37
|
+
# @param feature_flag_key The feature flag's key. The key identifies the flag in your code.
|
|
38
|
+
# @param [Hash] opts the optional parameters
|
|
39
|
+
# @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
|
|
40
|
+
def delete_feature_flag_with_http_info(project_key, feature_flag_key, opts = {})
|
|
41
|
+
if @api_client.config.debugging
|
|
42
|
+
@api_client.config.logger.debug "Calling API: FeatureFlagsApi.delete_feature_flag ..."
|
|
43
|
+
end
|
|
44
|
+
# verify the required parameter 'project_key' is set
|
|
45
|
+
if @api_client.config.client_side_validation && project_key.nil?
|
|
46
|
+
fail ArgumentError, "Missing the required parameter 'project_key' when calling FeatureFlagsApi.delete_feature_flag"
|
|
47
|
+
end
|
|
48
|
+
# verify the required parameter 'feature_flag_key' is set
|
|
49
|
+
if @api_client.config.client_side_validation && feature_flag_key.nil?
|
|
50
|
+
fail ArgumentError, "Missing the required parameter 'feature_flag_key' when calling FeatureFlagsApi.delete_feature_flag"
|
|
51
|
+
end
|
|
52
|
+
# resource path
|
|
53
|
+
local_var_path = "/flags/{projectKey}/{featureFlagKey}".sub('{' + 'projectKey' + '}', project_key.to_s).sub('{' + 'featureFlagKey' + '}', feature_flag_key.to_s)
|
|
54
|
+
|
|
55
|
+
# query parameters
|
|
56
|
+
query_params = {}
|
|
57
|
+
|
|
58
|
+
# header parameters
|
|
59
|
+
header_params = {}
|
|
60
|
+
# HTTP header 'Accept' (if needed)
|
|
61
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
|
62
|
+
# HTTP header 'Content-Type'
|
|
63
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
|
64
|
+
|
|
65
|
+
# form parameters
|
|
66
|
+
form_params = {}
|
|
67
|
+
|
|
68
|
+
# http body (model)
|
|
69
|
+
post_body = nil
|
|
70
|
+
auth_names = ['Token']
|
|
71
|
+
data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
|
|
72
|
+
:header_params => header_params,
|
|
73
|
+
:query_params => query_params,
|
|
74
|
+
:form_params => form_params,
|
|
75
|
+
:body => post_body,
|
|
76
|
+
:auth_names => auth_names)
|
|
77
|
+
if @api_client.config.debugging
|
|
78
|
+
@api_client.config.logger.debug "API called: FeatureFlagsApi#delete_feature_flag\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
79
|
+
end
|
|
80
|
+
return data, status_code, headers
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
# Get a single feature flag by key.
|
|
84
|
+
#
|
|
85
|
+
# @param project_key The project key, used to tie the flags together under one project so they can be managed together.
|
|
86
|
+
# @param feature_flag_key The feature flag's key. The key identifies the flag in your code.
|
|
87
|
+
# @param [Hash] opts the optional parameters
|
|
88
|
+
# @option opts [String] :env By default, each feature will include configurations for each environment. You can filter environments with the env query parameter. For example, setting env=production will restrict the returned configurations to just your production environment.
|
|
89
|
+
# @return [FeatureFlag]
|
|
90
|
+
def get_feature_flag(project_key, feature_flag_key, opts = {})
|
|
91
|
+
data, _status_code, _headers = get_feature_flag_with_http_info(project_key, feature_flag_key, opts)
|
|
92
|
+
return data
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
# Get a single feature flag by key.
|
|
96
|
+
#
|
|
97
|
+
# @param project_key The project key, used to tie the flags together under one project so they can be managed together.
|
|
98
|
+
# @param feature_flag_key The feature flag's key. The key identifies the flag in your code.
|
|
99
|
+
# @param [Hash] opts the optional parameters
|
|
100
|
+
# @option opts [String] :env By default, each feature will include configurations for each environment. You can filter environments with the env query parameter. For example, setting env=production will restrict the returned configurations to just your production environment.
|
|
101
|
+
# @return [Array<(FeatureFlag, Fixnum, Hash)>] FeatureFlag data, response status code and response headers
|
|
102
|
+
def get_feature_flag_with_http_info(project_key, feature_flag_key, opts = {})
|
|
103
|
+
if @api_client.config.debugging
|
|
104
|
+
@api_client.config.logger.debug "Calling API: FeatureFlagsApi.get_feature_flag ..."
|
|
105
|
+
end
|
|
106
|
+
# verify the required parameter 'project_key' is set
|
|
107
|
+
if @api_client.config.client_side_validation && project_key.nil?
|
|
108
|
+
fail ArgumentError, "Missing the required parameter 'project_key' when calling FeatureFlagsApi.get_feature_flag"
|
|
109
|
+
end
|
|
110
|
+
# verify the required parameter 'feature_flag_key' is set
|
|
111
|
+
if @api_client.config.client_side_validation && feature_flag_key.nil?
|
|
112
|
+
fail ArgumentError, "Missing the required parameter 'feature_flag_key' when calling FeatureFlagsApi.get_feature_flag"
|
|
113
|
+
end
|
|
114
|
+
# resource path
|
|
115
|
+
local_var_path = "/flags/{projectKey}/{featureFlagKey}".sub('{' + 'projectKey' + '}', project_key.to_s).sub('{' + 'featureFlagKey' + '}', feature_flag_key.to_s)
|
|
116
|
+
|
|
117
|
+
# query parameters
|
|
118
|
+
query_params = {}
|
|
119
|
+
query_params[:'env'] = opts[:'env'] if !opts[:'env'].nil?
|
|
120
|
+
|
|
121
|
+
# header parameters
|
|
122
|
+
header_params = {}
|
|
123
|
+
# HTTP header 'Accept' (if needed)
|
|
124
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
|
125
|
+
# HTTP header 'Content-Type'
|
|
126
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
|
127
|
+
|
|
128
|
+
# form parameters
|
|
129
|
+
form_params = {}
|
|
130
|
+
|
|
131
|
+
# http body (model)
|
|
132
|
+
post_body = nil
|
|
133
|
+
auth_names = ['Token']
|
|
134
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path,
|
|
135
|
+
:header_params => header_params,
|
|
136
|
+
:query_params => query_params,
|
|
137
|
+
:form_params => form_params,
|
|
138
|
+
:body => post_body,
|
|
139
|
+
:auth_names => auth_names,
|
|
140
|
+
:return_type => 'FeatureFlag')
|
|
141
|
+
if @api_client.config.debugging
|
|
142
|
+
@api_client.config.logger.debug "API called: FeatureFlagsApi#get_feature_flag\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
143
|
+
end
|
|
144
|
+
return data, status_code, headers
|
|
145
|
+
end
|
|
146
|
+
|
|
147
|
+
# Get the status for a particular feature flag.
|
|
148
|
+
#
|
|
149
|
+
# @param project_key The project key, used to tie the flags together under one project so they can be managed together.
|
|
150
|
+
# @param environment_key The environment key, used to tie together flag configuration and users under one environment so they can be managed together.
|
|
151
|
+
# @param feature_flag_key The feature flag's key. The key identifies the flag in your code.
|
|
152
|
+
# @param [Hash] opts the optional parameters
|
|
153
|
+
# @return [FeatureFlagStatus]
|
|
154
|
+
def get_feature_flag_status(project_key, environment_key, feature_flag_key, opts = {})
|
|
155
|
+
data, _status_code, _headers = get_feature_flag_status_with_http_info(project_key, environment_key, feature_flag_key, opts)
|
|
156
|
+
return data
|
|
157
|
+
end
|
|
158
|
+
|
|
159
|
+
# Get the status for a particular feature flag.
|
|
160
|
+
#
|
|
161
|
+
# @param project_key The project key, used to tie the flags together under one project so they can be managed together.
|
|
162
|
+
# @param environment_key The environment key, used to tie together flag configuration and users under one environment so they can be managed together.
|
|
163
|
+
# @param feature_flag_key The feature flag's key. The key identifies the flag in your code.
|
|
164
|
+
# @param [Hash] opts the optional parameters
|
|
165
|
+
# @return [Array<(FeatureFlagStatus, Fixnum, Hash)>] FeatureFlagStatus data, response status code and response headers
|
|
166
|
+
def get_feature_flag_status_with_http_info(project_key, environment_key, feature_flag_key, opts = {})
|
|
167
|
+
if @api_client.config.debugging
|
|
168
|
+
@api_client.config.logger.debug "Calling API: FeatureFlagsApi.get_feature_flag_status ..."
|
|
169
|
+
end
|
|
170
|
+
# verify the required parameter 'project_key' is set
|
|
171
|
+
if @api_client.config.client_side_validation && project_key.nil?
|
|
172
|
+
fail ArgumentError, "Missing the required parameter 'project_key' when calling FeatureFlagsApi.get_feature_flag_status"
|
|
173
|
+
end
|
|
174
|
+
# verify the required parameter 'environment_key' is set
|
|
175
|
+
if @api_client.config.client_side_validation && environment_key.nil?
|
|
176
|
+
fail ArgumentError, "Missing the required parameter 'environment_key' when calling FeatureFlagsApi.get_feature_flag_status"
|
|
177
|
+
end
|
|
178
|
+
# verify the required parameter 'feature_flag_key' is set
|
|
179
|
+
if @api_client.config.client_side_validation && feature_flag_key.nil?
|
|
180
|
+
fail ArgumentError, "Missing the required parameter 'feature_flag_key' when calling FeatureFlagsApi.get_feature_flag_status"
|
|
181
|
+
end
|
|
182
|
+
# resource path
|
|
183
|
+
local_var_path = "/flag-statuses/{projectKey}/{environmentKey}/{featureFlagKey}".sub('{' + 'projectKey' + '}', project_key.to_s).sub('{' + 'environmentKey' + '}', environment_key.to_s).sub('{' + 'featureFlagKey' + '}', feature_flag_key.to_s)
|
|
184
|
+
|
|
185
|
+
# query parameters
|
|
186
|
+
query_params = {}
|
|
187
|
+
|
|
188
|
+
# header parameters
|
|
189
|
+
header_params = {}
|
|
190
|
+
# HTTP header 'Accept' (if needed)
|
|
191
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
|
192
|
+
# HTTP header 'Content-Type'
|
|
193
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
|
194
|
+
|
|
195
|
+
# form parameters
|
|
196
|
+
form_params = {}
|
|
197
|
+
|
|
198
|
+
# http body (model)
|
|
199
|
+
post_body = nil
|
|
200
|
+
auth_names = ['Token']
|
|
201
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path,
|
|
202
|
+
:header_params => header_params,
|
|
203
|
+
:query_params => query_params,
|
|
204
|
+
:form_params => form_params,
|
|
205
|
+
:body => post_body,
|
|
206
|
+
:auth_names => auth_names,
|
|
207
|
+
:return_type => 'FeatureFlagStatus')
|
|
208
|
+
if @api_client.config.debugging
|
|
209
|
+
@api_client.config.logger.debug "API called: FeatureFlagsApi#get_feature_flag_status\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
210
|
+
end
|
|
211
|
+
return data, status_code, headers
|
|
212
|
+
end
|
|
213
|
+
|
|
214
|
+
# Get a list of statuses for all feature flags. The status includes the last time the feature flag was requested, as well as the state of the flag.
|
|
215
|
+
#
|
|
216
|
+
# @param project_key The project key, used to tie the flags together under one project so they can be managed together.
|
|
217
|
+
# @param environment_key The environment key, used to tie together flag configuration and users under one environment so they can be managed together.
|
|
218
|
+
# @param [Hash] opts the optional parameters
|
|
219
|
+
# @return [FeatureFlagStatuses]
|
|
220
|
+
def get_feature_flag_statuses(project_key, environment_key, opts = {})
|
|
221
|
+
data, _status_code, _headers = get_feature_flag_statuses_with_http_info(project_key, environment_key, opts)
|
|
222
|
+
return data
|
|
223
|
+
end
|
|
224
|
+
|
|
225
|
+
# Get a list of statuses for all feature flags. The status includes the last time the feature flag was requested, as well as the state of the flag.
|
|
226
|
+
#
|
|
227
|
+
# @param project_key The project key, used to tie the flags together under one project so they can be managed together.
|
|
228
|
+
# @param environment_key The environment key, used to tie together flag configuration and users under one environment so they can be managed together.
|
|
229
|
+
# @param [Hash] opts the optional parameters
|
|
230
|
+
# @return [Array<(FeatureFlagStatuses, Fixnum, Hash)>] FeatureFlagStatuses data, response status code and response headers
|
|
231
|
+
def get_feature_flag_statuses_with_http_info(project_key, environment_key, opts = {})
|
|
232
|
+
if @api_client.config.debugging
|
|
233
|
+
@api_client.config.logger.debug "Calling API: FeatureFlagsApi.get_feature_flag_statuses ..."
|
|
234
|
+
end
|
|
235
|
+
# verify the required parameter 'project_key' is set
|
|
236
|
+
if @api_client.config.client_side_validation && project_key.nil?
|
|
237
|
+
fail ArgumentError, "Missing the required parameter 'project_key' when calling FeatureFlagsApi.get_feature_flag_statuses"
|
|
238
|
+
end
|
|
239
|
+
# verify the required parameter 'environment_key' is set
|
|
240
|
+
if @api_client.config.client_side_validation && environment_key.nil?
|
|
241
|
+
fail ArgumentError, "Missing the required parameter 'environment_key' when calling FeatureFlagsApi.get_feature_flag_statuses"
|
|
242
|
+
end
|
|
243
|
+
# resource path
|
|
244
|
+
local_var_path = "/flag-statuses/{projectKey}/{environmentKey}".sub('{' + 'projectKey' + '}', project_key.to_s).sub('{' + 'environmentKey' + '}', environment_key.to_s)
|
|
245
|
+
|
|
246
|
+
# query parameters
|
|
247
|
+
query_params = {}
|
|
248
|
+
|
|
249
|
+
# header parameters
|
|
250
|
+
header_params = {}
|
|
251
|
+
# HTTP header 'Accept' (if needed)
|
|
252
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
|
253
|
+
# HTTP header 'Content-Type'
|
|
254
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
|
255
|
+
|
|
256
|
+
# form parameters
|
|
257
|
+
form_params = {}
|
|
258
|
+
|
|
259
|
+
# http body (model)
|
|
260
|
+
post_body = nil
|
|
261
|
+
auth_names = ['Token']
|
|
262
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path,
|
|
263
|
+
:header_params => header_params,
|
|
264
|
+
:query_params => query_params,
|
|
265
|
+
:form_params => form_params,
|
|
266
|
+
:body => post_body,
|
|
267
|
+
:auth_names => auth_names,
|
|
268
|
+
:return_type => 'FeatureFlagStatuses')
|
|
269
|
+
if @api_client.config.debugging
|
|
270
|
+
@api_client.config.logger.debug "API called: FeatureFlagsApi#get_feature_flag_statuses\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
271
|
+
end
|
|
272
|
+
return data, status_code, headers
|
|
273
|
+
end
|
|
274
|
+
|
|
275
|
+
# Get a list of all features in the given project.
|
|
276
|
+
#
|
|
277
|
+
# @param project_key The project key, used to tie the flags together under one project so they can be managed together.
|
|
278
|
+
# @param [Hash] opts the optional parameters
|
|
279
|
+
# @option opts [String] :env By default, each feature will include configurations for each environment. You can filter environments with the env query parameter. For example, setting env=production will restrict the returned configurations to just your production environment.
|
|
280
|
+
# @option opts [String] :tag Filter by tag. A tag can be used to group flags across projects.
|
|
281
|
+
# @return [FeatureFlags]
|
|
282
|
+
def get_feature_flags(project_key, opts = {})
|
|
283
|
+
data, _status_code, _headers = get_feature_flags_with_http_info(project_key, opts)
|
|
284
|
+
return data
|
|
285
|
+
end
|
|
286
|
+
|
|
287
|
+
# Get a list of all features in the given project.
|
|
288
|
+
#
|
|
289
|
+
# @param project_key The project key, used to tie the flags together under one project so they can be managed together.
|
|
290
|
+
# @param [Hash] opts the optional parameters
|
|
291
|
+
# @option opts [String] :env By default, each feature will include configurations for each environment. You can filter environments with the env query parameter. For example, setting env=production will restrict the returned configurations to just your production environment.
|
|
292
|
+
# @option opts [String] :tag Filter by tag. A tag can be used to group flags across projects.
|
|
293
|
+
# @return [Array<(FeatureFlags, Fixnum, Hash)>] FeatureFlags data, response status code and response headers
|
|
294
|
+
def get_feature_flags_with_http_info(project_key, opts = {})
|
|
295
|
+
if @api_client.config.debugging
|
|
296
|
+
@api_client.config.logger.debug "Calling API: FeatureFlagsApi.get_feature_flags ..."
|
|
297
|
+
end
|
|
298
|
+
# verify the required parameter 'project_key' is set
|
|
299
|
+
if @api_client.config.client_side_validation && project_key.nil?
|
|
300
|
+
fail ArgumentError, "Missing the required parameter 'project_key' when calling FeatureFlagsApi.get_feature_flags"
|
|
301
|
+
end
|
|
302
|
+
# resource path
|
|
303
|
+
local_var_path = "/flags/{projectKey}".sub('{' + 'projectKey' + '}', project_key.to_s)
|
|
304
|
+
|
|
305
|
+
# query parameters
|
|
306
|
+
query_params = {}
|
|
307
|
+
query_params[:'env'] = opts[:'env'] if !opts[:'env'].nil?
|
|
308
|
+
query_params[:'tag'] = opts[:'tag'] if !opts[:'tag'].nil?
|
|
309
|
+
|
|
310
|
+
# header parameters
|
|
311
|
+
header_params = {}
|
|
312
|
+
# HTTP header 'Accept' (if needed)
|
|
313
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
|
314
|
+
# HTTP header 'Content-Type'
|
|
315
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
|
316
|
+
|
|
317
|
+
# form parameters
|
|
318
|
+
form_params = {}
|
|
319
|
+
|
|
320
|
+
# http body (model)
|
|
321
|
+
post_body = nil
|
|
322
|
+
auth_names = ['Token']
|
|
323
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path,
|
|
324
|
+
:header_params => header_params,
|
|
325
|
+
:query_params => query_params,
|
|
326
|
+
:form_params => form_params,
|
|
327
|
+
:body => post_body,
|
|
328
|
+
:auth_names => auth_names,
|
|
329
|
+
:return_type => 'FeatureFlags')
|
|
330
|
+
if @api_client.config.debugging
|
|
331
|
+
@api_client.config.logger.debug "API called: FeatureFlagsApi#get_feature_flags\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
332
|
+
end
|
|
333
|
+
return data, status_code, headers
|
|
334
|
+
end
|
|
335
|
+
|
|
336
|
+
# Perform a partial update to a feature.
|
|
337
|
+
#
|
|
338
|
+
# @param project_key The project key, used to tie the flags together under one project so they can be managed together.
|
|
339
|
+
# @param feature_flag_key The feature flag's key. The key identifies the flag in your code.
|
|
340
|
+
# @param patch_comment Requires a JSON Patch representation of the desired changes to the project, and an optional comment. 'http://jsonpatch.com/' Feature flag patches also support JSON Merge Patch format. 'https://tools.ietf.org/html/rfc7386' The addition of comments is also supported.
|
|
341
|
+
# @param [Hash] opts the optional parameters
|
|
342
|
+
# @return [FeatureFlag]
|
|
343
|
+
def patch_feature_flag(project_key, feature_flag_key, patch_comment, opts = {})
|
|
344
|
+
data, _status_code, _headers = patch_feature_flag_with_http_info(project_key, feature_flag_key, patch_comment, opts)
|
|
345
|
+
return data
|
|
346
|
+
end
|
|
347
|
+
|
|
348
|
+
# Perform a partial update to a feature.
|
|
349
|
+
#
|
|
350
|
+
# @param project_key The project key, used to tie the flags together under one project so they can be managed together.
|
|
351
|
+
# @param feature_flag_key The feature flag's key. The key identifies the flag in your code.
|
|
352
|
+
# @param patch_comment Requires a JSON Patch representation of the desired changes to the project, and an optional comment. 'http://jsonpatch.com/' Feature flag patches also support JSON Merge Patch format. 'https://tools.ietf.org/html/rfc7386' The addition of comments is also supported.
|
|
353
|
+
# @param [Hash] opts the optional parameters
|
|
354
|
+
# @return [Array<(FeatureFlag, Fixnum, Hash)>] FeatureFlag data, response status code and response headers
|
|
355
|
+
def patch_feature_flag_with_http_info(project_key, feature_flag_key, patch_comment, opts = {})
|
|
356
|
+
if @api_client.config.debugging
|
|
357
|
+
@api_client.config.logger.debug "Calling API: FeatureFlagsApi.patch_feature_flag ..."
|
|
358
|
+
end
|
|
359
|
+
# verify the required parameter 'project_key' is set
|
|
360
|
+
if @api_client.config.client_side_validation && project_key.nil?
|
|
361
|
+
fail ArgumentError, "Missing the required parameter 'project_key' when calling FeatureFlagsApi.patch_feature_flag"
|
|
362
|
+
end
|
|
363
|
+
# verify the required parameter 'feature_flag_key' is set
|
|
364
|
+
if @api_client.config.client_side_validation && feature_flag_key.nil?
|
|
365
|
+
fail ArgumentError, "Missing the required parameter 'feature_flag_key' when calling FeatureFlagsApi.patch_feature_flag"
|
|
366
|
+
end
|
|
367
|
+
# verify the required parameter 'patch_comment' is set
|
|
368
|
+
if @api_client.config.client_side_validation && patch_comment.nil?
|
|
369
|
+
fail ArgumentError, "Missing the required parameter 'patch_comment' when calling FeatureFlagsApi.patch_feature_flag"
|
|
370
|
+
end
|
|
371
|
+
# resource path
|
|
372
|
+
local_var_path = "/flags/{projectKey}/{featureFlagKey}".sub('{' + 'projectKey' + '}', project_key.to_s).sub('{' + 'featureFlagKey' + '}', feature_flag_key.to_s)
|
|
373
|
+
|
|
374
|
+
# query parameters
|
|
375
|
+
query_params = {}
|
|
376
|
+
|
|
377
|
+
# header parameters
|
|
378
|
+
header_params = {}
|
|
379
|
+
# HTTP header 'Accept' (if needed)
|
|
380
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
|
381
|
+
# HTTP header 'Content-Type'
|
|
382
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
|
383
|
+
|
|
384
|
+
# form parameters
|
|
385
|
+
form_params = {}
|
|
386
|
+
|
|
387
|
+
# http body (model)
|
|
388
|
+
post_body = @api_client.object_to_http_body(patch_comment)
|
|
389
|
+
auth_names = ['Token']
|
|
390
|
+
data, status_code, headers = @api_client.call_api(:PATCH, local_var_path,
|
|
391
|
+
:header_params => header_params,
|
|
392
|
+
:query_params => query_params,
|
|
393
|
+
:form_params => form_params,
|
|
394
|
+
:body => post_body,
|
|
395
|
+
:auth_names => auth_names,
|
|
396
|
+
:return_type => 'FeatureFlag')
|
|
397
|
+
if @api_client.config.debugging
|
|
398
|
+
@api_client.config.logger.debug "API called: FeatureFlagsApi#patch_feature_flag\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
399
|
+
end
|
|
400
|
+
return data, status_code, headers
|
|
401
|
+
end
|
|
402
|
+
|
|
403
|
+
# Creates a new feature flag.
|
|
404
|
+
#
|
|
405
|
+
# @param project_key The project key, used to tie the flags together under one project so they can be managed together.
|
|
406
|
+
# @param feature_flag_body Create a new feature flag.
|
|
407
|
+
# @param [Hash] opts the optional parameters
|
|
408
|
+
# @return [nil]
|
|
409
|
+
def post_feature_flag(project_key, feature_flag_body, opts = {})
|
|
410
|
+
post_feature_flag_with_http_info(project_key, feature_flag_body, opts)
|
|
411
|
+
return nil
|
|
412
|
+
end
|
|
413
|
+
|
|
414
|
+
# Creates a new feature flag.
|
|
415
|
+
#
|
|
416
|
+
# @param project_key The project key, used to tie the flags together under one project so they can be managed together.
|
|
417
|
+
# @param feature_flag_body Create a new feature flag.
|
|
418
|
+
# @param [Hash] opts the optional parameters
|
|
419
|
+
# @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
|
|
420
|
+
def post_feature_flag_with_http_info(project_key, feature_flag_body, opts = {})
|
|
421
|
+
if @api_client.config.debugging
|
|
422
|
+
@api_client.config.logger.debug "Calling API: FeatureFlagsApi.post_feature_flag ..."
|
|
423
|
+
end
|
|
424
|
+
# verify the required parameter 'project_key' is set
|
|
425
|
+
if @api_client.config.client_side_validation && project_key.nil?
|
|
426
|
+
fail ArgumentError, "Missing the required parameter 'project_key' when calling FeatureFlagsApi.post_feature_flag"
|
|
427
|
+
end
|
|
428
|
+
# verify the required parameter 'feature_flag_body' is set
|
|
429
|
+
if @api_client.config.client_side_validation && feature_flag_body.nil?
|
|
430
|
+
fail ArgumentError, "Missing the required parameter 'feature_flag_body' when calling FeatureFlagsApi.post_feature_flag"
|
|
431
|
+
end
|
|
432
|
+
# resource path
|
|
433
|
+
local_var_path = "/flags/{projectKey}".sub('{' + 'projectKey' + '}', project_key.to_s)
|
|
434
|
+
|
|
435
|
+
# query parameters
|
|
436
|
+
query_params = {}
|
|
437
|
+
|
|
438
|
+
# header parameters
|
|
439
|
+
header_params = {}
|
|
440
|
+
# HTTP header 'Accept' (if needed)
|
|
441
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
|
442
|
+
# HTTP header 'Content-Type'
|
|
443
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
|
444
|
+
|
|
445
|
+
# form parameters
|
|
446
|
+
form_params = {}
|
|
447
|
+
|
|
448
|
+
# http body (model)
|
|
449
|
+
post_body = @api_client.object_to_http_body(feature_flag_body)
|
|
450
|
+
auth_names = ['Token']
|
|
451
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path,
|
|
452
|
+
:header_params => header_params,
|
|
453
|
+
:query_params => query_params,
|
|
454
|
+
:form_params => form_params,
|
|
455
|
+
:body => post_body,
|
|
456
|
+
:auth_names => auth_names)
|
|
457
|
+
if @api_client.config.debugging
|
|
458
|
+
@api_client.config.logger.debug "API called: FeatureFlagsApi#post_feature_flag\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
459
|
+
end
|
|
460
|
+
return data, status_code, headers
|
|
461
|
+
end
|
|
462
|
+
end
|
|
463
|
+
end
|