aws-sdk-configservice 1.0.0.rc2 → 1.0.0.rc3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1e11b8455402247e48893fabb8a703ce17b14d04
4
- data.tar.gz: d83a7c21b61299ef9117caa4edb0e612c0159d7f
3
+ metadata.gz: 77f40b9d343abd1cc7a4427fc72ecd1de3ba13fc
4
+ data.tar.gz: e91162f8027f2b60024eba146964cd31d286dcb4
5
5
  SHA512:
6
- metadata.gz: eda5a0feb84afcfe1efbe4103097dd5de2cfa9e7196d9c46ce1c406ee9c4196e22dd96f14297f8e67b2511416ed7143ec65c4f64414625d7693878b36a596a20
7
- data.tar.gz: 570d8226bd8803538314c2c9aed438ab38c5163ab8e1ec524e0da94a373bb06e6d682bb09b8011ab8ac903e1bf1e19d295c7fcf47d4cc5c2a0e3c25ea934d136
6
+ metadata.gz: 7c81eb18e4d29dada854b08a52d6a2b113f7ab42e440313cbc23b27c748fa8309c8e7b977e0eb87e328876f075489a086b55c8a92bf9d1af7cf977448c24c5ac
7
+ data.tar.gz: 751b515779e823a05d45da393ad2ecc9e828c0d2c904b06dcca451b942a9c63c27e5de5e77e1ca634ab12980f2803af2dea1a102732043903cceaadbcc3294d5
@@ -1,6 +1,6 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
@@ -1,6 +1,6 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
@@ -23,1301 +23,1459 @@ require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
23
23
 
24
24
  Aws::Plugins::GlobalConfiguration.add_identifier(:configservice)
25
25
 
26
- module Aws
27
- module ConfigService
28
- class Client < Seahorse::Client::Base
26
+ module Aws::ConfigService
27
+ class Client < Seahorse::Client::Base
29
28
 
30
- include Aws::ClientStubs
29
+ include Aws::ClientStubs
31
30
 
32
- @identifier = :configservice
31
+ @identifier = :configservice
33
32
 
34
- set_api(ClientApi::API)
33
+ set_api(ClientApi::API)
35
34
 
36
- add_plugin(Seahorse::Client::Plugins::ContentLength)
37
- add_plugin(Aws::Plugins::CredentialsConfiguration)
38
- add_plugin(Aws::Plugins::Logging)
39
- add_plugin(Aws::Plugins::ParamConverter)
40
- add_plugin(Aws::Plugins::ParamValidator)
41
- add_plugin(Aws::Plugins::UserAgent)
42
- add_plugin(Aws::Plugins::HelpfulSocketErrors)
43
- add_plugin(Aws::Plugins::RetryErrors)
44
- add_plugin(Aws::Plugins::GlobalConfiguration)
45
- add_plugin(Aws::Plugins::RegionalEndpoint)
46
- add_plugin(Aws::Plugins::ResponsePaging)
47
- add_plugin(Aws::Plugins::StubResponses)
48
- add_plugin(Aws::Plugins::IdempotencyToken)
49
- add_plugin(Aws::Plugins::SignatureV4)
50
- add_plugin(Aws::Plugins::Protocols::JsonRpc)
35
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
36
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
37
+ add_plugin(Aws::Plugins::Logging)
38
+ add_plugin(Aws::Plugins::ParamConverter)
39
+ add_plugin(Aws::Plugins::ParamValidator)
40
+ add_plugin(Aws::Plugins::UserAgent)
41
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
42
+ add_plugin(Aws::Plugins::RetryErrors)
43
+ add_plugin(Aws::Plugins::GlobalConfiguration)
44
+ add_plugin(Aws::Plugins::RegionalEndpoint)
45
+ add_plugin(Aws::Plugins::ResponsePaging)
46
+ add_plugin(Aws::Plugins::StubResponses)
47
+ add_plugin(Aws::Plugins::IdempotencyToken)
48
+ add_plugin(Aws::Plugins::SignatureV4)
49
+ add_plugin(Aws::Plugins::Protocols::JsonRpc)
51
50
 
52
- # @option options [required, Aws::CredentialProvider] :credentials
53
- # Your AWS credentials. This can be an instance of any one of the
54
- # following classes:
55
- #
56
- # * `Aws::Credentials` - Used for configuring static, non-refreshing
57
- # credentials.
58
- #
59
- # * `Aws::InstanceProfileCredentials` - Used for loading credentials
60
- # from an EC2 IMDS on an EC2 instance.
61
- #
62
- # * `Aws::SharedCredentials` - Used for loading credentials from a
63
- # shared file, such as `~/.aws/config`.
64
- #
65
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
66
- #
67
- # When `:credentials` are not configured directly, the following
68
- # locations will be searched for credentials:
69
- #
70
- # * `Aws.config[:credentials]`
71
- # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
72
- # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
73
- # * `~/.aws/credentials`
74
- # * `~/.aws/config`
75
- # * EC2 IMDS instance profile - When used by default, the timeouts are
76
- # very aggressive. Construct and pass an instance of
77
- # `Aws::InstanceProfileCredentails` to enable retries and extended
78
- # timeouts.
79
- # @option options [required, String] :region
80
- # The AWS region to connect to. The configured `:region` is
81
- # used to determine the service `:endpoint`. When not passed,
82
- # a default `:region` is search for in the following locations:
83
- #
84
- # * `Aws.config[:region]`
85
- # * `ENV['AWS_REGION']`
86
- # * `ENV['AMAZON_REGION']`
87
- # * `ENV['AWS_DEFAULT_REGION']`
88
- # * `~/.aws/credentials`
89
- # * `~/.aws/config`
90
- # @option options [String] :access_key_id
91
- # @option options [Boolean] :convert_params (true)
92
- # When `true`, an attempt is made to coerce request parameters into
93
- # the required types.
94
- # @option options [String] :endpoint
95
- # The client endpoint is normally constructed from the `:region`
96
- # option. You should only configure an `:endpoint` when connecting
97
- # to test endpoints. This should be avalid HTTP(S) URI.
98
- # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
99
- # The log formatter.
100
- # @option options [Symbol] :log_level (:info)
101
- # The log level to send messages to the `:logger` at.
102
- # @option options [Logger] :logger
103
- # The Logger instance to send log messages to. If this option
104
- # is not set, logging will be disabled.
105
- # @option options [String] :profile ("default")
106
- # Used when loading credentials from the shared credentials file
107
- # at HOME/.aws/credentials. When not specified, 'default' is used.
108
- # @option options [Integer] :retry_limit (3)
109
- # The maximum number of times to retry failed requests. Only
110
- # ~ 500 level server errors and certain ~ 400 level client errors
111
- # are retried. Generally, these are throttling errors, data
112
- # checksum errors, networking errors, timeout errors and auth
113
- # errors from expired credentials.
114
- # @option options [String] :secret_access_key
115
- # @option options [String] :session_token
116
- # @option options [Boolean] :simple_json (false)
117
- # Disables request parameter conversion, validation, and formatting.
118
- # Also disable response data type conversions. This option is useful
119
- # when you want to ensure the highest level of performance by
120
- # avoiding overhead of walking request parameters and response data
121
- # structures.
122
- #
123
- # When `:simple_json` is enabled, the request parameters hash must
124
- # be formatted exactly as the DynamoDB API expects.
125
- # @option options [Boolean] :stub_responses (false)
126
- # Causes the client to return stubbed responses. By default
127
- # fake responses are generated and returned. You can specify
128
- # the response data to return or errors to raise by calling
129
- # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
130
- #
131
- # ** Please note ** When response stubbing is enabled, no HTTP
132
- # requests are made, and retries are disabled.
133
- # @option options [Boolean] :validate_params (true)
134
- # When `true`, request parameters are validated before
135
- # sending the request.
136
- def initialize(*args)
137
- super
138
- end
139
-
140
- # @!group API Operations
51
+ # @option options [required, Aws::CredentialProvider] :credentials
52
+ # Your AWS credentials. This can be an instance of any one of the
53
+ # following classes:
54
+ #
55
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
56
+ # credentials.
57
+ #
58
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
59
+ # from an EC2 IMDS on an EC2 instance.
60
+ #
61
+ # * `Aws::SharedCredentials` - Used for loading credentials from a
62
+ # shared file, such as `~/.aws/config`.
63
+ #
64
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
65
+ #
66
+ # When `:credentials` are not configured directly, the following
67
+ # locations will be searched for credentials:
68
+ #
69
+ # * `Aws.config[:credentials]`
70
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
71
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
72
+ # * `~/.aws/credentials`
73
+ # * `~/.aws/config`
74
+ # * EC2 IMDS instance profile - When used by default, the timeouts are
75
+ # very aggressive. Construct and pass an instance of
76
+ # `Aws::InstanceProfileCredentails` to enable retries and extended
77
+ # timeouts.
78
+ #
79
+ # @option options [required, String] :region
80
+ # The AWS region to connect to. The configured `:region` is
81
+ # used to determine the service `:endpoint`. When not passed,
82
+ # a default `:region` is search for in the following locations:
83
+ #
84
+ # * `Aws.config[:region]`
85
+ # * `ENV['AWS_REGION']`
86
+ # * `ENV['AMAZON_REGION']`
87
+ # * `ENV['AWS_DEFAULT_REGION']`
88
+ # * `~/.aws/credentials`
89
+ # * `~/.aws/config`
90
+ #
91
+ # @option options [String] :access_key_id
92
+ #
93
+ # @option options [Boolean] :convert_params (true)
94
+ # When `true`, an attempt is made to coerce request parameters into
95
+ # the required types.
96
+ #
97
+ # @option options [String] :endpoint
98
+ # The client endpoint is normally constructed from the `:region`
99
+ # option. You should only configure an `:endpoint` when connecting
100
+ # to test endpoints. This should be avalid HTTP(S) URI.
101
+ #
102
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
103
+ # The log formatter.
104
+ #
105
+ # @option options [Symbol] :log_level (:info)
106
+ # The log level to send messages to the `:logger` at.
107
+ #
108
+ # @option options [Logger] :logger
109
+ # The Logger instance to send log messages to. If this option
110
+ # is not set, logging will be disabled.
111
+ #
112
+ # @option options [String] :profile ("default")
113
+ # Used when loading credentials from the shared credentials file
114
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
115
+ #
116
+ # @option options [Integer] :retry_limit (3)
117
+ # The maximum number of times to retry failed requests. Only
118
+ # ~ 500 level server errors and certain ~ 400 level client errors
119
+ # are retried. Generally, these are throttling errors, data
120
+ # checksum errors, networking errors, timeout errors and auth
121
+ # errors from expired credentials.
122
+ #
123
+ # @option options [String] :secret_access_key
124
+ #
125
+ # @option options [String] :session_token
126
+ #
127
+ # @option options [Boolean] :simple_json (false)
128
+ # Disables request parameter conversion, validation, and formatting.
129
+ # Also disable response data type conversions. This option is useful
130
+ # when you want to ensure the highest level of performance by
131
+ # avoiding overhead of walking request parameters and response data
132
+ # structures.
133
+ #
134
+ # When `:simple_json` is enabled, the request parameters hash must
135
+ # be formatted exactly as the DynamoDB API expects.
136
+ #
137
+ # @option options [Boolean] :stub_responses (false)
138
+ # Causes the client to return stubbed responses. By default
139
+ # fake responses are generated and returned. You can specify
140
+ # the response data to return or errors to raise by calling
141
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
142
+ #
143
+ # ** Please note ** When response stubbing is enabled, no HTTP
144
+ # requests are made, and retries are disabled.
145
+ #
146
+ # @option options [Boolean] :validate_params (true)
147
+ # When `true`, request parameters are validated before
148
+ # sending the request.
149
+ #
150
+ def initialize(*args)
151
+ super
152
+ end
141
153
 
142
- # Deletes the specified AWS Config rule and all of its evaluation
143
- # results.
144
- #
145
- # AWS Config sets the state of a rule to `DELETING` until the deletion
146
- # is complete. You cannot update a rule while it is in this state. If
147
- # you make a `PutConfigRule` or `DeleteConfigRule` request for the rule,
148
- # you will receive a `ResourceInUseException`.
149
- #
150
- # You can check the state of a rule by using the `DescribeConfigRules`
151
- # request.
152
- # @option params [required, String] :config_rule_name
153
- # The name of the AWS Config rule that you want to delete.
154
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
155
- #
156
- # @example Request syntax with placeholder values
157
- # resp = client.delete_config_rule({
158
- # config_rule_name: "StringWithCharLimit64", # required
159
- # })
160
- # @overload delete_config_rule(params = {})
161
- # @param [Hash] params ({})
162
- def delete_config_rule(params = {}, options = {})
163
- req = build_request(:delete_config_rule, params)
164
- req.send_request(options)
165
- end
154
+ # @!group API Operations
166
155
 
167
- # Deletes the configuration recorder.
168
- #
169
- # After the configuration recorder is deleted, AWS Config will not
170
- # record resource configuration changes until you create a new
171
- # configuration recorder.
172
- #
173
- # This action does not delete the configuration information that was
174
- # previously recorded. You will be able to access the previously
175
- # recorded information by using the `GetResourceConfigHistory` action,
176
- # but you will not be able to access this information in the AWS Config
177
- # console until you create a new configuration recorder.
178
- # @option params [required, String] :configuration_recorder_name
179
- # The name of the configuration recorder to be deleted. You can retrieve
180
- # the name of your configuration recorder by using the
181
- # `DescribeConfigurationRecorders` action.
182
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
183
- #
184
- # @example Request syntax with placeholder values
185
- # resp = client.delete_configuration_recorder({
186
- # configuration_recorder_name: "RecorderName", # required
187
- # })
188
- # @overload delete_configuration_recorder(params = {})
189
- # @param [Hash] params ({})
190
- def delete_configuration_recorder(params = {}, options = {})
191
- req = build_request(:delete_configuration_recorder, params)
192
- req.send_request(options)
193
- end
156
+ # Deletes the specified AWS Config rule and all of its evaluation
157
+ # results.
158
+ #
159
+ # AWS Config sets the state of a rule to `DELETING` until the deletion
160
+ # is complete. You cannot update a rule while it is in this state. If
161
+ # you make a `PutConfigRule` or `DeleteConfigRule` request for the rule,
162
+ # you will receive a `ResourceInUseException`.
163
+ #
164
+ # You can check the state of a rule by using the `DescribeConfigRules`
165
+ # request.
166
+ #
167
+ # @option params [required, String] :config_rule_name
168
+ # The name of the AWS Config rule that you want to delete.
169
+ #
170
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
171
+ #
172
+ # @example Request syntax with placeholder values
173
+ #
174
+ # resp = client.delete_config_rule({
175
+ # config_rule_name: "StringWithCharLimit64", # required
176
+ # })
177
+ #
178
+ # @overload delete_config_rule(params = {})
179
+ # @param [Hash] params ({})
180
+ def delete_config_rule(params = {}, options = {})
181
+ req = build_request(:delete_config_rule, params)
182
+ req.send_request(options)
183
+ end
194
184
 
195
- # Deletes the delivery channel.
196
- #
197
- # Before you can delete the delivery channel, you must stop the
198
- # configuration recorder by using the StopConfigurationRecorder action.
199
- # @option params [required, String] :delivery_channel_name
200
- # The name of the delivery channel to delete.
201
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
202
- #
203
- # @example Request syntax with placeholder values
204
- # resp = client.delete_delivery_channel({
205
- # delivery_channel_name: "ChannelName", # required
206
- # })
207
- # @overload delete_delivery_channel(params = {})
208
- # @param [Hash] params ({})
209
- def delete_delivery_channel(params = {}, options = {})
210
- req = build_request(:delete_delivery_channel, params)
211
- req.send_request(options)
212
- end
185
+ # Deletes the configuration recorder.
186
+ #
187
+ # After the configuration recorder is deleted, AWS Config will not
188
+ # record resource configuration changes until you create a new
189
+ # configuration recorder.
190
+ #
191
+ # This action does not delete the configuration information that was
192
+ # previously recorded. You will be able to access the previously
193
+ # recorded information by using the `GetResourceConfigHistory` action,
194
+ # but you will not be able to access this information in the AWS Config
195
+ # console until you create a new configuration recorder.
196
+ #
197
+ # @option params [required, String] :configuration_recorder_name
198
+ # The name of the configuration recorder to be deleted. You can retrieve
199
+ # the name of your configuration recorder by using the
200
+ # `DescribeConfigurationRecorders` action.
201
+ #
202
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
203
+ #
204
+ # @example Request syntax with placeholder values
205
+ #
206
+ # resp = client.delete_configuration_recorder({
207
+ # configuration_recorder_name: "RecorderName", # required
208
+ # })
209
+ #
210
+ # @overload delete_configuration_recorder(params = {})
211
+ # @param [Hash] params ({})
212
+ def delete_configuration_recorder(params = {}, options = {})
213
+ req = build_request(:delete_configuration_recorder, params)
214
+ req.send_request(options)
215
+ end
213
216
 
214
- # Deletes the evaluation results for the specified Config rule. You can
215
- # specify one Config rule per request. After you delete the evaluation
216
- # results, you can call the StartConfigRulesEvaluation API to start
217
- # evaluating your AWS resources against the rule.
218
- # @option params [required, String] :config_rule_name
219
- # The name of the Config rule for which you want to delete the
220
- # evaluation results.
221
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
222
- #
223
- # @example Request syntax with placeholder values
224
- # resp = client.delete_evaluation_results({
225
- # config_rule_name: "StringWithCharLimit64", # required
226
- # })
227
- # @overload delete_evaluation_results(params = {})
228
- # @param [Hash] params ({})
229
- def delete_evaluation_results(params = {}, options = {})
230
- req = build_request(:delete_evaluation_results, params)
231
- req.send_request(options)
232
- end
217
+ # Deletes the delivery channel.
218
+ #
219
+ # Before you can delete the delivery channel, you must stop the
220
+ # configuration recorder by using the StopConfigurationRecorder action.
221
+ #
222
+ # @option params [required, String] :delivery_channel_name
223
+ # The name of the delivery channel to delete.
224
+ #
225
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
226
+ #
227
+ # @example Request syntax with placeholder values
228
+ #
229
+ # resp = client.delete_delivery_channel({
230
+ # delivery_channel_name: "ChannelName", # required
231
+ # })
232
+ #
233
+ # @overload delete_delivery_channel(params = {})
234
+ # @param [Hash] params ({})
235
+ def delete_delivery_channel(params = {}, options = {})
236
+ req = build_request(:delete_delivery_channel, params)
237
+ req.send_request(options)
238
+ end
233
239
 
234
- # Schedules delivery of a configuration snapshot to the Amazon S3 bucket
235
- # in the specified delivery channel. After the delivery has started, AWS
236
- # Config sends following notifications using an Amazon SNS topic that
237
- # you have specified.
238
- #
239
- # * Notification of starting the delivery.
240
- #
241
- # * Notification of delivery completed, if the delivery was successfully
242
- # completed.
243
- #
244
- # * Notification of delivery failure, if the delivery failed to
245
- # complete.
246
- # @option params [required, String] :delivery_channel_name
247
- # The name of the delivery channel through which the snapshot is
248
- # delivered.
249
- # @return [Types::DeliverConfigSnapshotResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
250
- #
251
- # * {Types::DeliverConfigSnapshotResponse#config_snapshot_id #configSnapshotId} => String
252
- #
253
- # @example Request syntax with placeholder values
254
- # resp = client.deliver_config_snapshot({
255
- # delivery_channel_name: "ChannelName", # required
256
- # })
257
- #
258
- # @example Response structure
259
- # resp.config_snapshot_id #=> String
260
- # @overload deliver_config_snapshot(params = {})
261
- # @param [Hash] params ({})
262
- def deliver_config_snapshot(params = {}, options = {})
263
- req = build_request(:deliver_config_snapshot, params)
264
- req.send_request(options)
265
- end
240
+ # Deletes the evaluation results for the specified Config rule. You can
241
+ # specify one Config rule per request. After you delete the evaluation
242
+ # results, you can call the StartConfigRulesEvaluation API to start
243
+ # evaluating your AWS resources against the rule.
244
+ #
245
+ # @option params [required, String] :config_rule_name
246
+ # The name of the Config rule for which you want to delete the
247
+ # evaluation results.
248
+ #
249
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
250
+ #
251
+ # @example Request syntax with placeholder values
252
+ #
253
+ # resp = client.delete_evaluation_results({
254
+ # config_rule_name: "StringWithCharLimit64", # required
255
+ # })
256
+ #
257
+ # @overload delete_evaluation_results(params = {})
258
+ # @param [Hash] params ({})
259
+ def delete_evaluation_results(params = {}, options = {})
260
+ req = build_request(:delete_evaluation_results, params)
261
+ req.send_request(options)
262
+ end
266
263
 
267
- # Indicates whether the specified AWS Config rules are compliant. If a
268
- # rule is noncompliant, this action returns the number of AWS resources
269
- # that do not comply with the rule.
270
- #
271
- # A rule is compliant if all of the evaluated resources comply with it,
272
- # and it is noncompliant if any of these resources do not comply.
273
- #
274
- # If AWS Config has no current evaluation results for the rule, it
275
- # returns `INSUFFICIENT_DATA`. This result might indicate one of the
276
- # following conditions:
277
- #
278
- # * AWS Config has never invoked an evaluation for the rule. To check
279
- # whether it has, use the `DescribeConfigRuleEvaluationStatus` action
280
- # to get the `LastSuccessfulInvocationTime` and
281
- # `LastFailedInvocationTime`.
282
- #
283
- # * The rule's AWS Lambda function is failing to send evaluation
284
- # results to AWS Config. Verify that the role that you assigned to
285
- # your configuration recorder includes the `config:PutEvaluations`
286
- # permission. If the rule is a custom rule, verify that the AWS Lambda
287
- # execution role includes the `config:PutEvaluations` permission.
288
- #
289
- # * The rule's AWS Lambda function has returned `NOT_APPLICABLE` for
290
- # all evaluation results. This can occur if the resources were deleted
291
- # or removed from the rule's scope.
292
- # @option params [Array<String>] :config_rule_names
293
- # Specify one or more AWS Config rule names to filter the results by
294
- # rule.
295
- # @option params [Array<String>] :compliance_types
296
- # Filters the results by compliance.
297
- #
298
- # The allowed values are `COMPLIANT`, `NON_COMPLIANT`, and
299
- # `INSUFFICIENT_DATA`.
300
- # @option params [String] :next_token
301
- # The `nextToken` string returned on a previous page that you use to get
302
- # the next page of results in a paginated response.
303
- # @return [Types::DescribeComplianceByConfigRuleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
304
- #
305
- # * {Types::DescribeComplianceByConfigRuleResponse#compliance_by_config_rules #ComplianceByConfigRules} => Array&lt;Types::ComplianceByConfigRule&gt;
306
- # * {Types::DescribeComplianceByConfigRuleResponse#next_token #NextToken} => String
307
- #
308
- # @example Request syntax with placeholder values
309
- # resp = client.describe_compliance_by_config_rule({
310
- # config_rule_names: ["StringWithCharLimit64"],
311
- # compliance_types: ["COMPLIANT"], # accepts COMPLIANT, NON_COMPLIANT, NOT_APPLICABLE, INSUFFICIENT_DATA
312
- # next_token: "String",
313
- # })
314
- #
315
- # @example Response structure
316
- # resp.compliance_by_config_rules #=> Array
317
- # resp.compliance_by_config_rules[0].config_rule_name #=> String
318
- # resp.compliance_by_config_rules[0].compliance.compliance_type #=> String, one of "COMPLIANT", "NON_COMPLIANT", "NOT_APPLICABLE", "INSUFFICIENT_DATA"
319
- # resp.compliance_by_config_rules[0].compliance.compliance_contributor_count.capped_count #=> Integer
320
- # resp.compliance_by_config_rules[0].compliance.compliance_contributor_count.cap_exceeded #=> Boolean
321
- # resp.next_token #=> String
322
- # @overload describe_compliance_by_config_rule(params = {})
323
- # @param [Hash] params ({})
324
- def describe_compliance_by_config_rule(params = {}, options = {})
325
- req = build_request(:describe_compliance_by_config_rule, params)
326
- req.send_request(options)
327
- end
264
+ # Schedules delivery of a configuration snapshot to the Amazon S3 bucket
265
+ # in the specified delivery channel. After the delivery has started, AWS
266
+ # Config sends following notifications using an Amazon SNS topic that
267
+ # you have specified.
268
+ #
269
+ # * Notification of starting the delivery.
270
+ #
271
+ # * Notification of delivery completed, if the delivery was successfully
272
+ # completed.
273
+ #
274
+ # * Notification of delivery failure, if the delivery failed to
275
+ # complete.
276
+ #
277
+ # @option params [required, String] :delivery_channel_name
278
+ # The name of the delivery channel through which the snapshot is
279
+ # delivered.
280
+ #
281
+ # @return [Types::DeliverConfigSnapshotResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
282
+ #
283
+ # * {Types::DeliverConfigSnapshotResponse#config_snapshot_id #config_snapshot_id} => String
284
+ #
285
+ # @example Request syntax with placeholder values
286
+ #
287
+ # resp = client.deliver_config_snapshot({
288
+ # delivery_channel_name: "ChannelName", # required
289
+ # })
290
+ #
291
+ # @example Response structure
292
+ #
293
+ # resp.config_snapshot_id #=> String
294
+ #
295
+ # @overload deliver_config_snapshot(params = {})
296
+ # @param [Hash] params ({})
297
+ def deliver_config_snapshot(params = {}, options = {})
298
+ req = build_request(:deliver_config_snapshot, params)
299
+ req.send_request(options)
300
+ end
328
301
 
329
- # Indicates whether the specified AWS resources are compliant. If a
330
- # resource is noncompliant, this action returns the number of AWS Config
331
- # rules that the resource does not comply with.
332
- #
333
- # A resource is compliant if it complies with all the AWS Config rules
334
- # that evaluate it. It is noncompliant if it does not comply with one or
335
- # more of these rules.
336
- #
337
- # If AWS Config has no current evaluation results for the resource, it
338
- # returns `INSUFFICIENT_DATA`. This result might indicate one of the
339
- # following conditions about the rules that evaluate the resource:
340
- #
341
- # * AWS Config has never invoked an evaluation for the rule. To check
342
- # whether it has, use the `DescribeConfigRuleEvaluationStatus` action
343
- # to get the `LastSuccessfulInvocationTime` and
344
- # `LastFailedInvocationTime`.
345
- #
346
- # * The rule's AWS Lambda function is failing to send evaluation
347
- # results to AWS Config. Verify that the role that you assigned to
348
- # your configuration recorder includes the `config:PutEvaluations`
349
- # permission. If the rule is a custom rule, verify that the AWS Lambda
350
- # execution role includes the `config:PutEvaluations` permission.
351
- #
352
- # * The rule's AWS Lambda function has returned `NOT_APPLICABLE` for
353
- # all evaluation results. This can occur if the resources were deleted
354
- # or removed from the rule's scope.
355
- # @option params [String] :resource_type
356
- # The types of AWS resources for which you want compliance information;
357
- # for example, `AWS::EC2::Instance`. For this action, you can specify
358
- # that the resource type is an AWS account by specifying
359
- # `AWS::::Account`.
360
- # @option params [String] :resource_id
361
- # The ID of the AWS resource for which you want compliance information.
362
- # You can specify only one resource ID. If you specify a resource ID,
363
- # you must also specify a type for `ResourceType`.
364
- # @option params [Array<String>] :compliance_types
365
- # Filters the results by compliance.
366
- #
367
- # The allowed values are `COMPLIANT`, `NON_COMPLIANT`, and
368
- # `INSUFFICIENT_DATA`.
369
- # @option params [Integer] :limit
370
- # The maximum number of evaluation results returned on each page. The
371
- # default is 10. You cannot specify a limit greater than 100. If you
372
- # specify 0, AWS Config uses the default.
373
- # @option params [String] :next_token
374
- # The `nextToken` string returned on a previous page that you use to get
375
- # the next page of results in a paginated response.
376
- # @return [Types::DescribeComplianceByResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
377
- #
378
- # * {Types::DescribeComplianceByResourceResponse#compliance_by_resources #ComplianceByResources} => Array&lt;Types::ComplianceByResource&gt;
379
- # * {Types::DescribeComplianceByResourceResponse#next_token #NextToken} => String
380
- #
381
- # @example Request syntax with placeholder values
382
- # resp = client.describe_compliance_by_resource({
383
- # resource_type: "StringWithCharLimit256",
384
- # resource_id: "StringWithCharLimit256",
385
- # compliance_types: ["COMPLIANT"], # accepts COMPLIANT, NON_COMPLIANT, NOT_APPLICABLE, INSUFFICIENT_DATA
386
- # limit: 1,
387
- # next_token: "NextToken",
388
- # })
389
- #
390
- # @example Response structure
391
- # resp.compliance_by_resources #=> Array
392
- # resp.compliance_by_resources[0].resource_type #=> String
393
- # resp.compliance_by_resources[0].resource_id #=> String
394
- # resp.compliance_by_resources[0].compliance.compliance_type #=> String, one of "COMPLIANT", "NON_COMPLIANT", "NOT_APPLICABLE", "INSUFFICIENT_DATA"
395
- # resp.compliance_by_resources[0].compliance.compliance_contributor_count.capped_count #=> Integer
396
- # resp.compliance_by_resources[0].compliance.compliance_contributor_count.cap_exceeded #=> Boolean
397
- # resp.next_token #=> String
398
- # @overload describe_compliance_by_resource(params = {})
399
- # @param [Hash] params ({})
400
- def describe_compliance_by_resource(params = {}, options = {})
401
- req = build_request(:describe_compliance_by_resource, params)
402
- req.send_request(options)
403
- end
302
+ # Indicates whether the specified AWS Config rules are compliant. If a
303
+ # rule is noncompliant, this action returns the number of AWS resources
304
+ # that do not comply with the rule.
305
+ #
306
+ # A rule is compliant if all of the evaluated resources comply with it,
307
+ # and it is noncompliant if any of these resources do not comply.
308
+ #
309
+ # If AWS Config has no current evaluation results for the rule, it
310
+ # returns `INSUFFICIENT_DATA`. This result might indicate one of the
311
+ # following conditions:
312
+ #
313
+ # * AWS Config has never invoked an evaluation for the rule. To check
314
+ # whether it has, use the `DescribeConfigRuleEvaluationStatus` action
315
+ # to get the `LastSuccessfulInvocationTime` and
316
+ # `LastFailedInvocationTime`.
317
+ #
318
+ # * The rule's AWS Lambda function is failing to send evaluation
319
+ # results to AWS Config. Verify that the role that you assigned to
320
+ # your configuration recorder includes the `config:PutEvaluations`
321
+ # permission. If the rule is a custom rule, verify that the AWS Lambda
322
+ # execution role includes the `config:PutEvaluations` permission.
323
+ #
324
+ # * The rule's AWS Lambda function has returned `NOT_APPLICABLE` for
325
+ # all evaluation results. This can occur if the resources were deleted
326
+ # or removed from the rule's scope.
327
+ #
328
+ # @option params [Array<String>] :config_rule_names
329
+ # Specify one or more AWS Config rule names to filter the results by
330
+ # rule.
331
+ #
332
+ # @option params [Array<String>] :compliance_types
333
+ # Filters the results by compliance.
334
+ #
335
+ # The allowed values are `COMPLIANT`, `NON_COMPLIANT`, and
336
+ # `INSUFFICIENT_DATA`.
337
+ #
338
+ # @option params [String] :next_token
339
+ # The `NextToken` string returned on a previous page that you use to get
340
+ # the next page of results in a paginated response.
341
+ #
342
+ # @return [Types::DescribeComplianceByConfigRuleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
343
+ #
344
+ # * {Types::DescribeComplianceByConfigRuleResponse#compliance_by_config_rules #compliance_by_config_rules} => Array&lt;Types::ComplianceByConfigRule&gt;
345
+ # * {Types::DescribeComplianceByConfigRuleResponse#next_token #next_token} => String
346
+ #
347
+ # @example Request syntax with placeholder values
348
+ #
349
+ # resp = client.describe_compliance_by_config_rule({
350
+ # config_rule_names: ["StringWithCharLimit64"],
351
+ # compliance_types: ["COMPLIANT"], # accepts COMPLIANT, NON_COMPLIANT, NOT_APPLICABLE, INSUFFICIENT_DATA
352
+ # next_token: "String",
353
+ # })
354
+ #
355
+ # @example Response structure
356
+ #
357
+ # resp.compliance_by_config_rules #=> Array
358
+ # resp.compliance_by_config_rules[0].config_rule_name #=> String
359
+ # resp.compliance_by_config_rules[0].compliance.compliance_type #=> String, one of "COMPLIANT", "NON_COMPLIANT", "NOT_APPLICABLE", "INSUFFICIENT_DATA"
360
+ # resp.compliance_by_config_rules[0].compliance.compliance_contributor_count.capped_count #=> Integer
361
+ # resp.compliance_by_config_rules[0].compliance.compliance_contributor_count.cap_exceeded #=> Boolean
362
+ # resp.next_token #=> String
363
+ #
364
+ # @overload describe_compliance_by_config_rule(params = {})
365
+ # @param [Hash] params ({})
366
+ def describe_compliance_by_config_rule(params = {}, options = {})
367
+ req = build_request(:describe_compliance_by_config_rule, params)
368
+ req.send_request(options)
369
+ end
404
370
 
405
- # Returns status information for each of your AWS managed Config rules.
406
- # The status includes information such as the last time AWS Config
407
- # invoked the rule, the last time AWS Config failed to invoke the rule,
408
- # and the related error for the last failure.
409
- # @option params [Array<String>] :config_rule_names
410
- # The name of the AWS managed Config rules for which you want status
411
- # information. If you do not specify any names, AWS Config returns
412
- # status information for all AWS managed Config rules that you use.
413
- # @option params [String] :next_token
414
- # The `NextToken` string returned on a previous page that you use to get
415
- # the next page of results in a paginated response.
416
- # @option params [Integer] :limit
417
- # The number of rule evaluation results that you want returned.
418
- #
419
- # This parameter is required if the rule limit for your account is more
420
- # than the default of 50 rules.
421
- #
422
- # For more information about requesting a rule limit increase, see [AWS
423
- # Config Limits][1] in the *AWS General Reference Guide*.
424
- #
425
- #
426
- #
427
- # [1]: http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_config
428
- # @return [Types::DescribeConfigRuleEvaluationStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
429
- #
430
- # * {Types::DescribeConfigRuleEvaluationStatusResponse#config_rules_evaluation_status #ConfigRulesEvaluationStatus} => Array&lt;Types::ConfigRuleEvaluationStatus&gt;
431
- # * {Types::DescribeConfigRuleEvaluationStatusResponse#next_token #NextToken} => String
432
- #
433
- # @example Request syntax with placeholder values
434
- # resp = client.describe_config_rule_evaluation_status({
435
- # config_rule_names: ["StringWithCharLimit64"],
436
- # next_token: "String",
437
- # limit: 1,
438
- # })
439
- #
440
- # @example Response structure
441
- # resp.config_rules_evaluation_status #=> Array
442
- # resp.config_rules_evaluation_status[0].config_rule_name #=> String
443
- # resp.config_rules_evaluation_status[0].config_rule_arn #=> String
444
- # resp.config_rules_evaluation_status[0].config_rule_id #=> String
445
- # resp.config_rules_evaluation_status[0].last_successful_invocation_time #=> Time
446
- # resp.config_rules_evaluation_status[0].last_failed_invocation_time #=> Time
447
- # resp.config_rules_evaluation_status[0].last_successful_evaluation_time #=> Time
448
- # resp.config_rules_evaluation_status[0].last_failed_evaluation_time #=> Time
449
- # resp.config_rules_evaluation_status[0].first_activated_time #=> Time
450
- # resp.config_rules_evaluation_status[0].last_error_code #=> String
451
- # resp.config_rules_evaluation_status[0].last_error_message #=> String
452
- # resp.config_rules_evaluation_status[0].first_evaluation_started #=> Boolean
453
- # resp.next_token #=> String
454
- # @overload describe_config_rule_evaluation_status(params = {})
455
- # @param [Hash] params ({})
456
- def describe_config_rule_evaluation_status(params = {}, options = {})
457
- req = build_request(:describe_config_rule_evaluation_status, params)
458
- req.send_request(options)
459
- end
371
+ # Indicates whether the specified AWS resources are compliant. If a
372
+ # resource is noncompliant, this action returns the number of AWS Config
373
+ # rules that the resource does not comply with.
374
+ #
375
+ # A resource is compliant if it complies with all the AWS Config rules
376
+ # that evaluate it. It is noncompliant if it does not comply with one or
377
+ # more of these rules.
378
+ #
379
+ # If AWS Config has no current evaluation results for the resource, it
380
+ # returns `INSUFFICIENT_DATA`. This result might indicate one of the
381
+ # following conditions about the rules that evaluate the resource:
382
+ #
383
+ # * AWS Config has never invoked an evaluation for the rule. To check
384
+ # whether it has, use the `DescribeConfigRuleEvaluationStatus` action
385
+ # to get the `LastSuccessfulInvocationTime` and
386
+ # `LastFailedInvocationTime`.
387
+ #
388
+ # * The rule's AWS Lambda function is failing to send evaluation
389
+ # results to AWS Config. Verify that the role that you assigned to
390
+ # your configuration recorder includes the `config:PutEvaluations`
391
+ # permission. If the rule is a custom rule, verify that the AWS Lambda
392
+ # execution role includes the `config:PutEvaluations` permission.
393
+ #
394
+ # * The rule's AWS Lambda function has returned `NOT_APPLICABLE` for
395
+ # all evaluation results. This can occur if the resources were deleted
396
+ # or removed from the rule's scope.
397
+ #
398
+ # @option params [String] :resource_type
399
+ # The types of AWS resources for which you want compliance information;
400
+ # for example, `AWS::EC2::Instance`. For this action, you can specify
401
+ # that the resource type is an AWS account by specifying
402
+ # `AWS::::Account`.
403
+ #
404
+ # @option params [String] :resource_id
405
+ # The ID of the AWS resource for which you want compliance information.
406
+ # You can specify only one resource ID. If you specify a resource ID,
407
+ # you must also specify a type for `ResourceType`.
408
+ #
409
+ # @option params [Array<String>] :compliance_types
410
+ # Filters the results by compliance.
411
+ #
412
+ # The allowed values are `COMPLIANT`, `NON_COMPLIANT`, and
413
+ # `INSUFFICIENT_DATA`.
414
+ #
415
+ # @option params [Integer] :limit
416
+ # The maximum number of evaluation results returned on each page. The
417
+ # default is 10. You cannot specify a limit greater than 100. If you
418
+ # specify 0, AWS Config uses the default.
419
+ #
420
+ # @option params [String] :next_token
421
+ # The `NextToken` string returned on a previous page that you use to get
422
+ # the next page of results in a paginated response.
423
+ #
424
+ # @return [Types::DescribeComplianceByResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
425
+ #
426
+ # * {Types::DescribeComplianceByResourceResponse#compliance_by_resources #compliance_by_resources} => Array&lt;Types::ComplianceByResource&gt;
427
+ # * {Types::DescribeComplianceByResourceResponse#next_token #next_token} => String
428
+ #
429
+ # @example Request syntax with placeholder values
430
+ #
431
+ # resp = client.describe_compliance_by_resource({
432
+ # resource_type: "StringWithCharLimit256",
433
+ # resource_id: "StringWithCharLimit256",
434
+ # compliance_types: ["COMPLIANT"], # accepts COMPLIANT, NON_COMPLIANT, NOT_APPLICABLE, INSUFFICIENT_DATA
435
+ # limit: 1,
436
+ # next_token: "NextToken",
437
+ # })
438
+ #
439
+ # @example Response structure
440
+ #
441
+ # resp.compliance_by_resources #=> Array
442
+ # resp.compliance_by_resources[0].resource_type #=> String
443
+ # resp.compliance_by_resources[0].resource_id #=> String
444
+ # resp.compliance_by_resources[0].compliance.compliance_type #=> String, one of "COMPLIANT", "NON_COMPLIANT", "NOT_APPLICABLE", "INSUFFICIENT_DATA"
445
+ # resp.compliance_by_resources[0].compliance.compliance_contributor_count.capped_count #=> Integer
446
+ # resp.compliance_by_resources[0].compliance.compliance_contributor_count.cap_exceeded #=> Boolean
447
+ # resp.next_token #=> String
448
+ #
449
+ # @overload describe_compliance_by_resource(params = {})
450
+ # @param [Hash] params ({})
451
+ def describe_compliance_by_resource(params = {}, options = {})
452
+ req = build_request(:describe_compliance_by_resource, params)
453
+ req.send_request(options)
454
+ end
460
455
 
461
- # Returns details about your AWS Config rules.
462
- # @option params [Array<String>] :config_rule_names
463
- # The names of the AWS Config rules for which you want details. If you
464
- # do not specify any names, AWS Config returns details for all your
465
- # rules.
466
- # @option params [String] :next_token
467
- # The `nextToken` string returned on a previous page that you use to get
468
- # the next page of results in a paginated response.
469
- # @return [Types::DescribeConfigRulesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
470
- #
471
- # * {Types::DescribeConfigRulesResponse#config_rules #ConfigRules} => Array&lt;Types::ConfigRule&gt;
472
- # * {Types::DescribeConfigRulesResponse#next_token #NextToken} => String
473
- #
474
- # @example Request syntax with placeholder values
475
- # resp = client.describe_config_rules({
476
- # config_rule_names: ["StringWithCharLimit64"],
477
- # next_token: "String",
478
- # })
479
- #
480
- # @example Response structure
481
- # resp.config_rules #=> Array
482
- # resp.config_rules[0].config_rule_name #=> String
483
- # resp.config_rules[0].config_rule_arn #=> String
484
- # resp.config_rules[0].config_rule_id #=> String
485
- # resp.config_rules[0].description #=> String
486
- # resp.config_rules[0].scope.compliance_resource_types #=> Array
487
- # resp.config_rules[0].scope.compliance_resource_types[0] #=> String
488
- # resp.config_rules[0].scope.tag_key #=> String
489
- # resp.config_rules[0].scope.tag_value #=> String
490
- # resp.config_rules[0].scope.compliance_resource_id #=> String
491
- # resp.config_rules[0].source.owner #=> String, one of "CUSTOM_LAMBDA", "AWS"
492
- # resp.config_rules[0].source.source_identifier #=> String
493
- # resp.config_rules[0].source.source_details #=> Array
494
- # resp.config_rules[0].source.source_details[0].event_source #=> String, one of "aws.config"
495
- # resp.config_rules[0].source.source_details[0].message_type #=> String, one of "ConfigurationItemChangeNotification", "ConfigurationSnapshotDeliveryCompleted", "ScheduledNotification"
496
- # resp.config_rules[0].source.source_details[0].maximum_execution_frequency #=> String, one of "One_Hour", "Three_Hours", "Six_Hours", "Twelve_Hours", "TwentyFour_Hours"
497
- # resp.config_rules[0].input_parameters #=> String
498
- # resp.config_rules[0].maximum_execution_frequency #=> String, one of "One_Hour", "Three_Hours", "Six_Hours", "Twelve_Hours", "TwentyFour_Hours"
499
- # resp.config_rules[0].config_rule_state #=> String, one of "ACTIVE", "DELETING", "DELETING_RESULTS", "EVALUATING"
500
- # resp.next_token #=> String
501
- # @overload describe_config_rules(params = {})
502
- # @param [Hash] params ({})
503
- def describe_config_rules(params = {}, options = {})
504
- req = build_request(:describe_config_rules, params)
505
- req.send_request(options)
506
- end
456
+ # Returns status information for each of your AWS managed Config rules.
457
+ # The status includes information such as the last time AWS Config
458
+ # invoked the rule, the last time AWS Config failed to invoke the rule,
459
+ # and the related error for the last failure.
460
+ #
461
+ # @option params [Array<String>] :config_rule_names
462
+ # The name of the AWS managed Config rules for which you want status
463
+ # information. If you do not specify any names, AWS Config returns
464
+ # status information for all AWS managed Config rules that you use.
465
+ #
466
+ # @option params [String] :next_token
467
+ # The `NextToken` string returned on a previous page that you use to get
468
+ # the next page of results in a paginated response.
469
+ #
470
+ # @option params [Integer] :limit
471
+ # The number of rule evaluation results that you want returned.
472
+ #
473
+ # This parameter is required if the rule limit for your account is more
474
+ # than the default of 50 rules.
475
+ #
476
+ # For more information about requesting a rule limit increase, see [AWS
477
+ # Config Limits][1] in the *AWS General Reference Guide*.
478
+ #
479
+ #
480
+ #
481
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_config
482
+ #
483
+ # @return [Types::DescribeConfigRuleEvaluationStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
484
+ #
485
+ # * {Types::DescribeConfigRuleEvaluationStatusResponse#config_rules_evaluation_status #config_rules_evaluation_status} => Array&lt;Types::ConfigRuleEvaluationStatus&gt;
486
+ # * {Types::DescribeConfigRuleEvaluationStatusResponse#next_token #next_token} => String
487
+ #
488
+ # @example Request syntax with placeholder values
489
+ #
490
+ # resp = client.describe_config_rule_evaluation_status({
491
+ # config_rule_names: ["StringWithCharLimit64"],
492
+ # next_token: "String",
493
+ # limit: 1,
494
+ # })
495
+ #
496
+ # @example Response structure
497
+ #
498
+ # resp.config_rules_evaluation_status #=> Array
499
+ # resp.config_rules_evaluation_status[0].config_rule_name #=> String
500
+ # resp.config_rules_evaluation_status[0].config_rule_arn #=> String
501
+ # resp.config_rules_evaluation_status[0].config_rule_id #=> String
502
+ # resp.config_rules_evaluation_status[0].last_successful_invocation_time #=> Time
503
+ # resp.config_rules_evaluation_status[0].last_failed_invocation_time #=> Time
504
+ # resp.config_rules_evaluation_status[0].last_successful_evaluation_time #=> Time
505
+ # resp.config_rules_evaluation_status[0].last_failed_evaluation_time #=> Time
506
+ # resp.config_rules_evaluation_status[0].first_activated_time #=> Time
507
+ # resp.config_rules_evaluation_status[0].last_error_code #=> String
508
+ # resp.config_rules_evaluation_status[0].last_error_message #=> String
509
+ # resp.config_rules_evaluation_status[0].first_evaluation_started #=> Boolean
510
+ # resp.next_token #=> String
511
+ #
512
+ # @overload describe_config_rule_evaluation_status(params = {})
513
+ # @param [Hash] params ({})
514
+ def describe_config_rule_evaluation_status(params = {}, options = {})
515
+ req = build_request(:describe_config_rule_evaluation_status, params)
516
+ req.send_request(options)
517
+ end
507
518
 
508
- # Returns the current status of the specified configuration recorder. If
509
- # a configuration recorder is not specified, this action returns the
510
- # status of all configuration recorder associated with the account.
511
- #
512
- # <note markdown="1"> Currently, you can specify only one configuration recorder per region
513
- # in your account.
514
- #
515
- # </note>
516
- # @option params [Array<String>] :configuration_recorder_names
517
- # The name(s) of the configuration recorder. If the name is not
518
- # specified, the action returns the current status of all the
519
- # configuration recorders associated with the account.
520
- # @return [Types::DescribeConfigurationRecorderStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
521
- #
522
- # * {Types::DescribeConfigurationRecorderStatusResponse#configuration_recorders_status #ConfigurationRecordersStatus} => Array&lt;Types::ConfigurationRecorderStatus&gt;
523
- #
524
- # @example Request syntax with placeholder values
525
- # resp = client.describe_configuration_recorder_status({
526
- # configuration_recorder_names: ["RecorderName"],
527
- # })
528
- #
529
- # @example Response structure
530
- # resp.configuration_recorders_status #=> Array
531
- # resp.configuration_recorders_status[0].name #=> String
532
- # resp.configuration_recorders_status[0].last_start_time #=> Time
533
- # resp.configuration_recorders_status[0].last_stop_time #=> Time
534
- # resp.configuration_recorders_status[0].recording #=> Boolean
535
- # resp.configuration_recorders_status[0].last_status #=> String, one of "Pending", "Success", "Failure"
536
- # resp.configuration_recorders_status[0].last_error_code #=> String
537
- # resp.configuration_recorders_status[0].last_error_message #=> String
538
- # resp.configuration_recorders_status[0].last_status_change_time #=> Time
539
- # @overload describe_configuration_recorder_status(params = {})
540
- # @param [Hash] params ({})
541
- def describe_configuration_recorder_status(params = {}, options = {})
542
- req = build_request(:describe_configuration_recorder_status, params)
543
- req.send_request(options)
544
- end
519
+ # Returns details about your AWS Config rules.
520
+ #
521
+ # @option params [Array<String>] :config_rule_names
522
+ # The names of the AWS Config rules for which you want details. If you
523
+ # do not specify any names, AWS Config returns details for all your
524
+ # rules.
525
+ #
526
+ # @option params [String] :next_token
527
+ # The `NextToken` string returned on a previous page that you use to get
528
+ # the next page of results in a paginated response.
529
+ #
530
+ # @return [Types::DescribeConfigRulesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
531
+ #
532
+ # * {Types::DescribeConfigRulesResponse#config_rules #config_rules} => Array&lt;Types::ConfigRule&gt;
533
+ # * {Types::DescribeConfigRulesResponse#next_token #next_token} => String
534
+ #
535
+ # @example Request syntax with placeholder values
536
+ #
537
+ # resp = client.describe_config_rules({
538
+ # config_rule_names: ["StringWithCharLimit64"],
539
+ # next_token: "String",
540
+ # })
541
+ #
542
+ # @example Response structure
543
+ #
544
+ # resp.config_rules #=> Array
545
+ # resp.config_rules[0].config_rule_name #=> String
546
+ # resp.config_rules[0].config_rule_arn #=> String
547
+ # resp.config_rules[0].config_rule_id #=> String
548
+ # resp.config_rules[0].description #=> String
549
+ # resp.config_rules[0].scope.compliance_resource_types #=> Array
550
+ # resp.config_rules[0].scope.compliance_resource_types[0] #=> String
551
+ # resp.config_rules[0].scope.tag_key #=> String
552
+ # resp.config_rules[0].scope.tag_value #=> String
553
+ # resp.config_rules[0].scope.compliance_resource_id #=> String
554
+ # resp.config_rules[0].source.owner #=> String, one of "CUSTOM_LAMBDA", "AWS"
555
+ # resp.config_rules[0].source.source_identifier #=> String
556
+ # resp.config_rules[0].source.source_details #=> Array
557
+ # resp.config_rules[0].source.source_details[0].event_source #=> String, one of "aws.config"
558
+ # resp.config_rules[0].source.source_details[0].message_type #=> String, one of "ConfigurationItemChangeNotification", "ConfigurationSnapshotDeliveryCompleted", "ScheduledNotification", "OversizedConfigurationItemChangeNotification"
559
+ # resp.config_rules[0].source.source_details[0].maximum_execution_frequency #=> String, one of "One_Hour", "Three_Hours", "Six_Hours", "Twelve_Hours", "TwentyFour_Hours"
560
+ # resp.config_rules[0].input_parameters #=> String
561
+ # resp.config_rules[0].maximum_execution_frequency #=> String, one of "One_Hour", "Three_Hours", "Six_Hours", "Twelve_Hours", "TwentyFour_Hours"
562
+ # resp.config_rules[0].config_rule_state #=> String, one of "ACTIVE", "DELETING", "DELETING_RESULTS", "EVALUATING"
563
+ # resp.next_token #=> String
564
+ #
565
+ # @overload describe_config_rules(params = {})
566
+ # @param [Hash] params ({})
567
+ def describe_config_rules(params = {}, options = {})
568
+ req = build_request(:describe_config_rules, params)
569
+ req.send_request(options)
570
+ end
545
571
 
546
- # Returns the details for the specified configuration recorders. If the
547
- # configuration recorder is not specified, this action returns the
548
- # details for all configuration recorders associated with the account.
549
- #
550
- # <note markdown="1"> Currently, you can specify only one configuration recorder per region
551
- # in your account.
552
- #
553
- # </note>
554
- # @option params [Array<String>] :configuration_recorder_names
555
- # A list of configuration recorder names.
556
- # @return [Types::DescribeConfigurationRecordersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
557
- #
558
- # * {Types::DescribeConfigurationRecordersResponse#configuration_recorders #ConfigurationRecorders} => Array&lt;Types::ConfigurationRecorder&gt;
559
- #
560
- # @example Request syntax with placeholder values
561
- # resp = client.describe_configuration_recorders({
562
- # configuration_recorder_names: ["RecorderName"],
563
- # })
564
- #
565
- # @example Response structure
566
- # resp.configuration_recorders #=> Array
567
- # resp.configuration_recorders[0].name #=> String
568
- # resp.configuration_recorders[0].role_arn #=> String
569
- # resp.configuration_recorders[0].recording_group.all_supported #=> Boolean
570
- # resp.configuration_recorders[0].recording_group.include_global_resource_types #=> Boolean
571
- # resp.configuration_recorders[0].recording_group.resource_types #=> Array
572
- # resp.configuration_recorders[0].recording_group.resource_types[0] #=> String, one of "AWS::EC2::CustomerGateway", "AWS::EC2::EIP", "AWS::EC2::Host", "AWS::EC2::Instance", "AWS::EC2::InternetGateway", "AWS::EC2::NetworkAcl", "AWS::EC2::NetworkInterface", "AWS::EC2::RouteTable", "AWS::EC2::SecurityGroup", "AWS::EC2::Subnet", "AWS::CloudTrail::Trail", "AWS::EC2::Volume", "AWS::EC2::VPC", "AWS::EC2::VPNConnection", "AWS::EC2::VPNGateway", "AWS::IAM::Group", "AWS::IAM::Policy", "AWS::IAM::Role", "AWS::IAM::User", "AWS::ACM::Certificate", "AWS::RDS::DBInstance", "AWS::RDS::DBSubnetGroup", "AWS::RDS::DBSecurityGroup", "AWS::RDS::DBSnapshot", "AWS::RDS::EventSubscription", "AWS::ElasticLoadBalancingV2::LoadBalancer", "AWS::S3::Bucket", "AWS::SSM::ManagedInstanceInventory", "AWS::Redshift::Cluster", "AWS::Redshift::ClusterSnapshot", "AWS::Redshift::ClusterParameterGroup", "AWS::Redshift::ClusterSecurityGroup", "AWS::Redshift::ClusterSubnetGroup", "AWS::Redshift::EventSubscription"
573
- # @overload describe_configuration_recorders(params = {})
574
- # @param [Hash] params ({})
575
- def describe_configuration_recorders(params = {}, options = {})
576
- req = build_request(:describe_configuration_recorders, params)
577
- req.send_request(options)
578
- end
572
+ # Returns the current status of the specified configuration recorder. If
573
+ # a configuration recorder is not specified, this action returns the
574
+ # status of all configuration recorder associated with the account.
575
+ #
576
+ # <note markdown="1"> Currently, you can specify only one configuration recorder per region
577
+ # in your account.
578
+ #
579
+ # </note>
580
+ #
581
+ # @option params [Array<String>] :configuration_recorder_names
582
+ # The name(s) of the configuration recorder. If the name is not
583
+ # specified, the action returns the current status of all the
584
+ # configuration recorders associated with the account.
585
+ #
586
+ # @return [Types::DescribeConfigurationRecorderStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
587
+ #
588
+ # * {Types::DescribeConfigurationRecorderStatusResponse#configuration_recorders_status #configuration_recorders_status} => Array&lt;Types::ConfigurationRecorderStatus&gt;
589
+ #
590
+ # @example Request syntax with placeholder values
591
+ #
592
+ # resp = client.describe_configuration_recorder_status({
593
+ # configuration_recorder_names: ["RecorderName"],
594
+ # })
595
+ #
596
+ # @example Response structure
597
+ #
598
+ # resp.configuration_recorders_status #=> Array
599
+ # resp.configuration_recorders_status[0].name #=> String
600
+ # resp.configuration_recorders_status[0].last_start_time #=> Time
601
+ # resp.configuration_recorders_status[0].last_stop_time #=> Time
602
+ # resp.configuration_recorders_status[0].recording #=> Boolean
603
+ # resp.configuration_recorders_status[0].last_status #=> String, one of "Pending", "Success", "Failure"
604
+ # resp.configuration_recorders_status[0].last_error_code #=> String
605
+ # resp.configuration_recorders_status[0].last_error_message #=> String
606
+ # resp.configuration_recorders_status[0].last_status_change_time #=> Time
607
+ #
608
+ # @overload describe_configuration_recorder_status(params = {})
609
+ # @param [Hash] params ({})
610
+ def describe_configuration_recorder_status(params = {}, options = {})
611
+ req = build_request(:describe_configuration_recorder_status, params)
612
+ req.send_request(options)
613
+ end
579
614
 
580
- # Returns the current status of the specified delivery channel. If a
581
- # delivery channel is not specified, this action returns the current
582
- # status of all delivery channels associated with the account.
583
- #
584
- # <note markdown="1"> Currently, you can specify only one delivery channel per region in
585
- # your account.
586
- #
587
- # </note>
588
- # @option params [Array<String>] :delivery_channel_names
589
- # A list of delivery channel names.
590
- # @return [Types::DescribeDeliveryChannelStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
591
- #
592
- # * {Types::DescribeDeliveryChannelStatusResponse#delivery_channels_status #DeliveryChannelsStatus} => Array&lt;Types::DeliveryChannelStatus&gt;
593
- #
594
- # @example Request syntax with placeholder values
595
- # resp = client.describe_delivery_channel_status({
596
- # delivery_channel_names: ["ChannelName"],
597
- # })
598
- #
599
- # @example Response structure
600
- # resp.delivery_channels_status #=> Array
601
- # resp.delivery_channels_status[0].name #=> String
602
- # resp.delivery_channels_status[0].config_snapshot_delivery_info.last_status #=> String, one of "Success", "Failure", "Not_Applicable"
603
- # resp.delivery_channels_status[0].config_snapshot_delivery_info.last_error_code #=> String
604
- # resp.delivery_channels_status[0].config_snapshot_delivery_info.last_error_message #=> String
605
- # resp.delivery_channels_status[0].config_snapshot_delivery_info.last_attempt_time #=> Time
606
- # resp.delivery_channels_status[0].config_snapshot_delivery_info.last_successful_time #=> Time
607
- # resp.delivery_channels_status[0].config_snapshot_delivery_info.next_delivery_time #=> Time
608
- # resp.delivery_channels_status[0].config_history_delivery_info.last_status #=> String, one of "Success", "Failure", "Not_Applicable"
609
- # resp.delivery_channels_status[0].config_history_delivery_info.last_error_code #=> String
610
- # resp.delivery_channels_status[0].config_history_delivery_info.last_error_message #=> String
611
- # resp.delivery_channels_status[0].config_history_delivery_info.last_attempt_time #=> Time
612
- # resp.delivery_channels_status[0].config_history_delivery_info.last_successful_time #=> Time
613
- # resp.delivery_channels_status[0].config_history_delivery_info.next_delivery_time #=> Time
614
- # resp.delivery_channels_status[0].config_stream_delivery_info.last_status #=> String, one of "Success", "Failure", "Not_Applicable"
615
- # resp.delivery_channels_status[0].config_stream_delivery_info.last_error_code #=> String
616
- # resp.delivery_channels_status[0].config_stream_delivery_info.last_error_message #=> String
617
- # resp.delivery_channels_status[0].config_stream_delivery_info.last_status_change_time #=> Time
618
- # @overload describe_delivery_channel_status(params = {})
619
- # @param [Hash] params ({})
620
- def describe_delivery_channel_status(params = {}, options = {})
621
- req = build_request(:describe_delivery_channel_status, params)
622
- req.send_request(options)
623
- end
615
+ # Returns the details for the specified configuration recorders. If the
616
+ # configuration recorder is not specified, this action returns the
617
+ # details for all configuration recorders associated with the account.
618
+ #
619
+ # <note markdown="1"> Currently, you can specify only one configuration recorder per region
620
+ # in your account.
621
+ #
622
+ # </note>
623
+ #
624
+ # @option params [Array<String>] :configuration_recorder_names
625
+ # A list of configuration recorder names.
626
+ #
627
+ # @return [Types::DescribeConfigurationRecordersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
628
+ #
629
+ # * {Types::DescribeConfigurationRecordersResponse#configuration_recorders #configuration_recorders} => Array&lt;Types::ConfigurationRecorder&gt;
630
+ #
631
+ # @example Request syntax with placeholder values
632
+ #
633
+ # resp = client.describe_configuration_recorders({
634
+ # configuration_recorder_names: ["RecorderName"],
635
+ # })
636
+ #
637
+ # @example Response structure
638
+ #
639
+ # resp.configuration_recorders #=> Array
640
+ # resp.configuration_recorders[0].name #=> String
641
+ # resp.configuration_recorders[0].role_arn #=> String
642
+ # resp.configuration_recorders[0].recording_group.all_supported #=> Boolean
643
+ # resp.configuration_recorders[0].recording_group.include_global_resource_types #=> Boolean
644
+ # resp.configuration_recorders[0].recording_group.resource_types #=> Array
645
+ # resp.configuration_recorders[0].recording_group.resource_types[0] #=> String, one of "AWS::EC2::CustomerGateway", "AWS::EC2::EIP", "AWS::EC2::Host", "AWS::EC2::Instance", "AWS::EC2::InternetGateway", "AWS::EC2::NetworkAcl", "AWS::EC2::NetworkInterface", "AWS::EC2::RouteTable", "AWS::EC2::SecurityGroup", "AWS::EC2::Subnet", "AWS::CloudTrail::Trail", "AWS::EC2::Volume", "AWS::EC2::VPC", "AWS::EC2::VPNConnection", "AWS::EC2::VPNGateway", "AWS::IAM::Group", "AWS::IAM::Policy", "AWS::IAM::Role", "AWS::IAM::User", "AWS::ACM::Certificate", "AWS::RDS::DBInstance", "AWS::RDS::DBSubnetGroup", "AWS::RDS::DBSecurityGroup", "AWS::RDS::DBSnapshot", "AWS::RDS::EventSubscription", "AWS::ElasticLoadBalancingV2::LoadBalancer", "AWS::S3::Bucket", "AWS::SSM::ManagedInstanceInventory", "AWS::Redshift::Cluster", "AWS::Redshift::ClusterSnapshot", "AWS::Redshift::ClusterParameterGroup", "AWS::Redshift::ClusterSecurityGroup", "AWS::Redshift::ClusterSubnetGroup", "AWS::Redshift::EventSubscription"
646
+ #
647
+ # @overload describe_configuration_recorders(params = {})
648
+ # @param [Hash] params ({})
649
+ def describe_configuration_recorders(params = {}, options = {})
650
+ req = build_request(:describe_configuration_recorders, params)
651
+ req.send_request(options)
652
+ end
624
653
 
625
- # Returns details about the specified delivery channel. If a delivery
626
- # channel is not specified, this action returns the details of all
627
- # delivery channels associated with the account.
628
- #
629
- # <note markdown="1"> Currently, you can specify only one delivery channel per region in
630
- # your account.
631
- #
632
- # </note>
633
- # @option params [Array<String>] :delivery_channel_names
634
- # A list of delivery channel names.
635
- # @return [Types::DescribeDeliveryChannelsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
636
- #
637
- # * {Types::DescribeDeliveryChannelsResponse#delivery_channels #DeliveryChannels} => Array&lt;Types::DeliveryChannel&gt;
638
- #
639
- # @example Request syntax with placeholder values
640
- # resp = client.describe_delivery_channels({
641
- # delivery_channel_names: ["ChannelName"],
642
- # })
643
- #
644
- # @example Response structure
645
- # resp.delivery_channels #=> Array
646
- # resp.delivery_channels[0].name #=> String
647
- # resp.delivery_channels[0].s3_bucket_name #=> String
648
- # resp.delivery_channels[0].s3_key_prefix #=> String
649
- # resp.delivery_channels[0].sns_topic_arn #=> String
650
- # resp.delivery_channels[0].config_snapshot_delivery_properties.delivery_frequency #=> String, one of "One_Hour", "Three_Hours", "Six_Hours", "Twelve_Hours", "TwentyFour_Hours"
651
- # @overload describe_delivery_channels(params = {})
652
- # @param [Hash] params ({})
653
- def describe_delivery_channels(params = {}, options = {})
654
- req = build_request(:describe_delivery_channels, params)
655
- req.send_request(options)
656
- end
654
+ # Returns the current status of the specified delivery channel. If a
655
+ # delivery channel is not specified, this action returns the current
656
+ # status of all delivery channels associated with the account.
657
+ #
658
+ # <note markdown="1"> Currently, you can specify only one delivery channel per region in
659
+ # your account.
660
+ #
661
+ # </note>
662
+ #
663
+ # @option params [Array<String>] :delivery_channel_names
664
+ # A list of delivery channel names.
665
+ #
666
+ # @return [Types::DescribeDeliveryChannelStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
667
+ #
668
+ # * {Types::DescribeDeliveryChannelStatusResponse#delivery_channels_status #delivery_channels_status} => Array&lt;Types::DeliveryChannelStatus&gt;
669
+ #
670
+ # @example Request syntax with placeholder values
671
+ #
672
+ # resp = client.describe_delivery_channel_status({
673
+ # delivery_channel_names: ["ChannelName"],
674
+ # })
675
+ #
676
+ # @example Response structure
677
+ #
678
+ # resp.delivery_channels_status #=> Array
679
+ # resp.delivery_channels_status[0].name #=> String
680
+ # resp.delivery_channels_status[0].config_snapshot_delivery_info.last_status #=> String, one of "Success", "Failure", "Not_Applicable"
681
+ # resp.delivery_channels_status[0].config_snapshot_delivery_info.last_error_code #=> String
682
+ # resp.delivery_channels_status[0].config_snapshot_delivery_info.last_error_message #=> String
683
+ # resp.delivery_channels_status[0].config_snapshot_delivery_info.last_attempt_time #=> Time
684
+ # resp.delivery_channels_status[0].config_snapshot_delivery_info.last_successful_time #=> Time
685
+ # resp.delivery_channels_status[0].config_snapshot_delivery_info.next_delivery_time #=> Time
686
+ # resp.delivery_channels_status[0].config_history_delivery_info.last_status #=> String, one of "Success", "Failure", "Not_Applicable"
687
+ # resp.delivery_channels_status[0].config_history_delivery_info.last_error_code #=> String
688
+ # resp.delivery_channels_status[0].config_history_delivery_info.last_error_message #=> String
689
+ # resp.delivery_channels_status[0].config_history_delivery_info.last_attempt_time #=> Time
690
+ # resp.delivery_channels_status[0].config_history_delivery_info.last_successful_time #=> Time
691
+ # resp.delivery_channels_status[0].config_history_delivery_info.next_delivery_time #=> Time
692
+ # resp.delivery_channels_status[0].config_stream_delivery_info.last_status #=> String, one of "Success", "Failure", "Not_Applicable"
693
+ # resp.delivery_channels_status[0].config_stream_delivery_info.last_error_code #=> String
694
+ # resp.delivery_channels_status[0].config_stream_delivery_info.last_error_message #=> String
695
+ # resp.delivery_channels_status[0].config_stream_delivery_info.last_status_change_time #=> Time
696
+ #
697
+ # @overload describe_delivery_channel_status(params = {})
698
+ # @param [Hash] params ({})
699
+ def describe_delivery_channel_status(params = {}, options = {})
700
+ req = build_request(:describe_delivery_channel_status, params)
701
+ req.send_request(options)
702
+ end
657
703
 
658
- # Returns the evaluation results for the specified AWS Config rule. The
659
- # results indicate which AWS resources were evaluated by the rule, when
660
- # each resource was last evaluated, and whether each resource complies
661
- # with the rule.
662
- # @option params [required, String] :config_rule_name
663
- # The name of the AWS Config rule for which you want compliance
664
- # information.
665
- # @option params [Array<String>] :compliance_types
666
- # Filters the results by compliance.
667
- #
668
- # The allowed values are `COMPLIANT`, `NON_COMPLIANT`, and
669
- # `NOT_APPLICABLE`.
670
- # @option params [Integer] :limit
671
- # The maximum number of evaluation results returned on each page. The
672
- # default is 10. You cannot specify a limit greater than 100. If you
673
- # specify 0, AWS Config uses the default.
674
- # @option params [String] :next_token
675
- # The `nextToken` string returned on a previous page that you use to get
676
- # the next page of results in a paginated response.
677
- # @return [Types::GetComplianceDetailsByConfigRuleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
678
- #
679
- # * {Types::GetComplianceDetailsByConfigRuleResponse#evaluation_results #EvaluationResults} => Array&lt;Types::EvaluationResult&gt;
680
- # * {Types::GetComplianceDetailsByConfigRuleResponse#next_token #NextToken} => String
681
- #
682
- # @example Request syntax with placeholder values
683
- # resp = client.get_compliance_details_by_config_rule({
684
- # config_rule_name: "StringWithCharLimit64", # required
685
- # compliance_types: ["COMPLIANT"], # accepts COMPLIANT, NON_COMPLIANT, NOT_APPLICABLE, INSUFFICIENT_DATA
686
- # limit: 1,
687
- # next_token: "NextToken",
688
- # })
689
- #
690
- # @example Response structure
691
- # resp.evaluation_results #=> Array
692
- # resp.evaluation_results[0].evaluation_result_identifier.evaluation_result_qualifier.config_rule_name #=> String
693
- # resp.evaluation_results[0].evaluation_result_identifier.evaluation_result_qualifier.resource_type #=> String
694
- # resp.evaluation_results[0].evaluation_result_identifier.evaluation_result_qualifier.resource_id #=> String
695
- # resp.evaluation_results[0].evaluation_result_identifier.ordering_timestamp #=> Time
696
- # resp.evaluation_results[0].compliance_type #=> String, one of "COMPLIANT", "NON_COMPLIANT", "NOT_APPLICABLE", "INSUFFICIENT_DATA"
697
- # resp.evaluation_results[0].result_recorded_time #=> Time
698
- # resp.evaluation_results[0].config_rule_invoked_time #=> Time
699
- # resp.evaluation_results[0].annotation #=> String
700
- # resp.evaluation_results[0].result_token #=> String
701
- # resp.next_token #=> String
702
- # @overload get_compliance_details_by_config_rule(params = {})
703
- # @param [Hash] params ({})
704
- def get_compliance_details_by_config_rule(params = {}, options = {})
705
- req = build_request(:get_compliance_details_by_config_rule, params)
706
- req.send_request(options)
707
- end
704
+ # Returns details about the specified delivery channel. If a delivery
705
+ # channel is not specified, this action returns the details of all
706
+ # delivery channels associated with the account.
707
+ #
708
+ # <note markdown="1"> Currently, you can specify only one delivery channel per region in
709
+ # your account.
710
+ #
711
+ # </note>
712
+ #
713
+ # @option params [Array<String>] :delivery_channel_names
714
+ # A list of delivery channel names.
715
+ #
716
+ # @return [Types::DescribeDeliveryChannelsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
717
+ #
718
+ # * {Types::DescribeDeliveryChannelsResponse#delivery_channels #delivery_channels} => Array&lt;Types::DeliveryChannel&gt;
719
+ #
720
+ # @example Request syntax with placeholder values
721
+ #
722
+ # resp = client.describe_delivery_channels({
723
+ # delivery_channel_names: ["ChannelName"],
724
+ # })
725
+ #
726
+ # @example Response structure
727
+ #
728
+ # resp.delivery_channels #=> Array
729
+ # resp.delivery_channels[0].name #=> String
730
+ # resp.delivery_channels[0].s3_bucket_name #=> String
731
+ # resp.delivery_channels[0].s3_key_prefix #=> String
732
+ # resp.delivery_channels[0].sns_topic_arn #=> String
733
+ # resp.delivery_channels[0].config_snapshot_delivery_properties.delivery_frequency #=> String, one of "One_Hour", "Three_Hours", "Six_Hours", "Twelve_Hours", "TwentyFour_Hours"
734
+ #
735
+ # @overload describe_delivery_channels(params = {})
736
+ # @param [Hash] params ({})
737
+ def describe_delivery_channels(params = {}, options = {})
738
+ req = build_request(:describe_delivery_channels, params)
739
+ req.send_request(options)
740
+ end
708
741
 
709
- # Returns the evaluation results for the specified AWS resource. The
710
- # results indicate which AWS Config rules were used to evaluate the
711
- # resource, when each rule was last used, and whether the resource
712
- # complies with each rule.
713
- # @option params [required, String] :resource_type
714
- # The type of the AWS resource for which you want compliance
715
- # information.
716
- # @option params [required, String] :resource_id
717
- # The ID of the AWS resource for which you want compliance information.
718
- # @option params [Array<String>] :compliance_types
719
- # Filters the results by compliance.
720
- #
721
- # The allowed values are `COMPLIANT`, `NON_COMPLIANT`, and
722
- # `NOT_APPLICABLE`.
723
- # @option params [String] :next_token
724
- # The `nextToken` string returned on a previous page that you use to get
725
- # the next page of results in a paginated response.
726
- # @return [Types::GetComplianceDetailsByResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
727
- #
728
- # * {Types::GetComplianceDetailsByResourceResponse#evaluation_results #EvaluationResults} => Array&lt;Types::EvaluationResult&gt;
729
- # * {Types::GetComplianceDetailsByResourceResponse#next_token #NextToken} => String
730
- #
731
- # @example Request syntax with placeholder values
732
- # resp = client.get_compliance_details_by_resource({
733
- # resource_type: "StringWithCharLimit256", # required
734
- # resource_id: "StringWithCharLimit256", # required
735
- # compliance_types: ["COMPLIANT"], # accepts COMPLIANT, NON_COMPLIANT, NOT_APPLICABLE, INSUFFICIENT_DATA
736
- # next_token: "String",
737
- # })
738
- #
739
- # @example Response structure
740
- # resp.evaluation_results #=> Array
741
- # resp.evaluation_results[0].evaluation_result_identifier.evaluation_result_qualifier.config_rule_name #=> String
742
- # resp.evaluation_results[0].evaluation_result_identifier.evaluation_result_qualifier.resource_type #=> String
743
- # resp.evaluation_results[0].evaluation_result_identifier.evaluation_result_qualifier.resource_id #=> String
744
- # resp.evaluation_results[0].evaluation_result_identifier.ordering_timestamp #=> Time
745
- # resp.evaluation_results[0].compliance_type #=> String, one of "COMPLIANT", "NON_COMPLIANT", "NOT_APPLICABLE", "INSUFFICIENT_DATA"
746
- # resp.evaluation_results[0].result_recorded_time #=> Time
747
- # resp.evaluation_results[0].config_rule_invoked_time #=> Time
748
- # resp.evaluation_results[0].annotation #=> String
749
- # resp.evaluation_results[0].result_token #=> String
750
- # resp.next_token #=> String
751
- # @overload get_compliance_details_by_resource(params = {})
752
- # @param [Hash] params ({})
753
- def get_compliance_details_by_resource(params = {}, options = {})
754
- req = build_request(:get_compliance_details_by_resource, params)
755
- req.send_request(options)
756
- end
742
+ # Returns the evaluation results for the specified AWS Config rule. The
743
+ # results indicate which AWS resources were evaluated by the rule, when
744
+ # each resource was last evaluated, and whether each resource complies
745
+ # with the rule.
746
+ #
747
+ # @option params [required, String] :config_rule_name
748
+ # The name of the AWS Config rule for which you want compliance
749
+ # information.
750
+ #
751
+ # @option params [Array<String>] :compliance_types
752
+ # Filters the results by compliance.
753
+ #
754
+ # The allowed values are `COMPLIANT`, `NON_COMPLIANT`, and
755
+ # `NOT_APPLICABLE`.
756
+ #
757
+ # @option params [Integer] :limit
758
+ # The maximum number of evaluation results returned on each page. The
759
+ # default is 10. You cannot specify a limit greater than 100. If you
760
+ # specify 0, AWS Config uses the default.
761
+ #
762
+ # @option params [String] :next_token
763
+ # The `NextToken` string returned on a previous page that you use to get
764
+ # the next page of results in a paginated response.
765
+ #
766
+ # @return [Types::GetComplianceDetailsByConfigRuleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
767
+ #
768
+ # * {Types::GetComplianceDetailsByConfigRuleResponse#evaluation_results #evaluation_results} => Array&lt;Types::EvaluationResult&gt;
769
+ # * {Types::GetComplianceDetailsByConfigRuleResponse#next_token #next_token} => String
770
+ #
771
+ # @example Request syntax with placeholder values
772
+ #
773
+ # resp = client.get_compliance_details_by_config_rule({
774
+ # config_rule_name: "StringWithCharLimit64", # required
775
+ # compliance_types: ["COMPLIANT"], # accepts COMPLIANT, NON_COMPLIANT, NOT_APPLICABLE, INSUFFICIENT_DATA
776
+ # limit: 1,
777
+ # next_token: "NextToken",
778
+ # })
779
+ #
780
+ # @example Response structure
781
+ #
782
+ # resp.evaluation_results #=> Array
783
+ # resp.evaluation_results[0].evaluation_result_identifier.evaluation_result_qualifier.config_rule_name #=> String
784
+ # resp.evaluation_results[0].evaluation_result_identifier.evaluation_result_qualifier.resource_type #=> String
785
+ # resp.evaluation_results[0].evaluation_result_identifier.evaluation_result_qualifier.resource_id #=> String
786
+ # resp.evaluation_results[0].evaluation_result_identifier.ordering_timestamp #=> Time
787
+ # resp.evaluation_results[0].compliance_type #=> String, one of "COMPLIANT", "NON_COMPLIANT", "NOT_APPLICABLE", "INSUFFICIENT_DATA"
788
+ # resp.evaluation_results[0].result_recorded_time #=> Time
789
+ # resp.evaluation_results[0].config_rule_invoked_time #=> Time
790
+ # resp.evaluation_results[0].annotation #=> String
791
+ # resp.evaluation_results[0].result_token #=> String
792
+ # resp.next_token #=> String
793
+ #
794
+ # @overload get_compliance_details_by_config_rule(params = {})
795
+ # @param [Hash] params ({})
796
+ def get_compliance_details_by_config_rule(params = {}, options = {})
797
+ req = build_request(:get_compliance_details_by_config_rule, params)
798
+ req.send_request(options)
799
+ end
757
800
 
758
- # Returns the number of AWS Config rules that are compliant and
759
- # noncompliant, up to a maximum of 25 for each.
760
- # @return [Types::GetComplianceSummaryByConfigRuleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
761
- #
762
- # * {Types::GetComplianceSummaryByConfigRuleResponse#compliance_summary #ComplianceSummary} => Types::ComplianceSummary
763
- #
764
- # @example Response structure
765
- # resp.compliance_summary.compliant_resource_count.capped_count #=> Integer
766
- # resp.compliance_summary.compliant_resource_count.cap_exceeded #=> Boolean
767
- # resp.compliance_summary.non_compliant_resource_count.capped_count #=> Integer
768
- # resp.compliance_summary.non_compliant_resource_count.cap_exceeded #=> Boolean
769
- # resp.compliance_summary.compliance_summary_timestamp #=> Time
770
- # @overload get_compliance_summary_by_config_rule(params = {})
771
- # @param [Hash] params ({})
772
- def get_compliance_summary_by_config_rule(params = {}, options = {})
773
- req = build_request(:get_compliance_summary_by_config_rule, params)
774
- req.send_request(options)
775
- end
801
+ # Returns the evaluation results for the specified AWS resource. The
802
+ # results indicate which AWS Config rules were used to evaluate the
803
+ # resource, when each rule was last used, and whether the resource
804
+ # complies with each rule.
805
+ #
806
+ # @option params [required, String] :resource_type
807
+ # The type of the AWS resource for which you want compliance
808
+ # information.
809
+ #
810
+ # @option params [required, String] :resource_id
811
+ # The ID of the AWS resource for which you want compliance information.
812
+ #
813
+ # @option params [Array<String>] :compliance_types
814
+ # Filters the results by compliance.
815
+ #
816
+ # The allowed values are `COMPLIANT`, `NON_COMPLIANT`, and
817
+ # `NOT_APPLICABLE`.
818
+ #
819
+ # @option params [String] :next_token
820
+ # The `NextToken` string returned on a previous page that you use to get
821
+ # the next page of results in a paginated response.
822
+ #
823
+ # @return [Types::GetComplianceDetailsByResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
824
+ #
825
+ # * {Types::GetComplianceDetailsByResourceResponse#evaluation_results #evaluation_results} => Array&lt;Types::EvaluationResult&gt;
826
+ # * {Types::GetComplianceDetailsByResourceResponse#next_token #next_token} => String
827
+ #
828
+ # @example Request syntax with placeholder values
829
+ #
830
+ # resp = client.get_compliance_details_by_resource({
831
+ # resource_type: "StringWithCharLimit256", # required
832
+ # resource_id: "StringWithCharLimit256", # required
833
+ # compliance_types: ["COMPLIANT"], # accepts COMPLIANT, NON_COMPLIANT, NOT_APPLICABLE, INSUFFICIENT_DATA
834
+ # next_token: "String",
835
+ # })
836
+ #
837
+ # @example Response structure
838
+ #
839
+ # resp.evaluation_results #=> Array
840
+ # resp.evaluation_results[0].evaluation_result_identifier.evaluation_result_qualifier.config_rule_name #=> String
841
+ # resp.evaluation_results[0].evaluation_result_identifier.evaluation_result_qualifier.resource_type #=> String
842
+ # resp.evaluation_results[0].evaluation_result_identifier.evaluation_result_qualifier.resource_id #=> String
843
+ # resp.evaluation_results[0].evaluation_result_identifier.ordering_timestamp #=> Time
844
+ # resp.evaluation_results[0].compliance_type #=> String, one of "COMPLIANT", "NON_COMPLIANT", "NOT_APPLICABLE", "INSUFFICIENT_DATA"
845
+ # resp.evaluation_results[0].result_recorded_time #=> Time
846
+ # resp.evaluation_results[0].config_rule_invoked_time #=> Time
847
+ # resp.evaluation_results[0].annotation #=> String
848
+ # resp.evaluation_results[0].result_token #=> String
849
+ # resp.next_token #=> String
850
+ #
851
+ # @overload get_compliance_details_by_resource(params = {})
852
+ # @param [Hash] params ({})
853
+ def get_compliance_details_by_resource(params = {}, options = {})
854
+ req = build_request(:get_compliance_details_by_resource, params)
855
+ req.send_request(options)
856
+ end
776
857
 
777
- # Returns the number of resources that are compliant and the number that
778
- # are noncompliant. You can specify one or more resource types to get
779
- # these numbers for each resource type. The maximum number returned is
780
- # 100.
781
- # @option params [Array<String>] :resource_types
782
- # Specify one or more resource types to get the number of resources that
783
- # are compliant and the number that are noncompliant for each resource
784
- # type.
785
- #
786
- # For this request, you can specify an AWS resource type such as
787
- # `AWS::EC2::Instance`, and you can specify that the resource type is an
788
- # AWS account by specifying `AWS::::Account`.
789
- # @return [Types::GetComplianceSummaryByResourceTypeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
790
- #
791
- # * {Types::GetComplianceSummaryByResourceTypeResponse#compliance_summaries_by_resource_type #ComplianceSummariesByResourceType} => Array&lt;Types::ComplianceSummaryByResourceType&gt;
792
- #
793
- # @example Request syntax with placeholder values
794
- # resp = client.get_compliance_summary_by_resource_type({
795
- # resource_types: ["StringWithCharLimit256"],
796
- # })
797
- #
798
- # @example Response structure
799
- # resp.compliance_summaries_by_resource_type #=> Array
800
- # resp.compliance_summaries_by_resource_type[0].resource_type #=> String
801
- # resp.compliance_summaries_by_resource_type[0].compliance_summary.compliant_resource_count.capped_count #=> Integer
802
- # resp.compliance_summaries_by_resource_type[0].compliance_summary.compliant_resource_count.cap_exceeded #=> Boolean
803
- # resp.compliance_summaries_by_resource_type[0].compliance_summary.non_compliant_resource_count.capped_count #=> Integer
804
- # resp.compliance_summaries_by_resource_type[0].compliance_summary.non_compliant_resource_count.cap_exceeded #=> Boolean
805
- # resp.compliance_summaries_by_resource_type[0].compliance_summary.compliance_summary_timestamp #=> Time
806
- # @overload get_compliance_summary_by_resource_type(params = {})
807
- # @param [Hash] params ({})
808
- def get_compliance_summary_by_resource_type(params = {}, options = {})
809
- req = build_request(:get_compliance_summary_by_resource_type, params)
810
- req.send_request(options)
811
- end
858
+ # Returns the number of AWS Config rules that are compliant and
859
+ # noncompliant, up to a maximum of 25 for each.
860
+ #
861
+ # @return [Types::GetComplianceSummaryByConfigRuleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
862
+ #
863
+ # * {Types::GetComplianceSummaryByConfigRuleResponse#compliance_summary #compliance_summary} => Types::ComplianceSummary
864
+ #
865
+ # @example Response structure
866
+ #
867
+ # resp.compliance_summary.compliant_resource_count.capped_count #=> Integer
868
+ # resp.compliance_summary.compliant_resource_count.cap_exceeded #=> Boolean
869
+ # resp.compliance_summary.non_compliant_resource_count.capped_count #=> Integer
870
+ # resp.compliance_summary.non_compliant_resource_count.cap_exceeded #=> Boolean
871
+ # resp.compliance_summary.compliance_summary_timestamp #=> Time
872
+ #
873
+ # @overload get_compliance_summary_by_config_rule(params = {})
874
+ # @param [Hash] params ({})
875
+ def get_compliance_summary_by_config_rule(params = {}, options = {})
876
+ req = build_request(:get_compliance_summary_by_config_rule, params)
877
+ req.send_request(options)
878
+ end
812
879
 
813
- # Returns a list of configuration items for the specified resource. The
814
- # list contains details about each state of the resource during the
815
- # specified time interval.
816
- #
817
- # The response is paginated, and by default, AWS Config returns a limit
818
- # of 10 configuration items per page. You can customize this number with
819
- # the `limit` parameter. The response includes a `nextToken` string, and
820
- # to get the next page of results, run the request again and enter this
821
- # string for the `nextToken` parameter.
822
- #
823
- # <note markdown="1"> Each call to the API is limited to span a duration of seven days. It
824
- # is likely that the number of records returned is smaller than the
825
- # specified `limit`. In such cases, you can make another call, using the
826
- # `nextToken`.
827
- #
828
- # </note>
829
- # @option params [required, String] :resource_type
830
- # The resource type.
831
- # @option params [required, String] :resource_id
832
- # The ID of the resource (for example., `sg-xxxxxx`).
833
- # @option params [Time,DateTime,Date,Integer,String] :later_time
834
- # The time stamp that indicates a later time. If not specified, current
835
- # time is taken.
836
- # @option params [Time,DateTime,Date,Integer,String] :earlier_time
837
- # The time stamp that indicates an earlier time. If not specified, the
838
- # action returns paginated results that contain configuration items that
839
- # start from when the first configuration item was recorded.
840
- # @option params [String] :chronological_order
841
- # The chronological order for configuration items listed. By default the
842
- # results are listed in reverse chronological order.
843
- # @option params [Integer] :limit
844
- # The maximum number of configuration items returned on each page. The
845
- # default is 10. You cannot specify a limit greater than 100. If you
846
- # specify 0, AWS Config uses the default.
847
- # @option params [String] :next_token
848
- # The `nextToken` string returned on a previous page that you use to get
849
- # the next page of results in a paginated response.
850
- # @return [Types::GetResourceConfigHistoryResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
851
- #
852
- # * {Types::GetResourceConfigHistoryResponse#configuration_items #configurationItems} => Array&lt;Types::ConfigurationItem&gt;
853
- # * {Types::GetResourceConfigHistoryResponse#next_token #nextToken} => String
854
- #
855
- # @example Request syntax with placeholder values
856
- # resp = client.get_resource_config_history({
857
- # resource_type: "AWS::EC2::CustomerGateway", # required, accepts AWS::EC2::CustomerGateway, AWS::EC2::EIP, AWS::EC2::Host, AWS::EC2::Instance, AWS::EC2::InternetGateway, AWS::EC2::NetworkAcl, AWS::EC2::NetworkInterface, AWS::EC2::RouteTable, AWS::EC2::SecurityGroup, AWS::EC2::Subnet, AWS::CloudTrail::Trail, AWS::EC2::Volume, AWS::EC2::VPC, AWS::EC2::VPNConnection, AWS::EC2::VPNGateway, AWS::IAM::Group, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, AWS::ACM::Certificate, AWS::RDS::DBInstance, AWS::RDS::DBSubnetGroup, AWS::RDS::DBSecurityGroup, AWS::RDS::DBSnapshot, AWS::RDS::EventSubscription, AWS::ElasticLoadBalancingV2::LoadBalancer, AWS::S3::Bucket, AWS::SSM::ManagedInstanceInventory, AWS::Redshift::Cluster, AWS::Redshift::ClusterSnapshot, AWS::Redshift::ClusterParameterGroup, AWS::Redshift::ClusterSecurityGroup, AWS::Redshift::ClusterSubnetGroup, AWS::Redshift::EventSubscription
858
- # resource_id: "ResourceId", # required
859
- # later_time: Time.now,
860
- # earlier_time: Time.now,
861
- # chronological_order: "Reverse", # accepts Reverse, Forward
862
- # limit: 1,
863
- # next_token: "NextToken",
864
- # })
865
- #
866
- # @example Response structure
867
- # resp.configuration_items #=> Array
868
- # resp.configuration_items[0].version #=> String
869
- # resp.configuration_items[0].account_id #=> String
870
- # resp.configuration_items[0].configuration_item_capture_time #=> Time
871
- # resp.configuration_items[0].configuration_item_status #=> String, one of "Ok", "Failed", "Discovered", "Deleted"
872
- # resp.configuration_items[0].configuration_state_id #=> String
873
- # resp.configuration_items[0].configuration_item_md5_hash #=> String
874
- # resp.configuration_items[0].arn #=> String
875
- # resp.configuration_items[0].resource_type #=> String, one of "AWS::EC2::CustomerGateway", "AWS::EC2::EIP", "AWS::EC2::Host", "AWS::EC2::Instance", "AWS::EC2::InternetGateway", "AWS::EC2::NetworkAcl", "AWS::EC2::NetworkInterface", "AWS::EC2::RouteTable", "AWS::EC2::SecurityGroup", "AWS::EC2::Subnet", "AWS::CloudTrail::Trail", "AWS::EC2::Volume", "AWS::EC2::VPC", "AWS::EC2::VPNConnection", "AWS::EC2::VPNGateway", "AWS::IAM::Group", "AWS::IAM::Policy", "AWS::IAM::Role", "AWS::IAM::User", "AWS::ACM::Certificate", "AWS::RDS::DBInstance", "AWS::RDS::DBSubnetGroup", "AWS::RDS::DBSecurityGroup", "AWS::RDS::DBSnapshot", "AWS::RDS::EventSubscription", "AWS::ElasticLoadBalancingV2::LoadBalancer", "AWS::S3::Bucket", "AWS::SSM::ManagedInstanceInventory", "AWS::Redshift::Cluster", "AWS::Redshift::ClusterSnapshot", "AWS::Redshift::ClusterParameterGroup", "AWS::Redshift::ClusterSecurityGroup", "AWS::Redshift::ClusterSubnetGroup", "AWS::Redshift::EventSubscription"
876
- # resp.configuration_items[0].resource_id #=> String
877
- # resp.configuration_items[0].resource_name #=> String
878
- # resp.configuration_items[0].aws_region #=> String
879
- # resp.configuration_items[0].availability_zone #=> String
880
- # resp.configuration_items[0].resource_creation_time #=> Time
881
- # resp.configuration_items[0].tags #=> Hash
882
- # resp.configuration_items[0].tags["Name"] #=> String
883
- # resp.configuration_items[0].related_events #=> Array
884
- # resp.configuration_items[0].related_events[0] #=> String
885
- # resp.configuration_items[0].relationships #=> Array
886
- # resp.configuration_items[0].relationships[0].resource_type #=> String, one of "AWS::EC2::CustomerGateway", "AWS::EC2::EIP", "AWS::EC2::Host", "AWS::EC2::Instance", "AWS::EC2::InternetGateway", "AWS::EC2::NetworkAcl", "AWS::EC2::NetworkInterface", "AWS::EC2::RouteTable", "AWS::EC2::SecurityGroup", "AWS::EC2::Subnet", "AWS::CloudTrail::Trail", "AWS::EC2::Volume", "AWS::EC2::VPC", "AWS::EC2::VPNConnection", "AWS::EC2::VPNGateway", "AWS::IAM::Group", "AWS::IAM::Policy", "AWS::IAM::Role", "AWS::IAM::User", "AWS::ACM::Certificate", "AWS::RDS::DBInstance", "AWS::RDS::DBSubnetGroup", "AWS::RDS::DBSecurityGroup", "AWS::RDS::DBSnapshot", "AWS::RDS::EventSubscription", "AWS::ElasticLoadBalancingV2::LoadBalancer", "AWS::S3::Bucket", "AWS::SSM::ManagedInstanceInventory", "AWS::Redshift::Cluster", "AWS::Redshift::ClusterSnapshot", "AWS::Redshift::ClusterParameterGroup", "AWS::Redshift::ClusterSecurityGroup", "AWS::Redshift::ClusterSubnetGroup", "AWS::Redshift::EventSubscription"
887
- # resp.configuration_items[0].relationships[0].resource_id #=> String
888
- # resp.configuration_items[0].relationships[0].resource_name #=> String
889
- # resp.configuration_items[0].relationships[0].relationship_name #=> String
890
- # resp.configuration_items[0].configuration #=> String
891
- # resp.configuration_items[0].supplementary_configuration #=> Hash
892
- # resp.configuration_items[0].supplementary_configuration["SupplementaryConfigurationName"] #=> String
893
- # resp.next_token #=> String
894
- # @overload get_resource_config_history(params = {})
895
- # @param [Hash] params ({})
896
- def get_resource_config_history(params = {}, options = {})
897
- req = build_request(:get_resource_config_history, params)
898
- req.send_request(options)
899
- end
880
+ # Returns the number of resources that are compliant and the number that
881
+ # are noncompliant. You can specify one or more resource types to get
882
+ # these numbers for each resource type. The maximum number returned is
883
+ # 100.
884
+ #
885
+ # @option params [Array<String>] :resource_types
886
+ # Specify one or more resource types to get the number of resources that
887
+ # are compliant and the number that are noncompliant for each resource
888
+ # type.
889
+ #
890
+ # For this request, you can specify an AWS resource type such as
891
+ # `AWS::EC2::Instance`, and you can specify that the resource type is an
892
+ # AWS account by specifying `AWS::::Account`.
893
+ #
894
+ # @return [Types::GetComplianceSummaryByResourceTypeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
895
+ #
896
+ # * {Types::GetComplianceSummaryByResourceTypeResponse#compliance_summaries_by_resource_type #compliance_summaries_by_resource_type} => Array&lt;Types::ComplianceSummaryByResourceType&gt;
897
+ #
898
+ # @example Request syntax with placeholder values
899
+ #
900
+ # resp = client.get_compliance_summary_by_resource_type({
901
+ # resource_types: ["StringWithCharLimit256"],
902
+ # })
903
+ #
904
+ # @example Response structure
905
+ #
906
+ # resp.compliance_summaries_by_resource_type #=> Array
907
+ # resp.compliance_summaries_by_resource_type[0].resource_type #=> String
908
+ # resp.compliance_summaries_by_resource_type[0].compliance_summary.compliant_resource_count.capped_count #=> Integer
909
+ # resp.compliance_summaries_by_resource_type[0].compliance_summary.compliant_resource_count.cap_exceeded #=> Boolean
910
+ # resp.compliance_summaries_by_resource_type[0].compliance_summary.non_compliant_resource_count.capped_count #=> Integer
911
+ # resp.compliance_summaries_by_resource_type[0].compliance_summary.non_compliant_resource_count.cap_exceeded #=> Boolean
912
+ # resp.compliance_summaries_by_resource_type[0].compliance_summary.compliance_summary_timestamp #=> Time
913
+ #
914
+ # @overload get_compliance_summary_by_resource_type(params = {})
915
+ # @param [Hash] params ({})
916
+ def get_compliance_summary_by_resource_type(params = {}, options = {})
917
+ req = build_request(:get_compliance_summary_by_resource_type, params)
918
+ req.send_request(options)
919
+ end
900
920
 
901
- # Accepts a resource type and returns a list of resource identifiers for
902
- # the resources of that type. A resource identifier includes the
903
- # resource type, ID, and (if available) the custom resource name. The
904
- # results consist of resources that AWS Config has discovered, including
905
- # those that AWS Config is not currently recording. You can narrow the
906
- # results to include only resources that have specific resource IDs or a
907
- # resource name.
908
- #
909
- # <note markdown="1"> You can specify either resource IDs or a resource name but not both in
910
- # the same request.
911
- #
912
- # </note>
913
- #
914
- # The response is paginated, and by default AWS Config lists 100
915
- # resource identifiers on each page. You can customize this number with
916
- # the `limit` parameter. The response includes a `nextToken` string, and
917
- # to get the next page of results, run the request again and enter this
918
- # string for the `nextToken` parameter.
919
- # @option params [required, String] :resource_type
920
- # The type of resources that you want AWS Config to list in the
921
- # response.
922
- # @option params [Array<String>] :resource_ids
923
- # The IDs of only those resources that you want AWS Config to list in
924
- # the response. If you do not specify this parameter, AWS Config lists
925
- # all resources of the specified type that it has discovered.
926
- # @option params [String] :resource_name
927
- # The custom name of only those resources that you want AWS Config to
928
- # list in the response. If you do not specify this parameter, AWS Config
929
- # lists all resources of the specified type that it has discovered.
930
- # @option params [Integer] :limit
931
- # The maximum number of resource identifiers returned on each page. The
932
- # default is 100. You cannot specify a limit greater than 100. If you
933
- # specify 0, AWS Config uses the default.
934
- # @option params [Boolean] :include_deleted_resources
935
- # Specifies whether AWS Config includes deleted resources in the
936
- # results. By default, deleted resources are not included.
937
- # @option params [String] :next_token
938
- # The `nextToken` string returned on a previous page that you use to get
939
- # the next page of results in a paginated response.
940
- # @return [Types::ListDiscoveredResourcesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
941
- #
942
- # * {Types::ListDiscoveredResourcesResponse#resource_identifiers #resourceIdentifiers} => Array&lt;Types::ResourceIdentifier&gt;
943
- # * {Types::ListDiscoveredResourcesResponse#next_token #nextToken} => String
944
- #
945
- # @example Request syntax with placeholder values
946
- # resp = client.list_discovered_resources({
947
- # resource_type: "AWS::EC2::CustomerGateway", # required, accepts AWS::EC2::CustomerGateway, AWS::EC2::EIP, AWS::EC2::Host, AWS::EC2::Instance, AWS::EC2::InternetGateway, AWS::EC2::NetworkAcl, AWS::EC2::NetworkInterface, AWS::EC2::RouteTable, AWS::EC2::SecurityGroup, AWS::EC2::Subnet, AWS::CloudTrail::Trail, AWS::EC2::Volume, AWS::EC2::VPC, AWS::EC2::VPNConnection, AWS::EC2::VPNGateway, AWS::IAM::Group, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, AWS::ACM::Certificate, AWS::RDS::DBInstance, AWS::RDS::DBSubnetGroup, AWS::RDS::DBSecurityGroup, AWS::RDS::DBSnapshot, AWS::RDS::EventSubscription, AWS::ElasticLoadBalancingV2::LoadBalancer, AWS::S3::Bucket, AWS::SSM::ManagedInstanceInventory, AWS::Redshift::Cluster, AWS::Redshift::ClusterSnapshot, AWS::Redshift::ClusterParameterGroup, AWS::Redshift::ClusterSecurityGroup, AWS::Redshift::ClusterSubnetGroup, AWS::Redshift::EventSubscription
948
- # resource_ids: ["ResourceId"],
949
- # resource_name: "ResourceName",
950
- # limit: 1,
951
- # include_deleted_resources: false,
952
- # next_token: "NextToken",
953
- # })
954
- #
955
- # @example Response structure
956
- # resp.resource_identifiers #=> Array
957
- # resp.resource_identifiers[0].resource_type #=> String, one of "AWS::EC2::CustomerGateway", "AWS::EC2::EIP", "AWS::EC2::Host", "AWS::EC2::Instance", "AWS::EC2::InternetGateway", "AWS::EC2::NetworkAcl", "AWS::EC2::NetworkInterface", "AWS::EC2::RouteTable", "AWS::EC2::SecurityGroup", "AWS::EC2::Subnet", "AWS::CloudTrail::Trail", "AWS::EC2::Volume", "AWS::EC2::VPC", "AWS::EC2::VPNConnection", "AWS::EC2::VPNGateway", "AWS::IAM::Group", "AWS::IAM::Policy", "AWS::IAM::Role", "AWS::IAM::User", "AWS::ACM::Certificate", "AWS::RDS::DBInstance", "AWS::RDS::DBSubnetGroup", "AWS::RDS::DBSecurityGroup", "AWS::RDS::DBSnapshot", "AWS::RDS::EventSubscription", "AWS::ElasticLoadBalancingV2::LoadBalancer", "AWS::S3::Bucket", "AWS::SSM::ManagedInstanceInventory", "AWS::Redshift::Cluster", "AWS::Redshift::ClusterSnapshot", "AWS::Redshift::ClusterParameterGroup", "AWS::Redshift::ClusterSecurityGroup", "AWS::Redshift::ClusterSubnetGroup", "AWS::Redshift::EventSubscription"
958
- # resp.resource_identifiers[0].resource_id #=> String
959
- # resp.resource_identifiers[0].resource_name #=> String
960
- # resp.resource_identifiers[0].resource_deletion_time #=> Time
961
- # resp.next_token #=> String
962
- # @overload list_discovered_resources(params = {})
963
- # @param [Hash] params ({})
964
- def list_discovered_resources(params = {}, options = {})
965
- req = build_request(:list_discovered_resources, params)
966
- req.send_request(options)
967
- end
921
+ # Returns a list of configuration items for the specified resource. The
922
+ # list contains details about each state of the resource during the
923
+ # specified time interval.
924
+ #
925
+ # The response is paginated, and by default, AWS Config returns a limit
926
+ # of 10 configuration items per page. You can customize this number with
927
+ # the `limit` parameter. The response includes a `nextToken` string, and
928
+ # to get the next page of results, run the request again and enter this
929
+ # string for the `nextToken` parameter.
930
+ #
931
+ # <note markdown="1"> Each call to the API is limited to span a duration of seven days. It
932
+ # is likely that the number of records returned is smaller than the
933
+ # specified `limit`. In such cases, you can make another call, using the
934
+ # `nextToken`.
935
+ #
936
+ # </note>
937
+ #
938
+ # @option params [required, String] :resource_type
939
+ # The resource type.
940
+ #
941
+ # @option params [required, String] :resource_id
942
+ # The ID of the resource (for example., `sg-xxxxxx`).
943
+ #
944
+ # @option params [Time,DateTime,Date,Integer,String] :later_time
945
+ # The time stamp that indicates a later time. If not specified, current
946
+ # time is taken.
947
+ #
948
+ # @option params [Time,DateTime,Date,Integer,String] :earlier_time
949
+ # The time stamp that indicates an earlier time. If not specified, the
950
+ # action returns paginated results that contain configuration items that
951
+ # start from when the first configuration item was recorded.
952
+ #
953
+ # @option params [String] :chronological_order
954
+ # The chronological order for configuration items listed. By default the
955
+ # results are listed in reverse chronological order.
956
+ #
957
+ # @option params [Integer] :limit
958
+ # The maximum number of configuration items returned on each page. The
959
+ # default is 10. You cannot specify a limit greater than 100. If you
960
+ # specify 0, AWS Config uses the default.
961
+ #
962
+ # @option params [String] :next_token
963
+ # The `nextToken` string returned on a previous page that you use to get
964
+ # the next page of results in a paginated response.
965
+ #
966
+ # @return [Types::GetResourceConfigHistoryResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
967
+ #
968
+ # * {Types::GetResourceConfigHistoryResponse#configuration_items #configuration_items} => Array&lt;Types::ConfigurationItem&gt;
969
+ # * {Types::GetResourceConfigHistoryResponse#next_token #next_token} => String
970
+ #
971
+ # @example Request syntax with placeholder values
972
+ #
973
+ # resp = client.get_resource_config_history({
974
+ # resource_type: "AWS::EC2::CustomerGateway", # required, accepts AWS::EC2::CustomerGateway, AWS::EC2::EIP, AWS::EC2::Host, AWS::EC2::Instance, AWS::EC2::InternetGateway, AWS::EC2::NetworkAcl, AWS::EC2::NetworkInterface, AWS::EC2::RouteTable, AWS::EC2::SecurityGroup, AWS::EC2::Subnet, AWS::CloudTrail::Trail, AWS::EC2::Volume, AWS::EC2::VPC, AWS::EC2::VPNConnection, AWS::EC2::VPNGateway, AWS::IAM::Group, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, AWS::ACM::Certificate, AWS::RDS::DBInstance, AWS::RDS::DBSubnetGroup, AWS::RDS::DBSecurityGroup, AWS::RDS::DBSnapshot, AWS::RDS::EventSubscription, AWS::ElasticLoadBalancingV2::LoadBalancer, AWS::S3::Bucket, AWS::SSM::ManagedInstanceInventory, AWS::Redshift::Cluster, AWS::Redshift::ClusterSnapshot, AWS::Redshift::ClusterParameterGroup, AWS::Redshift::ClusterSecurityGroup, AWS::Redshift::ClusterSubnetGroup, AWS::Redshift::EventSubscription
975
+ # resource_id: "ResourceId", # required
976
+ # later_time: Time.now,
977
+ # earlier_time: Time.now,
978
+ # chronological_order: "Reverse", # accepts Reverse, Forward
979
+ # limit: 1,
980
+ # next_token: "NextToken",
981
+ # })
982
+ #
983
+ # @example Response structure
984
+ #
985
+ # resp.configuration_items #=> Array
986
+ # resp.configuration_items[0].version #=> String
987
+ # resp.configuration_items[0].account_id #=> String
988
+ # resp.configuration_items[0].configuration_item_capture_time #=> Time
989
+ # resp.configuration_items[0].configuration_item_status #=> String, one of "Ok", "Failed", "Discovered", "Deleted"
990
+ # resp.configuration_items[0].configuration_state_id #=> String
991
+ # resp.configuration_items[0].configuration_item_md5_hash #=> String
992
+ # resp.configuration_items[0].arn #=> String
993
+ # resp.configuration_items[0].resource_type #=> String, one of "AWS::EC2::CustomerGateway", "AWS::EC2::EIP", "AWS::EC2::Host", "AWS::EC2::Instance", "AWS::EC2::InternetGateway", "AWS::EC2::NetworkAcl", "AWS::EC2::NetworkInterface", "AWS::EC2::RouteTable", "AWS::EC2::SecurityGroup", "AWS::EC2::Subnet", "AWS::CloudTrail::Trail", "AWS::EC2::Volume", "AWS::EC2::VPC", "AWS::EC2::VPNConnection", "AWS::EC2::VPNGateway", "AWS::IAM::Group", "AWS::IAM::Policy", "AWS::IAM::Role", "AWS::IAM::User", "AWS::ACM::Certificate", "AWS::RDS::DBInstance", "AWS::RDS::DBSubnetGroup", "AWS::RDS::DBSecurityGroup", "AWS::RDS::DBSnapshot", "AWS::RDS::EventSubscription", "AWS::ElasticLoadBalancingV2::LoadBalancer", "AWS::S3::Bucket", "AWS::SSM::ManagedInstanceInventory", "AWS::Redshift::Cluster", "AWS::Redshift::ClusterSnapshot", "AWS::Redshift::ClusterParameterGroup", "AWS::Redshift::ClusterSecurityGroup", "AWS::Redshift::ClusterSubnetGroup", "AWS::Redshift::EventSubscription"
994
+ # resp.configuration_items[0].resource_id #=> String
995
+ # resp.configuration_items[0].resource_name #=> String
996
+ # resp.configuration_items[0].aws_region #=> String
997
+ # resp.configuration_items[0].availability_zone #=> String
998
+ # resp.configuration_items[0].resource_creation_time #=> Time
999
+ # resp.configuration_items[0].tags #=> Hash
1000
+ # resp.configuration_items[0].tags["Name"] #=> String
1001
+ # resp.configuration_items[0].related_events #=> Array
1002
+ # resp.configuration_items[0].related_events[0] #=> String
1003
+ # resp.configuration_items[0].relationships #=> Array
1004
+ # resp.configuration_items[0].relationships[0].resource_type #=> String, one of "AWS::EC2::CustomerGateway", "AWS::EC2::EIP", "AWS::EC2::Host", "AWS::EC2::Instance", "AWS::EC2::InternetGateway", "AWS::EC2::NetworkAcl", "AWS::EC2::NetworkInterface", "AWS::EC2::RouteTable", "AWS::EC2::SecurityGroup", "AWS::EC2::Subnet", "AWS::CloudTrail::Trail", "AWS::EC2::Volume", "AWS::EC2::VPC", "AWS::EC2::VPNConnection", "AWS::EC2::VPNGateway", "AWS::IAM::Group", "AWS::IAM::Policy", "AWS::IAM::Role", "AWS::IAM::User", "AWS::ACM::Certificate", "AWS::RDS::DBInstance", "AWS::RDS::DBSubnetGroup", "AWS::RDS::DBSecurityGroup", "AWS::RDS::DBSnapshot", "AWS::RDS::EventSubscription", "AWS::ElasticLoadBalancingV2::LoadBalancer", "AWS::S3::Bucket", "AWS::SSM::ManagedInstanceInventory", "AWS::Redshift::Cluster", "AWS::Redshift::ClusterSnapshot", "AWS::Redshift::ClusterParameterGroup", "AWS::Redshift::ClusterSecurityGroup", "AWS::Redshift::ClusterSubnetGroup", "AWS::Redshift::EventSubscription"
1005
+ # resp.configuration_items[0].relationships[0].resource_id #=> String
1006
+ # resp.configuration_items[0].relationships[0].resource_name #=> String
1007
+ # resp.configuration_items[0].relationships[0].relationship_name #=> String
1008
+ # resp.configuration_items[0].configuration #=> String
1009
+ # resp.configuration_items[0].supplementary_configuration #=> Hash
1010
+ # resp.configuration_items[0].supplementary_configuration["SupplementaryConfigurationName"] #=> String
1011
+ # resp.next_token #=> String
1012
+ #
1013
+ # @overload get_resource_config_history(params = {})
1014
+ # @param [Hash] params ({})
1015
+ def get_resource_config_history(params = {}, options = {})
1016
+ req = build_request(:get_resource_config_history, params)
1017
+ req.send_request(options)
1018
+ end
968
1019
 
969
- # Adds or updates an AWS Config rule for evaluating whether your AWS
970
- # resources comply with your desired configurations.
971
- #
972
- # You can use this action for custom Config rules and AWS managed Config
973
- # rules. A custom Config rule is a rule that you develop and maintain.
974
- # An AWS managed Config rule is a customizable, predefined rule that AWS
975
- # Config provides.
976
- #
977
- # If you are adding a new custom Config rule, you must first create the
978
- # AWS Lambda function that the rule invokes to evaluate your resources.
979
- # When you use the `PutConfigRule` action to add the rule to AWS Config,
980
- # you must specify the Amazon Resource Name (ARN) that AWS Lambda
981
- # assigns to the function. Specify the ARN for the `SourceIdentifier`
982
- # key. This key is part of the `Source` object, which is part of the
983
- # `ConfigRule` object.
984
- #
985
- # If you are adding a new AWS managed Config rule, specify the rule's
986
- # identifier for the `SourceIdentifier` key. To reference AWS managed
987
- # Config rule identifiers, see [Using AWS Managed Config Rules][1].
988
- #
989
- # For any new rule that you add, specify the `ConfigRuleName` in the
990
- # `ConfigRule` object. Do not specify the `ConfigRuleArn` or the
991
- # `ConfigRuleId`. These values are generated by AWS Config for new
992
- # rules.
993
- #
994
- # If you are updating a rule that you added previously, you can specify
995
- # the rule by `ConfigRuleName`, `ConfigRuleId`, or `ConfigRuleArn` in
996
- # the `ConfigRule` data type that you use in this request.
997
- #
998
- # The maximum number of rules that AWS Config supports is 50.
999
- #
1000
- # For more information about requesting a rule limit increase, see [AWS
1001
- # Config Limits][2] in the *AWS General Reference Guide*.
1002
- #
1003
- # For more information about developing and using AWS Config rules, see
1004
- # [Evaluating AWS Resource Configurations with AWS Config][3] in the
1005
- # *AWS Config Developer Guide*.
1006
- #
1007
- #
1008
- #
1009
- # [1]: http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_use-managed-rules.html
1010
- # [2]: http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_config
1011
- # [3]: http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html
1012
- # @option params [required, Types::ConfigRule] :config_rule
1013
- # An AWS Config rule represents an AWS Lambda function that you create
1014
- # for a custom rule or a predefined function for an AWS managed rule.
1015
- # The function evaluates configuration items to assess whether your AWS
1016
- # resources comply with your desired configurations. This function can
1017
- # run when AWS Config detects a configuration change to an AWS resource
1018
- # and at a periodic frequency that you choose (for example, every 24
1019
- # hours).
1020
- #
1021
- # <note markdown="1"> You can use the AWS CLI and AWS SDKs if you want to create a rule that
1022
- # triggers evaluations for your resources when AWS Config delivers the
1023
- # configuration snapshot. For more information, see
1024
- # ConfigSnapshotDeliveryProperties.
1025
- #
1026
- # </note>
1027
- #
1028
- # For more information about developing and using AWS Config rules, see
1029
- # [Evaluating AWS Resource Configurations with AWS Config][1] in the
1030
- # *AWS Config Developer Guide*.
1031
- #
1032
- #
1033
- #
1034
- # [1]: http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html
1035
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1036
- #
1037
- # @example Request syntax with placeholder values
1038
- # resp = client.put_config_rule({
1039
- # config_rule: { # required
1040
- # config_rule_name: "StringWithCharLimit64",
1041
- # config_rule_arn: "String",
1042
- # config_rule_id: "String",
1043
- # description: "EmptiableStringWithCharLimit256",
1044
- # scope: {
1045
- # compliance_resource_types: ["StringWithCharLimit256"],
1046
- # tag_key: "StringWithCharLimit128",
1047
- # tag_value: "StringWithCharLimit256",
1048
- # compliance_resource_id: "StringWithCharLimit256",
1049
- # },
1050
- # source: { # required
1051
- # owner: "CUSTOM_LAMBDA", # required, accepts CUSTOM_LAMBDA, AWS
1052
- # source_identifier: "StringWithCharLimit256", # required
1053
- # source_details: [
1054
- # {
1055
- # event_source: "aws.config", # accepts aws.config
1056
- # message_type: "ConfigurationItemChangeNotification", # accepts ConfigurationItemChangeNotification, ConfigurationSnapshotDeliveryCompleted, ScheduledNotification
1057
- # maximum_execution_frequency: "One_Hour", # accepts One_Hour, Three_Hours, Six_Hours, Twelve_Hours, TwentyFour_Hours
1058
- # },
1059
- # ],
1060
- # },
1061
- # input_parameters: "StringWithCharLimit1024",
1062
- # maximum_execution_frequency: "One_Hour", # accepts One_Hour, Three_Hours, Six_Hours, Twelve_Hours, TwentyFour_Hours
1063
- # config_rule_state: "ACTIVE", # accepts ACTIVE, DELETING, DELETING_RESULTS, EVALUATING
1064
- # },
1065
- # })
1066
- # @overload put_config_rule(params = {})
1067
- # @param [Hash] params ({})
1068
- def put_config_rule(params = {}, options = {})
1069
- req = build_request(:put_config_rule, params)
1070
- req.send_request(options)
1071
- end
1020
+ # Accepts a resource type and returns a list of resource identifiers for
1021
+ # the resources of that type. A resource identifier includes the
1022
+ # resource type, ID, and (if available) the custom resource name. The
1023
+ # results consist of resources that AWS Config has discovered, including
1024
+ # those that AWS Config is not currently recording. You can narrow the
1025
+ # results to include only resources that have specific resource IDs or a
1026
+ # resource name.
1027
+ #
1028
+ # <note markdown="1"> You can specify either resource IDs or a resource name but not both in
1029
+ # the same request.
1030
+ #
1031
+ # </note>
1032
+ #
1033
+ # The response is paginated, and by default AWS Config lists 100
1034
+ # resource identifiers on each page. You can customize this number with
1035
+ # the `limit` parameter. The response includes a `nextToken` string, and
1036
+ # to get the next page of results, run the request again and enter this
1037
+ # string for the `nextToken` parameter.
1038
+ #
1039
+ # @option params [required, String] :resource_type
1040
+ # The type of resources that you want AWS Config to list in the
1041
+ # response.
1042
+ #
1043
+ # @option params [Array<String>] :resource_ids
1044
+ # The IDs of only those resources that you want AWS Config to list in
1045
+ # the response. If you do not specify this parameter, AWS Config lists
1046
+ # all resources of the specified type that it has discovered.
1047
+ #
1048
+ # @option params [String] :resource_name
1049
+ # The custom name of only those resources that you want AWS Config to
1050
+ # list in the response. If you do not specify this parameter, AWS Config
1051
+ # lists all resources of the specified type that it has discovered.
1052
+ #
1053
+ # @option params [Integer] :limit
1054
+ # The maximum number of resource identifiers returned on each page. The
1055
+ # default is 100. You cannot specify a limit greater than 100. If you
1056
+ # specify 0, AWS Config uses the default.
1057
+ #
1058
+ # @option params [Boolean] :include_deleted_resources
1059
+ # Specifies whether AWS Config includes deleted resources in the
1060
+ # results. By default, deleted resources are not included.
1061
+ #
1062
+ # @option params [String] :next_token
1063
+ # The `nextToken` string returned on a previous page that you use to get
1064
+ # the next page of results in a paginated response.
1065
+ #
1066
+ # @return [Types::ListDiscoveredResourcesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1067
+ #
1068
+ # * {Types::ListDiscoveredResourcesResponse#resource_identifiers #resource_identifiers} => Array&lt;Types::ResourceIdentifier&gt;
1069
+ # * {Types::ListDiscoveredResourcesResponse#next_token #next_token} => String
1070
+ #
1071
+ # @example Request syntax with placeholder values
1072
+ #
1073
+ # resp = client.list_discovered_resources({
1074
+ # resource_type: "AWS::EC2::CustomerGateway", # required, accepts AWS::EC2::CustomerGateway, AWS::EC2::EIP, AWS::EC2::Host, AWS::EC2::Instance, AWS::EC2::InternetGateway, AWS::EC2::NetworkAcl, AWS::EC2::NetworkInterface, AWS::EC2::RouteTable, AWS::EC2::SecurityGroup, AWS::EC2::Subnet, AWS::CloudTrail::Trail, AWS::EC2::Volume, AWS::EC2::VPC, AWS::EC2::VPNConnection, AWS::EC2::VPNGateway, AWS::IAM::Group, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, AWS::ACM::Certificate, AWS::RDS::DBInstance, AWS::RDS::DBSubnetGroup, AWS::RDS::DBSecurityGroup, AWS::RDS::DBSnapshot, AWS::RDS::EventSubscription, AWS::ElasticLoadBalancingV2::LoadBalancer, AWS::S3::Bucket, AWS::SSM::ManagedInstanceInventory, AWS::Redshift::Cluster, AWS::Redshift::ClusterSnapshot, AWS::Redshift::ClusterParameterGroup, AWS::Redshift::ClusterSecurityGroup, AWS::Redshift::ClusterSubnetGroup, AWS::Redshift::EventSubscription
1075
+ # resource_ids: ["ResourceId"],
1076
+ # resource_name: "ResourceName",
1077
+ # limit: 1,
1078
+ # include_deleted_resources: false,
1079
+ # next_token: "NextToken",
1080
+ # })
1081
+ #
1082
+ # @example Response structure
1083
+ #
1084
+ # resp.resource_identifiers #=> Array
1085
+ # resp.resource_identifiers[0].resource_type #=> String, one of "AWS::EC2::CustomerGateway", "AWS::EC2::EIP", "AWS::EC2::Host", "AWS::EC2::Instance", "AWS::EC2::InternetGateway", "AWS::EC2::NetworkAcl", "AWS::EC2::NetworkInterface", "AWS::EC2::RouteTable", "AWS::EC2::SecurityGroup", "AWS::EC2::Subnet", "AWS::CloudTrail::Trail", "AWS::EC2::Volume", "AWS::EC2::VPC", "AWS::EC2::VPNConnection", "AWS::EC2::VPNGateway", "AWS::IAM::Group", "AWS::IAM::Policy", "AWS::IAM::Role", "AWS::IAM::User", "AWS::ACM::Certificate", "AWS::RDS::DBInstance", "AWS::RDS::DBSubnetGroup", "AWS::RDS::DBSecurityGroup", "AWS::RDS::DBSnapshot", "AWS::RDS::EventSubscription", "AWS::ElasticLoadBalancingV2::LoadBalancer", "AWS::S3::Bucket", "AWS::SSM::ManagedInstanceInventory", "AWS::Redshift::Cluster", "AWS::Redshift::ClusterSnapshot", "AWS::Redshift::ClusterParameterGroup", "AWS::Redshift::ClusterSecurityGroup", "AWS::Redshift::ClusterSubnetGroup", "AWS::Redshift::EventSubscription"
1086
+ # resp.resource_identifiers[0].resource_id #=> String
1087
+ # resp.resource_identifiers[0].resource_name #=> String
1088
+ # resp.resource_identifiers[0].resource_deletion_time #=> Time
1089
+ # resp.next_token #=> String
1090
+ #
1091
+ # @overload list_discovered_resources(params = {})
1092
+ # @param [Hash] params ({})
1093
+ def list_discovered_resources(params = {}, options = {})
1094
+ req = build_request(:list_discovered_resources, params)
1095
+ req.send_request(options)
1096
+ end
1072
1097
 
1073
- # Creates a new configuration recorder to record the selected resource
1074
- # configurations.
1075
- #
1076
- # You can use this action to change the role `roleARN` and/or the
1077
- # `recordingGroup` of an existing recorder. To change the role, call the
1078
- # action on the existing configuration recorder and specify a role.
1079
- #
1080
- # <note markdown="1"> Currently, you can specify only one configuration recorder per region
1081
- # in your account.
1082
- #
1083
- # If `ConfigurationRecorder` does not have the **recordingGroup**
1084
- # parameter specified, the default is to record all supported resource
1085
- # types.
1086
- #
1087
- # </note>
1088
- # @option params [required, Types::ConfigurationRecorder] :configuration_recorder
1089
- # The configuration recorder object that records each configuration
1090
- # change made to the resources.
1091
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1092
- #
1093
- # @example Request syntax with placeholder values
1094
- # resp = client.put_configuration_recorder({
1095
- # configuration_recorder: { # required
1096
- # name: "RecorderName",
1097
- # role_arn: "String",
1098
- # recording_group: {
1099
- # all_supported: false,
1100
- # include_global_resource_types: false,
1101
- # resource_types: ["AWS::EC2::CustomerGateway"], # accepts AWS::EC2::CustomerGateway, AWS::EC2::EIP, AWS::EC2::Host, AWS::EC2::Instance, AWS::EC2::InternetGateway, AWS::EC2::NetworkAcl, AWS::EC2::NetworkInterface, AWS::EC2::RouteTable, AWS::EC2::SecurityGroup, AWS::EC2::Subnet, AWS::CloudTrail::Trail, AWS::EC2::Volume, AWS::EC2::VPC, AWS::EC2::VPNConnection, AWS::EC2::VPNGateway, AWS::IAM::Group, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, AWS::ACM::Certificate, AWS::RDS::DBInstance, AWS::RDS::DBSubnetGroup, AWS::RDS::DBSecurityGroup, AWS::RDS::DBSnapshot, AWS::RDS::EventSubscription, AWS::ElasticLoadBalancingV2::LoadBalancer, AWS::S3::Bucket, AWS::SSM::ManagedInstanceInventory, AWS::Redshift::Cluster, AWS::Redshift::ClusterSnapshot, AWS::Redshift::ClusterParameterGroup, AWS::Redshift::ClusterSecurityGroup, AWS::Redshift::ClusterSubnetGroup, AWS::Redshift::EventSubscription
1102
- # },
1103
- # },
1104
- # })
1105
- # @overload put_configuration_recorder(params = {})
1106
- # @param [Hash] params ({})
1107
- def put_configuration_recorder(params = {}, options = {})
1108
- req = build_request(:put_configuration_recorder, params)
1109
- req.send_request(options)
1110
- end
1098
+ # Adds or updates an AWS Config rule for evaluating whether your AWS
1099
+ # resources comply with your desired configurations.
1100
+ #
1101
+ # You can use this action for custom Config rules and AWS managed Config
1102
+ # rules. A custom Config rule is a rule that you develop and maintain.
1103
+ # An AWS managed Config rule is a customizable, predefined rule that AWS
1104
+ # Config provides.
1105
+ #
1106
+ # If you are adding a new custom Config rule, you must first create the
1107
+ # AWS Lambda function that the rule invokes to evaluate your resources.
1108
+ # When you use the `PutConfigRule` action to add the rule to AWS Config,
1109
+ # you must specify the Amazon Resource Name (ARN) that AWS Lambda
1110
+ # assigns to the function. Specify the ARN for the `SourceIdentifier`
1111
+ # key. This key is part of the `Source` object, which is part of the
1112
+ # `ConfigRule` object.
1113
+ #
1114
+ # If you are adding a new AWS managed Config rule, specify the rule's
1115
+ # identifier for the `SourceIdentifier` key. To reference AWS managed
1116
+ # Config rule identifiers, see [Using AWS Managed Config Rules][1].
1117
+ #
1118
+ # For any new rule that you add, specify the `ConfigRuleName` in the
1119
+ # `ConfigRule` object. Do not specify the `ConfigRuleArn` or the
1120
+ # `ConfigRuleId`. These values are generated by AWS Config for new
1121
+ # rules.
1122
+ #
1123
+ # If you are updating a rule that you added previously, you can specify
1124
+ # the rule by `ConfigRuleName`, `ConfigRuleId`, or `ConfigRuleArn` in
1125
+ # the `ConfigRule` data type that you use in this request.
1126
+ #
1127
+ # The maximum number of rules that AWS Config supports is 50.
1128
+ #
1129
+ # For more information about requesting a rule limit increase, see [AWS
1130
+ # Config Limits][2] in the *AWS General Reference Guide*.
1131
+ #
1132
+ # For more information about developing and using AWS Config rules, see
1133
+ # [Evaluating AWS Resource Configurations with AWS Config][3] in the
1134
+ # *AWS Config Developer Guide*.
1135
+ #
1136
+ #
1137
+ #
1138
+ # [1]: http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_use-managed-rules.html
1139
+ # [2]: http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_config
1140
+ # [3]: http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html
1141
+ #
1142
+ # @option params [required, Types::ConfigRule] :config_rule
1143
+ # An AWS Config rule represents an AWS Lambda function that you create
1144
+ # for a custom rule or a predefined function for an AWS managed rule.
1145
+ # The function evaluates configuration items to assess whether your AWS
1146
+ # resources comply with your desired configurations. This function can
1147
+ # run when AWS Config detects a configuration change to an AWS resource
1148
+ # and at a periodic frequency that you choose (for example, every 24
1149
+ # hours).
1150
+ #
1151
+ # <note markdown="1"> You can use the AWS CLI and AWS SDKs if you want to create a rule that
1152
+ # triggers evaluations for your resources when AWS Config delivers the
1153
+ # configuration snapshot. For more information, see
1154
+ # ConfigSnapshotDeliveryProperties.
1155
+ #
1156
+ # </note>
1157
+ #
1158
+ # For more information about developing and using AWS Config rules, see
1159
+ # [Evaluating AWS Resource Configurations with AWS Config][1] in the
1160
+ # *AWS Config Developer Guide*.
1161
+ #
1162
+ #
1163
+ #
1164
+ # [1]: http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html
1165
+ #
1166
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1167
+ #
1168
+ # @example Request syntax with placeholder values
1169
+ #
1170
+ # resp = client.put_config_rule({
1171
+ # config_rule: { # required
1172
+ # config_rule_name: "StringWithCharLimit64",
1173
+ # config_rule_arn: "String",
1174
+ # config_rule_id: "String",
1175
+ # description: "EmptiableStringWithCharLimit256",
1176
+ # scope: {
1177
+ # compliance_resource_types: ["StringWithCharLimit256"],
1178
+ # tag_key: "StringWithCharLimit128",
1179
+ # tag_value: "StringWithCharLimit256",
1180
+ # compliance_resource_id: "StringWithCharLimit256",
1181
+ # },
1182
+ # source: { # required
1183
+ # owner: "CUSTOM_LAMBDA", # required, accepts CUSTOM_LAMBDA, AWS
1184
+ # source_identifier: "StringWithCharLimit256", # required
1185
+ # source_details: [
1186
+ # {
1187
+ # event_source: "aws.config", # accepts aws.config
1188
+ # message_type: "ConfigurationItemChangeNotification", # accepts ConfigurationItemChangeNotification, ConfigurationSnapshotDeliveryCompleted, ScheduledNotification, OversizedConfigurationItemChangeNotification
1189
+ # maximum_execution_frequency: "One_Hour", # accepts One_Hour, Three_Hours, Six_Hours, Twelve_Hours, TwentyFour_Hours
1190
+ # },
1191
+ # ],
1192
+ # },
1193
+ # input_parameters: "StringWithCharLimit1024",
1194
+ # maximum_execution_frequency: "One_Hour", # accepts One_Hour, Three_Hours, Six_Hours, Twelve_Hours, TwentyFour_Hours
1195
+ # config_rule_state: "ACTIVE", # accepts ACTIVE, DELETING, DELETING_RESULTS, EVALUATING
1196
+ # },
1197
+ # })
1198
+ #
1199
+ # @overload put_config_rule(params = {})
1200
+ # @param [Hash] params ({})
1201
+ def put_config_rule(params = {}, options = {})
1202
+ req = build_request(:put_config_rule, params)
1203
+ req.send_request(options)
1204
+ end
1111
1205
 
1112
- # Creates a delivery channel object to deliver configuration information
1113
- # to an Amazon S3 bucket and Amazon SNS topic.
1114
- #
1115
- # Before you can create a delivery channel, you must create a
1116
- # configuration recorder.
1117
- #
1118
- # You can use this action to change the Amazon S3 bucket or an Amazon
1119
- # SNS topic of the existing delivery channel. To change the Amazon S3
1120
- # bucket or an Amazon SNS topic, call this action and specify the
1121
- # changed values for the S3 bucket and the SNS topic. If you specify a
1122
- # different value for either the S3 bucket or the SNS topic, this action
1123
- # will keep the existing value for the parameter that is not changed.
1124
- #
1125
- # <note markdown="1"> You can have only one delivery channel per region in your account.
1126
- #
1127
- # </note>
1128
- # @option params [required, Types::DeliveryChannel] :delivery_channel
1129
- # The configuration delivery channel object that delivers the
1130
- # configuration information to an Amazon S3 bucket, and to an Amazon SNS
1131
- # topic.
1132
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1133
- #
1134
- # @example Request syntax with placeholder values
1135
- # resp = client.put_delivery_channel({
1136
- # delivery_channel: { # required
1137
- # name: "ChannelName",
1138
- # s3_bucket_name: "String",
1139
- # s3_key_prefix: "String",
1140
- # sns_topic_arn: "String",
1141
- # config_snapshot_delivery_properties: {
1142
- # delivery_frequency: "One_Hour", # accepts One_Hour, Three_Hours, Six_Hours, Twelve_Hours, TwentyFour_Hours
1143
- # },
1144
- # },
1145
- # })
1146
- # @overload put_delivery_channel(params = {})
1147
- # @param [Hash] params ({})
1148
- def put_delivery_channel(params = {}, options = {})
1149
- req = build_request(:put_delivery_channel, params)
1150
- req.send_request(options)
1151
- end
1206
+ # Creates a new configuration recorder to record the selected resource
1207
+ # configurations.
1208
+ #
1209
+ # You can use this action to change the role `roleARN` and/or the
1210
+ # `recordingGroup` of an existing recorder. To change the role, call the
1211
+ # action on the existing configuration recorder and specify a role.
1212
+ #
1213
+ # <note markdown="1"> Currently, you can specify only one configuration recorder per region
1214
+ # in your account.
1215
+ #
1216
+ # If `ConfigurationRecorder` does not have the **recordingGroup**
1217
+ # parameter specified, the default is to record all supported resource
1218
+ # types.
1219
+ #
1220
+ # </note>
1221
+ #
1222
+ # @option params [required, Types::ConfigurationRecorder] :configuration_recorder
1223
+ # The configuration recorder object that records each configuration
1224
+ # change made to the resources.
1225
+ #
1226
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1227
+ #
1228
+ # @example Request syntax with placeholder values
1229
+ #
1230
+ # resp = client.put_configuration_recorder({
1231
+ # configuration_recorder: { # required
1232
+ # name: "RecorderName",
1233
+ # role_arn: "String",
1234
+ # recording_group: {
1235
+ # all_supported: false,
1236
+ # include_global_resource_types: false,
1237
+ # resource_types: ["AWS::EC2::CustomerGateway"], # accepts AWS::EC2::CustomerGateway, AWS::EC2::EIP, AWS::EC2::Host, AWS::EC2::Instance, AWS::EC2::InternetGateway, AWS::EC2::NetworkAcl, AWS::EC2::NetworkInterface, AWS::EC2::RouteTable, AWS::EC2::SecurityGroup, AWS::EC2::Subnet, AWS::CloudTrail::Trail, AWS::EC2::Volume, AWS::EC2::VPC, AWS::EC2::VPNConnection, AWS::EC2::VPNGateway, AWS::IAM::Group, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, AWS::ACM::Certificate, AWS::RDS::DBInstance, AWS::RDS::DBSubnetGroup, AWS::RDS::DBSecurityGroup, AWS::RDS::DBSnapshot, AWS::RDS::EventSubscription, AWS::ElasticLoadBalancingV2::LoadBalancer, AWS::S3::Bucket, AWS::SSM::ManagedInstanceInventory, AWS::Redshift::Cluster, AWS::Redshift::ClusterSnapshot, AWS::Redshift::ClusterParameterGroup, AWS::Redshift::ClusterSecurityGroup, AWS::Redshift::ClusterSubnetGroup, AWS::Redshift::EventSubscription
1238
+ # },
1239
+ # },
1240
+ # })
1241
+ #
1242
+ # @overload put_configuration_recorder(params = {})
1243
+ # @param [Hash] params ({})
1244
+ def put_configuration_recorder(params = {}, options = {})
1245
+ req = build_request(:put_configuration_recorder, params)
1246
+ req.send_request(options)
1247
+ end
1152
1248
 
1153
- # Used by an AWS Lambda function to deliver evaluation results to AWS
1154
- # Config. This action is required in every AWS Lambda function that is
1155
- # invoked by an AWS Config rule.
1156
- # @option params [Array<Types::Evaluation>] :evaluations
1157
- # The assessments that the AWS Lambda function performs. Each evaluation
1158
- # identifies an AWS resource and indicates whether it complies with the
1159
- # AWS Config rule that invokes the AWS Lambda function.
1160
- # @option params [required, String] :result_token
1161
- # An encrypted token that associates an evaluation with an AWS Config
1162
- # rule. Identifies the rule and the event that triggered the evaluation
1163
- # @return [Types::PutEvaluationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1164
- #
1165
- # * {Types::PutEvaluationsResponse#failed_evaluations #FailedEvaluations} => Array&lt;Types::Evaluation&gt;
1166
- #
1167
- # @example Request syntax with placeholder values
1168
- # resp = client.put_evaluations({
1169
- # evaluations: [
1170
- # {
1171
- # compliance_resource_type: "StringWithCharLimit256", # required
1172
- # compliance_resource_id: "StringWithCharLimit256", # required
1173
- # compliance_type: "COMPLIANT", # required, accepts COMPLIANT, NON_COMPLIANT, NOT_APPLICABLE, INSUFFICIENT_DATA
1174
- # annotation: "StringWithCharLimit256",
1175
- # ordering_timestamp: Time.now, # required
1176
- # },
1177
- # ],
1178
- # result_token: "String", # required
1179
- # })
1180
- #
1181
- # @example Response structure
1182
- # resp.failed_evaluations #=> Array
1183
- # resp.failed_evaluations[0].compliance_resource_type #=> String
1184
- # resp.failed_evaluations[0].compliance_resource_id #=> String
1185
- # resp.failed_evaluations[0].compliance_type #=> String, one of "COMPLIANT", "NON_COMPLIANT", "NOT_APPLICABLE", "INSUFFICIENT_DATA"
1186
- # resp.failed_evaluations[0].annotation #=> String
1187
- # resp.failed_evaluations[0].ordering_timestamp #=> Time
1188
- # @overload put_evaluations(params = {})
1189
- # @param [Hash] params ({})
1190
- def put_evaluations(params = {}, options = {})
1191
- req = build_request(:put_evaluations, params)
1192
- req.send_request(options)
1193
- end
1249
+ # Creates a delivery channel object to deliver configuration information
1250
+ # to an Amazon S3 bucket and Amazon SNS topic.
1251
+ #
1252
+ # Before you can create a delivery channel, you must create a
1253
+ # configuration recorder.
1254
+ #
1255
+ # You can use this action to change the Amazon S3 bucket or an Amazon
1256
+ # SNS topic of the existing delivery channel. To change the Amazon S3
1257
+ # bucket or an Amazon SNS topic, call this action and specify the
1258
+ # changed values for the S3 bucket and the SNS topic. If you specify a
1259
+ # different value for either the S3 bucket or the SNS topic, this action
1260
+ # will keep the existing value for the parameter that is not changed.
1261
+ #
1262
+ # <note markdown="1"> You can have only one delivery channel per region in your account.
1263
+ #
1264
+ # </note>
1265
+ #
1266
+ # @option params [required, Types::DeliveryChannel] :delivery_channel
1267
+ # The configuration delivery channel object that delivers the
1268
+ # configuration information to an Amazon S3 bucket, and to an Amazon SNS
1269
+ # topic.
1270
+ #
1271
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1272
+ #
1273
+ # @example Request syntax with placeholder values
1274
+ #
1275
+ # resp = client.put_delivery_channel({
1276
+ # delivery_channel: { # required
1277
+ # name: "ChannelName",
1278
+ # s3_bucket_name: "String",
1279
+ # s3_key_prefix: "String",
1280
+ # sns_topic_arn: "String",
1281
+ # config_snapshot_delivery_properties: {
1282
+ # delivery_frequency: "One_Hour", # accepts One_Hour, Three_Hours, Six_Hours, Twelve_Hours, TwentyFour_Hours
1283
+ # },
1284
+ # },
1285
+ # })
1286
+ #
1287
+ # @overload put_delivery_channel(params = {})
1288
+ # @param [Hash] params ({})
1289
+ def put_delivery_channel(params = {}, options = {})
1290
+ req = build_request(:put_delivery_channel, params)
1291
+ req.send_request(options)
1292
+ end
1194
1293
 
1195
- # Runs an on-demand evaluation for the specified Config rules against
1196
- # the last known configuration state of the resources. Use
1197
- # `StartConfigRulesEvaluation` when you want to test a rule that you
1198
- # updated is working as expected. `StartConfigRulesEvaluation` does not
1199
- # re-record the latest configuration state for your resources; it
1200
- # re-runs an evaluation against the last known state of your resources.
1201
- #
1202
- # You can specify up to 25 Config rules per request.
1203
- #
1204
- # An existing `StartConfigRulesEvaluation` call must complete for the
1205
- # specified rules before you can call the API again. If you chose to
1206
- # have AWS Config stream to an Amazon SNS topic, you will receive a
1207
- # `ConfigRuleEvaluationStarted` notification when the evaluation starts.
1208
- #
1209
- # <note markdown="1"> You don't need to call the `StartConfigRulesEvaluation` API to run an
1210
- # evaluation for a new rule. When you create a new rule, AWS Config
1211
- # automatically evaluates your resources against the rule.
1212
- #
1213
- # </note>
1214
- #
1215
- # The `StartConfigRulesEvaluation` API is useful if you want to run
1216
- # on-demand evaluations, such as the following example:
1217
- #
1218
- # 1. You have a custom rule that evaluates your IAM resources every 24
1219
- # hours.
1220
- #
1221
- # 2. You update your Lambda function to add additional conditions to
1222
- # your rule.
1223
- #
1224
- # 3. Instead of waiting for the next periodic evaluation, you call the
1225
- # `StartConfigRulesEvaluation` API.
1226
- #
1227
- # 4. AWS Config invokes your Lambda function and evaluates your IAM
1228
- # resources.
1229
- #
1230
- # 5. Your custom rule will still run periodic evaluations every 24
1231
- # hours.
1232
- # @option params [Array<String>] :config_rule_names
1233
- # The list of names of Config rules that you want to run evaluations
1234
- # for.
1235
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1236
- #
1237
- # @example Request syntax with placeholder values
1238
- # resp = client.start_config_rules_evaluation({
1239
- # config_rule_names: ["StringWithCharLimit64"],
1240
- # })
1241
- # @overload start_config_rules_evaluation(params = {})
1242
- # @param [Hash] params ({})
1243
- def start_config_rules_evaluation(params = {}, options = {})
1244
- req = build_request(:start_config_rules_evaluation, params)
1245
- req.send_request(options)
1246
- end
1294
+ # Used by an AWS Lambda function to deliver evaluation results to AWS
1295
+ # Config. This action is required in every AWS Lambda function that is
1296
+ # invoked by an AWS Config rule.
1297
+ #
1298
+ # @option params [Array<Types::Evaluation>] :evaluations
1299
+ # The assessments that the AWS Lambda function performs. Each evaluation
1300
+ # identifies an AWS resource and indicates whether it complies with the
1301
+ # AWS Config rule that invokes the AWS Lambda function.
1302
+ #
1303
+ # @option params [required, String] :result_token
1304
+ # An encrypted token that associates an evaluation with an AWS Config
1305
+ # rule. Identifies the rule and the event that triggered the evaluation
1306
+ #
1307
+ # @return [Types::PutEvaluationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1308
+ #
1309
+ # * {Types::PutEvaluationsResponse#failed_evaluations #failed_evaluations} => Array&lt;Types::Evaluation&gt;
1310
+ #
1311
+ # @example Request syntax with placeholder values
1312
+ #
1313
+ # resp = client.put_evaluations({
1314
+ # evaluations: [
1315
+ # {
1316
+ # compliance_resource_type: "StringWithCharLimit256", # required
1317
+ # compliance_resource_id: "StringWithCharLimit256", # required
1318
+ # compliance_type: "COMPLIANT", # required, accepts COMPLIANT, NON_COMPLIANT, NOT_APPLICABLE, INSUFFICIENT_DATA
1319
+ # annotation: "StringWithCharLimit256",
1320
+ # ordering_timestamp: Time.now, # required
1321
+ # },
1322
+ # ],
1323
+ # result_token: "String", # required
1324
+ # })
1325
+ #
1326
+ # @example Response structure
1327
+ #
1328
+ # resp.failed_evaluations #=> Array
1329
+ # resp.failed_evaluations[0].compliance_resource_type #=> String
1330
+ # resp.failed_evaluations[0].compliance_resource_id #=> String
1331
+ # resp.failed_evaluations[0].compliance_type #=> String, one of "COMPLIANT", "NON_COMPLIANT", "NOT_APPLICABLE", "INSUFFICIENT_DATA"
1332
+ # resp.failed_evaluations[0].annotation #=> String
1333
+ # resp.failed_evaluations[0].ordering_timestamp #=> Time
1334
+ #
1335
+ # @overload put_evaluations(params = {})
1336
+ # @param [Hash] params ({})
1337
+ def put_evaluations(params = {}, options = {})
1338
+ req = build_request(:put_evaluations, params)
1339
+ req.send_request(options)
1340
+ end
1247
1341
 
1248
- # Starts recording configurations of the AWS resources you have selected
1249
- # to record in your AWS account.
1250
- #
1251
- # You must have created at least one delivery channel to successfully
1252
- # start the configuration recorder.
1253
- # @option params [required, String] :configuration_recorder_name
1254
- # The name of the recorder object that records each configuration change
1255
- # made to the resources.
1256
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1257
- #
1258
- # @example Request syntax with placeholder values
1259
- # resp = client.start_configuration_recorder({
1260
- # configuration_recorder_name: "RecorderName", # required
1261
- # })
1262
- # @overload start_configuration_recorder(params = {})
1263
- # @param [Hash] params ({})
1264
- def start_configuration_recorder(params = {}, options = {})
1265
- req = build_request(:start_configuration_recorder, params)
1266
- req.send_request(options)
1267
- end
1342
+ # Runs an on-demand evaluation for the specified Config rules against
1343
+ # the last known configuration state of the resources. Use
1344
+ # `StartConfigRulesEvaluation` when you want to test a rule that you
1345
+ # updated is working as expected. `StartConfigRulesEvaluation` does not
1346
+ # re-record the latest configuration state for your resources; it
1347
+ # re-runs an evaluation against the last known state of your resources.
1348
+ #
1349
+ # You can specify up to 25 Config rules per request.
1350
+ #
1351
+ # An existing `StartConfigRulesEvaluation` call must complete for the
1352
+ # specified rules before you can call the API again. If you chose to
1353
+ # have AWS Config stream to an Amazon SNS topic, you will receive a
1354
+ # `ConfigRuleEvaluationStarted` notification when the evaluation starts.
1355
+ #
1356
+ # <note markdown="1"> You don't need to call the `StartConfigRulesEvaluation` API to run an
1357
+ # evaluation for a new rule. When you create a new rule, AWS Config
1358
+ # automatically evaluates your resources against the rule.
1359
+ #
1360
+ # </note>
1361
+ #
1362
+ # The `StartConfigRulesEvaluation` API is useful if you want to run
1363
+ # on-demand evaluations, such as the following example:
1364
+ #
1365
+ # 1. You have a custom rule that evaluates your IAM resources every 24
1366
+ # hours.
1367
+ #
1368
+ # 2. You update your Lambda function to add additional conditions to
1369
+ # your rule.
1370
+ #
1371
+ # 3. Instead of waiting for the next periodic evaluation, you call the
1372
+ # `StartConfigRulesEvaluation` API.
1373
+ #
1374
+ # 4. AWS Config invokes your Lambda function and evaluates your IAM
1375
+ # resources.
1376
+ #
1377
+ # 5. Your custom rule will still run periodic evaluations every 24
1378
+ # hours.
1379
+ #
1380
+ # @option params [Array<String>] :config_rule_names
1381
+ # The list of names of Config rules that you want to run evaluations
1382
+ # for.
1383
+ #
1384
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1385
+ #
1386
+ # @example Request syntax with placeholder values
1387
+ #
1388
+ # resp = client.start_config_rules_evaluation({
1389
+ # config_rule_names: ["StringWithCharLimit64"],
1390
+ # })
1391
+ #
1392
+ # @overload start_config_rules_evaluation(params = {})
1393
+ # @param [Hash] params ({})
1394
+ def start_config_rules_evaluation(params = {}, options = {})
1395
+ req = build_request(:start_config_rules_evaluation, params)
1396
+ req.send_request(options)
1397
+ end
1268
1398
 
1269
- # Stops recording configurations of the AWS resources you have selected
1270
- # to record in your AWS account.
1271
- # @option params [required, String] :configuration_recorder_name
1272
- # The name of the recorder object that records each configuration change
1273
- # made to the resources.
1274
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1275
- #
1276
- # @example Request syntax with placeholder values
1277
- # resp = client.stop_configuration_recorder({
1278
- # configuration_recorder_name: "RecorderName", # required
1279
- # })
1280
- # @overload stop_configuration_recorder(params = {})
1281
- # @param [Hash] params ({})
1282
- def stop_configuration_recorder(params = {}, options = {})
1283
- req = build_request(:stop_configuration_recorder, params)
1284
- req.send_request(options)
1285
- end
1399
+ # Starts recording configurations of the AWS resources you have selected
1400
+ # to record in your AWS account.
1401
+ #
1402
+ # You must have created at least one delivery channel to successfully
1403
+ # start the configuration recorder.
1404
+ #
1405
+ # @option params [required, String] :configuration_recorder_name
1406
+ # The name of the recorder object that records each configuration change
1407
+ # made to the resources.
1408
+ #
1409
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1410
+ #
1411
+ # @example Request syntax with placeholder values
1412
+ #
1413
+ # resp = client.start_configuration_recorder({
1414
+ # configuration_recorder_name: "RecorderName", # required
1415
+ # })
1416
+ #
1417
+ # @overload start_configuration_recorder(params = {})
1418
+ # @param [Hash] params ({})
1419
+ def start_configuration_recorder(params = {}, options = {})
1420
+ req = build_request(:start_configuration_recorder, params)
1421
+ req.send_request(options)
1422
+ end
1286
1423
 
1287
- # @!endgroup
1424
+ # Stops recording configurations of the AWS resources you have selected
1425
+ # to record in your AWS account.
1426
+ #
1427
+ # @option params [required, String] :configuration_recorder_name
1428
+ # The name of the recorder object that records each configuration change
1429
+ # made to the resources.
1430
+ #
1431
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1432
+ #
1433
+ # @example Request syntax with placeholder values
1434
+ #
1435
+ # resp = client.stop_configuration_recorder({
1436
+ # configuration_recorder_name: "RecorderName", # required
1437
+ # })
1438
+ #
1439
+ # @overload stop_configuration_recorder(params = {})
1440
+ # @param [Hash] params ({})
1441
+ def stop_configuration_recorder(params = {}, options = {})
1442
+ req = build_request(:stop_configuration_recorder, params)
1443
+ req.send_request(options)
1444
+ end
1288
1445
 
1289
- # @param params ({})
1290
- # @api private
1291
- def build_request(operation_name, params = {})
1292
- handlers = @handlers.for(operation_name)
1293
- context = Seahorse::Client::RequestContext.new(
1294
- operation_name: operation_name,
1295
- operation: config.api.operation(operation_name),
1296
- client: self,
1297
- params: params,
1298
- config: config)
1299
- context[:gem_name] = 'aws-sdk-configservice'
1300
- context[:gem_version] = '1.0.0.rc2'
1301
- Seahorse::Client::Request.new(handlers, context)
1302
- end
1446
+ # @!endgroup
1303
1447
 
1304
- # @api private
1305
- # @deprecated
1306
- def waiter_names
1307
- []
1308
- end
1448
+ # @param params ({})
1449
+ # @api private
1450
+ def build_request(operation_name, params = {})
1451
+ handlers = @handlers.for(operation_name)
1452
+ context = Seahorse::Client::RequestContext.new(
1453
+ operation_name: operation_name,
1454
+ operation: config.api.operation(operation_name),
1455
+ client: self,
1456
+ params: params,
1457
+ config: config)
1458
+ context[:gem_name] = 'aws-sdk-configservice'
1459
+ context[:gem_version] = '1.0.0.rc2'
1460
+ Seahorse::Client::Request.new(handlers, context)
1461
+ end
1309
1462
 
1310
- class << self
1463
+ # @api private
1464
+ # @deprecated
1465
+ def waiter_names
1466
+ []
1467
+ end
1311
1468
 
1312
- # @api private
1313
- attr_reader :identifier
1469
+ class << self
1314
1470
 
1315
- # @api private
1316
- def errors_module
1317
- Errors
1318
- end
1471
+ # @api private
1472
+ attr_reader :identifier
1319
1473
 
1474
+ # @api private
1475
+ def errors_module
1476
+ Errors
1320
1477
  end
1478
+
1321
1479
  end
1322
1480
  end
1323
1481
  end