aws-sdk-cloudtrail 1.0.0.rc1 → 1.0.0.rc2

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: d31a62a1e412dbbfcacdea26d4663befd1c2d3db
4
- data.tar.gz: bf1e7d871ced7c0f06cead28446daff9ba3c9255
3
+ metadata.gz: f4f870ac3f116952ae21e32b33cd141dec97dd4a
4
+ data.tar.gz: 4dcc736b491e565474e8cf6aefcdd52e5f41b46a
5
5
  SHA512:
6
- metadata.gz: 3e3aec4e0b328980e50742548f50e8ccceb8306843af3f7ae2ca45b36de65e93c9c93784f36ee5002baee0382efc698d2ce33bc2813dbe015b32127ae019b0a4
7
- data.tar.gz: 15112b32f13be71584d874fbcec51c8feed9c81c6d29fc982342c4bf86095a5503341064ee511c76560dc65e2f81bb713de20e079aca15204440cbd030d59533
6
+ metadata.gz: 4fb1348604584289380867f8d59d96d401a984e4c6fff8fe0fc8c7f5cabbd971beedb9b8ef6e5a3646da5fece98587019143fddc2dbeccf48d7ab8e138448d12
7
+ data.tar.gz: 93b5e3f1c77cba2849294b9f4ca633135749ae287dba21f2d6f0e31a2b97053ec1dbe879b0df47c0e5e730679c4604eef66075eca3dff08453997dbe5829af1b
@@ -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,1004 +23,1111 @@ require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
23
23
 
24
24
  Aws::Plugins::GlobalConfiguration.add_identifier(:cloudtrail)
25
25
 
26
- module Aws
27
- module CloudTrail
28
- class Client < Seahorse::Client::Base
26
+ module Aws::CloudTrail
27
+ class Client < Seahorse::Client::Base
29
28
 
30
- include Aws::ClientStubs
29
+ include Aws::ClientStubs
31
30
 
32
- @identifier = :cloudtrail
31
+ @identifier = :cloudtrail
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
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
139
153
 
140
- # @!group API Operations
154
+ # @!group API Operations
141
155
 
142
- # Adds one or more tags to a trail, up to a limit of 50. Tags must be
143
- # unique per trail. Overwrites an existing tag's value when a new value
144
- # is specified for an existing tag key. If you specify a key without a
145
- # value, the tag will be created with the specified key and a value of
146
- # null. You can tag a trail that applies to all regions only from the
147
- # region in which the trail was created (that is, from its home region).
148
- # @option params [required, String] :resource_id
149
- # Specifies the ARN of the trail to which one or more tags will be
150
- # added. The format of a trail ARN is:
151
- #
152
- # `arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail`
153
- # @option params [Array<Types::Tag>] :tags_list
154
- # Contains a list of CloudTrail tags, up to a limit of 50
155
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
156
- #
157
- # @example Request syntax with placeholder values
158
- # resp = client.add_tags({
159
- # resource_id: "String", # required
160
- # tags_list: [
161
- # {
162
- # key: "String", # required
163
- # value: "String",
164
- # },
165
- # ],
166
- # })
167
- # @overload add_tags(params = {})
168
- # @param [Hash] params ({})
169
- def add_tags(params = {}, options = {})
170
- req = build_request(:add_tags, params)
171
- req.send_request(options)
172
- end
173
-
174
- # Creates a trail that specifies the settings for delivery of log data
175
- # to an Amazon S3 bucket. A maximum of five trails can exist in a
176
- # region, irrespective of the region in which they were created.
177
- # @option params [required, String] :name
178
- # Specifies the name of the trail. The name must meet the following
179
- # requirements:
180
- #
181
- # * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.),
182
- # underscores (\_), or dashes (-)
183
- #
184
- # * Start with a letter or number, and end with a letter or number
185
- #
186
- # * Be between 3 and 128 characters
187
- #
188
- # * Have no adjacent periods, underscores or dashes. Names like
189
- # `my-_namespace` and `my--namespace` are invalid.
190
- #
191
- # * Not be in IP address format (for example, 192.168.5.4)
192
- # @option params [required, String] :s3_bucket_name
193
- # Specifies the name of the Amazon S3 bucket designated for publishing
194
- # log files. See [Amazon S3 Bucket Naming Requirements][1].
195
- #
196
- #
197
- #
198
- # [1]: http://docs.aws.amazon.com/awscloudtrail/latest/userguide/create_trail_naming_policy.html
199
- # @option params [String] :s3_key_prefix
200
- # Specifies the Amazon S3 key prefix that comes after the name of the
201
- # bucket you have designated for log file delivery. For more
202
- # information, see [Finding Your CloudTrail Log Files][1]. The maximum
203
- # length is 200 characters.
204
- #
205
- #
206
- #
207
- # [1]: http://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-find-log-files.html
208
- # @option params [String] :sns_topic_name
209
- # Specifies the name of the Amazon SNS topic defined for notification of
210
- # log file delivery. The maximum length is 256 characters.
211
- # @option params [Boolean] :include_global_service_events
212
- # Specifies whether the trail is publishing events from global services
213
- # such as IAM to the log files.
214
- # @option params [Boolean] :is_multi_region_trail
215
- # Specifies whether the trail is created in the current region or in all
216
- # regions. The default is false.
217
- # @option params [Boolean] :enable_log_file_validation
218
- # Specifies whether log file integrity validation is enabled. The
219
- # default is false.
220
- #
221
- # <note markdown="1"> When you disable log file integrity validation, the chain of digest
222
- # files is broken after one hour. CloudTrail will not create digest
223
- # files for log files that were delivered during a period in which log
224
- # file integrity validation was disabled. For example, if you enable log
225
- # file integrity validation at noon on January 1, disable it at noon on
226
- # January 2, and re-enable it at noon on January 10, digest files will
227
- # not be created for the log files delivered from noon on January 2 to
228
- # noon on January 10. The same applies whenever you stop CloudTrail
229
- # logging or delete a trail.
230
- #
231
- # </note>
232
- # @option params [String] :cloud_watch_logs_log_group_arn
233
- # Specifies a log group name using an Amazon Resource Name (ARN), a
234
- # unique identifier that represents the log group to which CloudTrail
235
- # logs will be delivered. Not required unless you specify
236
- # CloudWatchLogsRoleArn.
237
- # @option params [String] :cloud_watch_logs_role_arn
238
- # Specifies the role for the CloudWatch Logs endpoint to assume to write
239
- # to a user's log group.
240
- # @option params [String] :kms_key_id
241
- # Specifies the KMS key ID to use to encrypt the logs delivered by
242
- # CloudTrail. The value can be a an alias name prefixed by "alias/", a
243
- # fully specified ARN to an alias, a fully specified ARN to a key, or a
244
- # globally unique identifier.
245
- #
246
- # Examples:
247
- #
248
- # * alias/MyAliasName
249
- #
250
- # * arn:aws:kms:us-east-1:123456789012:alias/MyAliasName
251
- #
252
- # * arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
253
- #
254
- # * 12345678-1234-1234-1234-123456789012
255
- # @return [Types::CreateTrailResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
256
- #
257
- # * {Types::CreateTrailResponse#name #Name} => String
258
- # * {Types::CreateTrailResponse#s3_bucket_name #S3BucketName} => String
259
- # * {Types::CreateTrailResponse#s3_key_prefix #S3KeyPrefix} => String
260
- # * {Types::CreateTrailResponse#sns_topic_name #SnsTopicName} => String
261
- # * {Types::CreateTrailResponse#sns_topic_arn #SnsTopicARN} => String
262
- # * {Types::CreateTrailResponse#include_global_service_events #IncludeGlobalServiceEvents} => Boolean
263
- # * {Types::CreateTrailResponse#is_multi_region_trail #IsMultiRegionTrail} => Boolean
264
- # * {Types::CreateTrailResponse#trail_arn #TrailARN} => String
265
- # * {Types::CreateTrailResponse#log_file_validation_enabled #LogFileValidationEnabled} => Boolean
266
- # * {Types::CreateTrailResponse#cloud_watch_logs_log_group_arn #CloudWatchLogsLogGroupArn} => String
267
- # * {Types::CreateTrailResponse#cloud_watch_logs_role_arn #CloudWatchLogsRoleArn} => String
268
- # * {Types::CreateTrailResponse#kms_key_id #KmsKeyId} => String
269
- #
270
- # @example Request syntax with placeholder values
271
- # resp = client.create_trail({
272
- # name: "String", # required
273
- # s3_bucket_name: "String", # required
274
- # s3_key_prefix: "String",
275
- # sns_topic_name: "String",
276
- # include_global_service_events: false,
277
- # is_multi_region_trail: false,
278
- # enable_log_file_validation: false,
279
- # cloud_watch_logs_log_group_arn: "String",
280
- # cloud_watch_logs_role_arn: "String",
281
- # kms_key_id: "String",
282
- # })
283
- #
284
- # @example Response structure
285
- # resp.name #=> String
286
- # resp.s3_bucket_name #=> String
287
- # resp.s3_key_prefix #=> String
288
- # resp.sns_topic_name #=> String
289
- # resp.sns_topic_arn #=> String
290
- # resp.include_global_service_events #=> Boolean
291
- # resp.is_multi_region_trail #=> Boolean
292
- # resp.trail_arn #=> String
293
- # resp.log_file_validation_enabled #=> Boolean
294
- # resp.cloud_watch_logs_log_group_arn #=> String
295
- # resp.cloud_watch_logs_role_arn #=> String
296
- # resp.kms_key_id #=> String
297
- # @overload create_trail(params = {})
298
- # @param [Hash] params ({})
299
- def create_trail(params = {}, options = {})
300
- req = build_request(:create_trail, params)
301
- req.send_request(options)
302
- end
156
+ # Adds one or more tags to a trail, up to a limit of 50. Tags must be
157
+ # unique per trail. Overwrites an existing tag's value when a new value
158
+ # is specified for an existing tag key. If you specify a key without a
159
+ # value, the tag will be created with the specified key and a value of
160
+ # null. You can tag a trail that applies to all regions only from the
161
+ # region in which the trail was created (that is, from its home region).
162
+ #
163
+ # @option params [required, String] :resource_id
164
+ # Specifies the ARN of the trail to which one or more tags will be
165
+ # added. The format of a trail ARN is:
166
+ #
167
+ # `arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail`
168
+ #
169
+ # @option params [Array<Types::Tag>] :tags_list
170
+ # Contains a list of CloudTrail tags, up to a limit of 50
171
+ #
172
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
173
+ #
174
+ # @example Request syntax with placeholder values
175
+ #
176
+ # resp = client.add_tags({
177
+ # resource_id: "String", # required
178
+ # tags_list: [
179
+ # {
180
+ # key: "String", # required
181
+ # value: "String",
182
+ # },
183
+ # ],
184
+ # })
185
+ #
186
+ # @overload add_tags(params = {})
187
+ # @param [Hash] params ({})
188
+ def add_tags(params = {}, options = {})
189
+ req = build_request(:add_tags, params)
190
+ req.send_request(options)
191
+ end
303
192
 
304
- # Deletes a trail. This operation must be called from the region in
305
- # which the trail was created. `DeleteTrail` cannot be called on the
306
- # shadow trails (replicated trails in other regions) of a trail that is
307
- # enabled in all regions.
308
- # @option params [required, String] :name
309
- # Specifies the name or the CloudTrail ARN of the trail to be deleted.
310
- # The format of a trail ARN is:
311
- # `arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail`
312
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
313
- #
314
- # @example Request syntax with placeholder values
315
- # resp = client.delete_trail({
316
- # name: "String", # required
317
- # })
318
- # @overload delete_trail(params = {})
319
- # @param [Hash] params ({})
320
- def delete_trail(params = {}, options = {})
321
- req = build_request(:delete_trail, params)
322
- req.send_request(options)
323
- end
193
+ # Creates a trail that specifies the settings for delivery of log data
194
+ # to an Amazon S3 bucket. A maximum of five trails can exist in a
195
+ # region, irrespective of the region in which they were created.
196
+ #
197
+ # @option params [required, String] :name
198
+ # Specifies the name of the trail. The name must meet the following
199
+ # requirements:
200
+ #
201
+ # * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.),
202
+ # underscores (\_), or dashes (-)
203
+ #
204
+ # * Start with a letter or number, and end with a letter or number
205
+ #
206
+ # * Be between 3 and 128 characters
207
+ #
208
+ # * Have no adjacent periods, underscores or dashes. Names like
209
+ # `my-_namespace` and `my--namespace` are invalid.
210
+ #
211
+ # * Not be in IP address format (for example, 192.168.5.4)
212
+ #
213
+ # @option params [required, String] :s3_bucket_name
214
+ # Specifies the name of the Amazon S3 bucket designated for publishing
215
+ # log files. See [Amazon S3 Bucket Naming Requirements][1].
216
+ #
217
+ #
218
+ #
219
+ # [1]: http://docs.aws.amazon.com/awscloudtrail/latest/userguide/create_trail_naming_policy.html
220
+ #
221
+ # @option params [String] :s3_key_prefix
222
+ # Specifies the Amazon S3 key prefix that comes after the name of the
223
+ # bucket you have designated for log file delivery. For more
224
+ # information, see [Finding Your CloudTrail Log Files][1]. The maximum
225
+ # length is 200 characters.
226
+ #
227
+ #
228
+ #
229
+ # [1]: http://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-find-log-files.html
230
+ #
231
+ # @option params [String] :sns_topic_name
232
+ # Specifies the name of the Amazon SNS topic defined for notification of
233
+ # log file delivery. The maximum length is 256 characters.
234
+ #
235
+ # @option params [Boolean] :include_global_service_events
236
+ # Specifies whether the trail is publishing events from global services
237
+ # such as IAM to the log files.
238
+ #
239
+ # @option params [Boolean] :is_multi_region_trail
240
+ # Specifies whether the trail is created in the current region or in all
241
+ # regions. The default is false.
242
+ #
243
+ # @option params [Boolean] :enable_log_file_validation
244
+ # Specifies whether log file integrity validation is enabled. The
245
+ # default is false.
246
+ #
247
+ # <note markdown="1"> When you disable log file integrity validation, the chain of digest
248
+ # files is broken after one hour. CloudTrail will not create digest
249
+ # files for log files that were delivered during a period in which log
250
+ # file integrity validation was disabled. For example, if you enable log
251
+ # file integrity validation at noon on January 1, disable it at noon on
252
+ # January 2, and re-enable it at noon on January 10, digest files will
253
+ # not be created for the log files delivered from noon on January 2 to
254
+ # noon on January 10. The same applies whenever you stop CloudTrail
255
+ # logging or delete a trail.
256
+ #
257
+ # </note>
258
+ #
259
+ # @option params [String] :cloud_watch_logs_log_group_arn
260
+ # Specifies a log group name using an Amazon Resource Name (ARN), a
261
+ # unique identifier that represents the log group to which CloudTrail
262
+ # logs will be delivered. Not required unless you specify
263
+ # CloudWatchLogsRoleArn.
264
+ #
265
+ # @option params [String] :cloud_watch_logs_role_arn
266
+ # Specifies the role for the CloudWatch Logs endpoint to assume to write
267
+ # to a user's log group.
268
+ #
269
+ # @option params [String] :kms_key_id
270
+ # Specifies the KMS key ID to use to encrypt the logs delivered by
271
+ # CloudTrail. The value can be a an alias name prefixed by "alias/", a
272
+ # fully specified ARN to an alias, a fully specified ARN to a key, or a
273
+ # globally unique identifier.
274
+ #
275
+ # Examples:
276
+ #
277
+ # * alias/MyAliasName
278
+ #
279
+ # * arn:aws:kms:us-east-1:123456789012:alias/MyAliasName
280
+ #
281
+ # * arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
282
+ #
283
+ # * 12345678-1234-1234-1234-123456789012
284
+ #
285
+ # @return [Types::CreateTrailResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
286
+ #
287
+ # * {Types::CreateTrailResponse#name #name} => String
288
+ # * {Types::CreateTrailResponse#s3_bucket_name #s3_bucket_name} => String
289
+ # * {Types::CreateTrailResponse#s3_key_prefix #s3_key_prefix} => String
290
+ # * {Types::CreateTrailResponse#sns_topic_name #sns_topic_name} => String
291
+ # * {Types::CreateTrailResponse#sns_topic_arn #sns_topic_arn} => String
292
+ # * {Types::CreateTrailResponse#include_global_service_events #include_global_service_events} => Boolean
293
+ # * {Types::CreateTrailResponse#is_multi_region_trail #is_multi_region_trail} => Boolean
294
+ # * {Types::CreateTrailResponse#trail_arn #trail_arn} => String
295
+ # * {Types::CreateTrailResponse#log_file_validation_enabled #log_file_validation_enabled} => Boolean
296
+ # * {Types::CreateTrailResponse#cloud_watch_logs_log_group_arn #cloud_watch_logs_log_group_arn} => String
297
+ # * {Types::CreateTrailResponse#cloud_watch_logs_role_arn #cloud_watch_logs_role_arn} => String
298
+ # * {Types::CreateTrailResponse#kms_key_id #kms_key_id} => String
299
+ #
300
+ # @example Request syntax with placeholder values
301
+ #
302
+ # resp = client.create_trail({
303
+ # name: "String", # required
304
+ # s3_bucket_name: "String", # required
305
+ # s3_key_prefix: "String",
306
+ # sns_topic_name: "String",
307
+ # include_global_service_events: false,
308
+ # is_multi_region_trail: false,
309
+ # enable_log_file_validation: false,
310
+ # cloud_watch_logs_log_group_arn: "String",
311
+ # cloud_watch_logs_role_arn: "String",
312
+ # kms_key_id: "String",
313
+ # })
314
+ #
315
+ # @example Response structure
316
+ #
317
+ # resp.name #=> String
318
+ # resp.s3_bucket_name #=> String
319
+ # resp.s3_key_prefix #=> String
320
+ # resp.sns_topic_name #=> String
321
+ # resp.sns_topic_arn #=> String
322
+ # resp.include_global_service_events #=> Boolean
323
+ # resp.is_multi_region_trail #=> Boolean
324
+ # resp.trail_arn #=> String
325
+ # resp.log_file_validation_enabled #=> Boolean
326
+ # resp.cloud_watch_logs_log_group_arn #=> String
327
+ # resp.cloud_watch_logs_role_arn #=> String
328
+ # resp.kms_key_id #=> String
329
+ #
330
+ # @overload create_trail(params = {})
331
+ # @param [Hash] params ({})
332
+ def create_trail(params = {}, options = {})
333
+ req = build_request(:create_trail, params)
334
+ req.send_request(options)
335
+ end
324
336
 
325
- # Retrieves settings for the trail associated with the current region
326
- # for your account.
327
- # @option params [Array<String>] :trail_name_list
328
- # Specifies a list of trail names, trail ARNs, or both, of the trails to
329
- # describe. The format of a trail ARN is:
330
- #
331
- # `arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail`
332
- #
333
- # If an empty list is specified, information for the trail in the
334
- # current region is returned.
335
- #
336
- # * If an empty list is specified and `IncludeShadowTrails` is false,
337
- # then information for all trails in the current region is returned.
338
- #
339
- # * If an empty list is specified and IncludeShadowTrails is null or
340
- # true, then information for all trails in the current region and any
341
- # associated shadow trails in other regions is returned.
342
- #
343
- # <note markdown="1"> If one or more trail names are specified, information is returned only
344
- # if the names match the names of trails belonging only to the current
345
- # region. To return information about a trail in another region, you
346
- # must specify its trail ARN.
347
- #
348
- # </note>
349
- # @option params [Boolean] :include_shadow_trails
350
- # Specifies whether to include shadow trails in the response. A shadow
351
- # trail is the replication in a region of a trail that was created in a
352
- # different region. The default is true.
353
- # @return [Types::DescribeTrailsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
354
- #
355
- # * {Types::DescribeTrailsResponse#trail_list #trailList} => Array&lt;Types::Trail&gt;
356
- #
357
- # @example Request syntax with placeholder values
358
- # resp = client.describe_trails({
359
- # trail_name_list: ["String"],
360
- # include_shadow_trails: false,
361
- # })
362
- #
363
- # @example Response structure
364
- # resp.trail_list #=> Array
365
- # resp.trail_list[0].name #=> String
366
- # resp.trail_list[0].s3_bucket_name #=> String
367
- # resp.trail_list[0].s3_key_prefix #=> String
368
- # resp.trail_list[0].sns_topic_name #=> String
369
- # resp.trail_list[0].sns_topic_arn #=> String
370
- # resp.trail_list[0].include_global_service_events #=> Boolean
371
- # resp.trail_list[0].is_multi_region_trail #=> Boolean
372
- # resp.trail_list[0].home_region #=> String
373
- # resp.trail_list[0].trail_arn #=> String
374
- # resp.trail_list[0].log_file_validation_enabled #=> Boolean
375
- # resp.trail_list[0].cloud_watch_logs_log_group_arn #=> String
376
- # resp.trail_list[0].cloud_watch_logs_role_arn #=> String
377
- # resp.trail_list[0].kms_key_id #=> String
378
- # resp.trail_list[0].has_custom_event_selectors #=> Boolean
379
- # @overload describe_trails(params = {})
380
- # @param [Hash] params ({})
381
- def describe_trails(params = {}, options = {})
382
- req = build_request(:describe_trails, params)
383
- req.send_request(options)
384
- end
337
+ # Deletes a trail. This operation must be called from the region in
338
+ # which the trail was created. `DeleteTrail` cannot be called on the
339
+ # shadow trails (replicated trails in other regions) of a trail that is
340
+ # enabled in all regions.
341
+ #
342
+ # @option params [required, String] :name
343
+ # Specifies the name or the CloudTrail ARN of the trail to be deleted.
344
+ # The format of a trail ARN is:
345
+ # `arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail`
346
+ #
347
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
348
+ #
349
+ # @example Request syntax with placeholder values
350
+ #
351
+ # resp = client.delete_trail({
352
+ # name: "String", # required
353
+ # })
354
+ #
355
+ # @overload delete_trail(params = {})
356
+ # @param [Hash] params ({})
357
+ def delete_trail(params = {}, options = {})
358
+ req = build_request(:delete_trail, params)
359
+ req.send_request(options)
360
+ end
385
361
 
386
- # Describes the settings for the event selectors that you configured for
387
- # your trail. The information returned for your event selectors includes
388
- # the following:
389
- #
390
- # * The S3 objects that you are logging for data events.
391
- #
392
- # * If your event selector includes management events.
393
- #
394
- # * If your event selector includes read-only events, write-only events,
395
- # or all.
396
- #
397
- # For more information, see [Configuring Event Selectors for Trails][1]
398
- # in the *AWS CloudTrail User Guide*.
399
- #
400
- #
401
- #
402
- # [1]: http://docs.aws.amazon.com/awscloudtrail/latest/userguide/create-event-selectors-for-a-trail.html
403
- # @option params [String] :trail_name
404
- # Specifies the name of the trail or trail ARN. If you specify a trail
405
- # name, the string must meet the following requirements:
406
- #
407
- # * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.),
408
- # underscores (\_), or dashes (-)
409
- #
410
- # * Start with a letter or number, and end with a letter or number
411
- #
412
- # * Be between 3 and 128 characters
413
- #
414
- # * Have no adjacent periods, underscores or dashes. Names like
415
- # `my-_namespace` and `my--namespace` are invalid.
416
- #
417
- # * Not be in IP address format (for example, 192.168.5.4)
418
- #
419
- # If you specify a trail ARN, it must be in the format:
420
- #
421
- # `arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail`
422
- # @return [Types::GetEventSelectorsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
423
- #
424
- # * {Types::GetEventSelectorsResponse#trail_arn #TrailARN} => String
425
- # * {Types::GetEventSelectorsResponse#event_selectors #EventSelectors} => Array&lt;Types::EventSelector&gt;
426
- #
427
- # @example Request syntax with placeholder values
428
- # resp = client.get_event_selectors({
429
- # trail_name: "String",
430
- # })
431
- #
432
- # @example Response structure
433
- # resp.trail_arn #=> String
434
- # resp.event_selectors #=> Array
435
- # resp.event_selectors[0].read_write_type #=> String, one of "ReadOnly", "WriteOnly", "All"
436
- # resp.event_selectors[0].include_management_events #=> Boolean
437
- # resp.event_selectors[0].data_resources #=> Array
438
- # resp.event_selectors[0].data_resources[0].type #=> String
439
- # resp.event_selectors[0].data_resources[0].values #=> Array
440
- # resp.event_selectors[0].data_resources[0].values[0] #=> String
441
- # @overload get_event_selectors(params = {})
442
- # @param [Hash] params ({})
443
- def get_event_selectors(params = {}, options = {})
444
- req = build_request(:get_event_selectors, params)
445
- req.send_request(options)
446
- end
362
+ # Retrieves settings for the trail associated with the current region
363
+ # for your account.
364
+ #
365
+ # @option params [Array<String>] :trail_name_list
366
+ # Specifies a list of trail names, trail ARNs, or both, of the trails to
367
+ # describe. The format of a trail ARN is:
368
+ #
369
+ # `arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail`
370
+ #
371
+ # If an empty list is specified, information for the trail in the
372
+ # current region is returned.
373
+ #
374
+ # * If an empty list is specified and `IncludeShadowTrails` is false,
375
+ # then information for all trails in the current region is returned.
376
+ #
377
+ # * If an empty list is specified and IncludeShadowTrails is null or
378
+ # true, then information for all trails in the current region and any
379
+ # associated shadow trails in other regions is returned.
380
+ #
381
+ # <note markdown="1"> If one or more trail names are specified, information is returned only
382
+ # if the names match the names of trails belonging only to the current
383
+ # region. To return information about a trail in another region, you
384
+ # must specify its trail ARN.
385
+ #
386
+ # </note>
387
+ #
388
+ # @option params [Boolean] :include_shadow_trails
389
+ # Specifies whether to include shadow trails in the response. A shadow
390
+ # trail is the replication in a region of a trail that was created in a
391
+ # different region. The default is true.
392
+ #
393
+ # @return [Types::DescribeTrailsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
394
+ #
395
+ # * {Types::DescribeTrailsResponse#trail_list #trail_list} => Array&lt;Types::Trail&gt;
396
+ #
397
+ # @example Request syntax with placeholder values
398
+ #
399
+ # resp = client.describe_trails({
400
+ # trail_name_list: ["String"],
401
+ # include_shadow_trails: false,
402
+ # })
403
+ #
404
+ # @example Response structure
405
+ #
406
+ # resp.trail_list #=> Array
407
+ # resp.trail_list[0].name #=> String
408
+ # resp.trail_list[0].s3_bucket_name #=> String
409
+ # resp.trail_list[0].s3_key_prefix #=> String
410
+ # resp.trail_list[0].sns_topic_name #=> String
411
+ # resp.trail_list[0].sns_topic_arn #=> String
412
+ # resp.trail_list[0].include_global_service_events #=> Boolean
413
+ # resp.trail_list[0].is_multi_region_trail #=> Boolean
414
+ # resp.trail_list[0].home_region #=> String
415
+ # resp.trail_list[0].trail_arn #=> String
416
+ # resp.trail_list[0].log_file_validation_enabled #=> Boolean
417
+ # resp.trail_list[0].cloud_watch_logs_log_group_arn #=> String
418
+ # resp.trail_list[0].cloud_watch_logs_role_arn #=> String
419
+ # resp.trail_list[0].kms_key_id #=> String
420
+ # resp.trail_list[0].has_custom_event_selectors #=> Boolean
421
+ #
422
+ # @overload describe_trails(params = {})
423
+ # @param [Hash] params ({})
424
+ def describe_trails(params = {}, options = {})
425
+ req = build_request(:describe_trails, params)
426
+ req.send_request(options)
427
+ end
447
428
 
448
- # Returns a JSON-formatted list of information about the specified
449
- # trail. Fields include information on delivery errors, Amazon SNS and
450
- # Amazon S3 errors, and start and stop logging times for each trail.
451
- # This operation returns trail status from a single region. To return
452
- # trail status from all regions, you must call the operation on each
453
- # region.
454
- # @option params [required, String] :name
455
- # Specifies the name or the CloudTrail ARN of the trail for which you
456
- # are requesting status. To get the status of a shadow trail (a
457
- # replication of the trail in another region), you must specify its ARN.
458
- # The format of a trail ARN is:
459
- #
460
- # `arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail`
461
- # @return [Types::GetTrailStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
462
- #
463
- # * {Types::GetTrailStatusResponse#is_logging #IsLogging} => Boolean
464
- # * {Types::GetTrailStatusResponse#latest_delivery_error #LatestDeliveryError} => String
465
- # * {Types::GetTrailStatusResponse#latest_notification_error #LatestNotificationError} => String
466
- # * {Types::GetTrailStatusResponse#latest_delivery_time #LatestDeliveryTime} => Time
467
- # * {Types::GetTrailStatusResponse#latest_notification_time #LatestNotificationTime} => Time
468
- # * {Types::GetTrailStatusResponse#start_logging_time #StartLoggingTime} => Time
469
- # * {Types::GetTrailStatusResponse#stop_logging_time #StopLoggingTime} => Time
470
- # * {Types::GetTrailStatusResponse#latest_cloud_watch_logs_delivery_error #LatestCloudWatchLogsDeliveryError} => String
471
- # * {Types::GetTrailStatusResponse#latest_cloud_watch_logs_delivery_time #LatestCloudWatchLogsDeliveryTime} => Time
472
- # * {Types::GetTrailStatusResponse#latest_digest_delivery_time #LatestDigestDeliveryTime} => Time
473
- # * {Types::GetTrailStatusResponse#latest_digest_delivery_error #LatestDigestDeliveryError} => String
474
- # * {Types::GetTrailStatusResponse#latest_delivery_attempt_time #LatestDeliveryAttemptTime} => String
475
- # * {Types::GetTrailStatusResponse#latest_notification_attempt_time #LatestNotificationAttemptTime} => String
476
- # * {Types::GetTrailStatusResponse#latest_notification_attempt_succeeded #LatestNotificationAttemptSucceeded} => String
477
- # * {Types::GetTrailStatusResponse#latest_delivery_attempt_succeeded #LatestDeliveryAttemptSucceeded} => String
478
- # * {Types::GetTrailStatusResponse#time_logging_started #TimeLoggingStarted} => String
479
- # * {Types::GetTrailStatusResponse#time_logging_stopped #TimeLoggingStopped} => String
480
- #
481
- # @example Request syntax with placeholder values
482
- # resp = client.get_trail_status({
483
- # name: "String", # required
484
- # })
485
- #
486
- # @example Response structure
487
- # resp.is_logging #=> Boolean
488
- # resp.latest_delivery_error #=> String
489
- # resp.latest_notification_error #=> String
490
- # resp.latest_delivery_time #=> Time
491
- # resp.latest_notification_time #=> Time
492
- # resp.start_logging_time #=> Time
493
- # resp.stop_logging_time #=> Time
494
- # resp.latest_cloud_watch_logs_delivery_error #=> String
495
- # resp.latest_cloud_watch_logs_delivery_time #=> Time
496
- # resp.latest_digest_delivery_time #=> Time
497
- # resp.latest_digest_delivery_error #=> String
498
- # resp.latest_delivery_attempt_time #=> String
499
- # resp.latest_notification_attempt_time #=> String
500
- # resp.latest_notification_attempt_succeeded #=> String
501
- # resp.latest_delivery_attempt_succeeded #=> String
502
- # resp.time_logging_started #=> String
503
- # resp.time_logging_stopped #=> String
504
- # @overload get_trail_status(params = {})
505
- # @param [Hash] params ({})
506
- def get_trail_status(params = {}, options = {})
507
- req = build_request(:get_trail_status, params)
508
- req.send_request(options)
509
- end
429
+ # Describes the settings for the event selectors that you configured for
430
+ # your trail. The information returned for your event selectors includes
431
+ # the following:
432
+ #
433
+ # * The S3 objects that you are logging for data events.
434
+ #
435
+ # * If your event selector includes management events.
436
+ #
437
+ # * If your event selector includes read-only events, write-only events,
438
+ # or all.
439
+ #
440
+ # For more information, see [Configuring Event Selectors for Trails][1]
441
+ # in the *AWS CloudTrail User Guide*.
442
+ #
443
+ #
444
+ #
445
+ # [1]: http://docs.aws.amazon.com/awscloudtrail/latest/userguide/create-event-selectors-for-a-trail.html
446
+ #
447
+ # @option params [String] :trail_name
448
+ # Specifies the name of the trail or trail ARN. If you specify a trail
449
+ # name, the string must meet the following requirements:
450
+ #
451
+ # * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.),
452
+ # underscores (\_), or dashes (-)
453
+ #
454
+ # * Start with a letter or number, and end with a letter or number
455
+ #
456
+ # * Be between 3 and 128 characters
457
+ #
458
+ # * Have no adjacent periods, underscores or dashes. Names like
459
+ # `my-_namespace` and `my--namespace` are invalid.
460
+ #
461
+ # * Not be in IP address format (for example, 192.168.5.4)
462
+ #
463
+ # If you specify a trail ARN, it must be in the format:
464
+ #
465
+ # `arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail`
466
+ #
467
+ # @return [Types::GetEventSelectorsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
468
+ #
469
+ # * {Types::GetEventSelectorsResponse#trail_arn #trail_arn} => String
470
+ # * {Types::GetEventSelectorsResponse#event_selectors #event_selectors} => Array&lt;Types::EventSelector&gt;
471
+ #
472
+ # @example Request syntax with placeholder values
473
+ #
474
+ # resp = client.get_event_selectors({
475
+ # trail_name: "String",
476
+ # })
477
+ #
478
+ # @example Response structure
479
+ #
480
+ # resp.trail_arn #=> String
481
+ # resp.event_selectors #=> Array
482
+ # resp.event_selectors[0].read_write_type #=> String, one of "ReadOnly", "WriteOnly", "All"
483
+ # resp.event_selectors[0].include_management_events #=> Boolean
484
+ # resp.event_selectors[0].data_resources #=> Array
485
+ # resp.event_selectors[0].data_resources[0].type #=> String
486
+ # resp.event_selectors[0].data_resources[0].values #=> Array
487
+ # resp.event_selectors[0].data_resources[0].values[0] #=> String
488
+ #
489
+ # @overload get_event_selectors(params = {})
490
+ # @param [Hash] params ({})
491
+ def get_event_selectors(params = {}, options = {})
492
+ req = build_request(:get_event_selectors, params)
493
+ req.send_request(options)
494
+ end
510
495
 
511
- # Returns all public keys whose private keys were used to sign the
512
- # digest files within the specified time range. The public key is needed
513
- # to validate digest files that were signed with its corresponding
514
- # private key.
515
- #
516
- # <note markdown="1"> CloudTrail uses different private/public key pairs per region. Each
517
- # digest file is signed with a private key unique to its region.
518
- # Therefore, when you validate a digest file from a particular region,
519
- # you must look in the same region for its corresponding public key.
520
- #
521
- # </note>
522
- # @option params [Time,DateTime,Date,Integer,String] :start_time
523
- # Optionally specifies, in UTC, the start of the time range to look up
524
- # public keys for CloudTrail digest files. If not specified, the current
525
- # time is used, and the current public key is returned.
526
- # @option params [Time,DateTime,Date,Integer,String] :end_time
527
- # Optionally specifies, in UTC, the end of the time range to look up
528
- # public keys for CloudTrail digest files. If not specified, the current
529
- # time is used.
530
- # @option params [String] :next_token
531
- # Reserved for future use.
532
- # @return [Types::ListPublicKeysResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
533
- #
534
- # * {Types::ListPublicKeysResponse#public_key_list #PublicKeyList} => Array&lt;Types::PublicKey&gt;
535
- # * {Types::ListPublicKeysResponse#next_token #NextToken} => String
536
- #
537
- # @example Request syntax with placeholder values
538
- # resp = client.list_public_keys({
539
- # start_time: Time.now,
540
- # end_time: Time.now,
541
- # next_token: "String",
542
- # })
543
- #
544
- # @example Response structure
545
- # resp.public_key_list #=> Array
546
- # resp.public_key_list[0].value #=> String
547
- # resp.public_key_list[0].validity_start_time #=> Time
548
- # resp.public_key_list[0].validity_end_time #=> Time
549
- # resp.public_key_list[0].fingerprint #=> String
550
- # resp.next_token #=> String
551
- # @overload list_public_keys(params = {})
552
- # @param [Hash] params ({})
553
- def list_public_keys(params = {}, options = {})
554
- req = build_request(:list_public_keys, params)
555
- req.send_request(options)
556
- end
496
+ # Returns a JSON-formatted list of information about the specified
497
+ # trail. Fields include information on delivery errors, Amazon SNS and
498
+ # Amazon S3 errors, and start and stop logging times for each trail.
499
+ # This operation returns trail status from a single region. To return
500
+ # trail status from all regions, you must call the operation on each
501
+ # region.
502
+ #
503
+ # @option params [required, String] :name
504
+ # Specifies the name or the CloudTrail ARN of the trail for which you
505
+ # are requesting status. To get the status of a shadow trail (a
506
+ # replication of the trail in another region), you must specify its ARN.
507
+ # The format of a trail ARN is:
508
+ #
509
+ # `arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail`
510
+ #
511
+ # @return [Types::GetTrailStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
512
+ #
513
+ # * {Types::GetTrailStatusResponse#is_logging #is_logging} => Boolean
514
+ # * {Types::GetTrailStatusResponse#latest_delivery_error #latest_delivery_error} => String
515
+ # * {Types::GetTrailStatusResponse#latest_notification_error #latest_notification_error} => String
516
+ # * {Types::GetTrailStatusResponse#latest_delivery_time #latest_delivery_time} => Time
517
+ # * {Types::GetTrailStatusResponse#latest_notification_time #latest_notification_time} => Time
518
+ # * {Types::GetTrailStatusResponse#start_logging_time #start_logging_time} => Time
519
+ # * {Types::GetTrailStatusResponse#stop_logging_time #stop_logging_time} => Time
520
+ # * {Types::GetTrailStatusResponse#latest_cloud_watch_logs_delivery_error #latest_cloud_watch_logs_delivery_error} => String
521
+ # * {Types::GetTrailStatusResponse#latest_cloud_watch_logs_delivery_time #latest_cloud_watch_logs_delivery_time} => Time
522
+ # * {Types::GetTrailStatusResponse#latest_digest_delivery_time #latest_digest_delivery_time} => Time
523
+ # * {Types::GetTrailStatusResponse#latest_digest_delivery_error #latest_digest_delivery_error} => String
524
+ # * {Types::GetTrailStatusResponse#latest_delivery_attempt_time #latest_delivery_attempt_time} => String
525
+ # * {Types::GetTrailStatusResponse#latest_notification_attempt_time #latest_notification_attempt_time} => String
526
+ # * {Types::GetTrailStatusResponse#latest_notification_attempt_succeeded #latest_notification_attempt_succeeded} => String
527
+ # * {Types::GetTrailStatusResponse#latest_delivery_attempt_succeeded #latest_delivery_attempt_succeeded} => String
528
+ # * {Types::GetTrailStatusResponse#time_logging_started #time_logging_started} => String
529
+ # * {Types::GetTrailStatusResponse#time_logging_stopped #time_logging_stopped} => String
530
+ #
531
+ # @example Request syntax with placeholder values
532
+ #
533
+ # resp = client.get_trail_status({
534
+ # name: "String", # required
535
+ # })
536
+ #
537
+ # @example Response structure
538
+ #
539
+ # resp.is_logging #=> Boolean
540
+ # resp.latest_delivery_error #=> String
541
+ # resp.latest_notification_error #=> String
542
+ # resp.latest_delivery_time #=> Time
543
+ # resp.latest_notification_time #=> Time
544
+ # resp.start_logging_time #=> Time
545
+ # resp.stop_logging_time #=> Time
546
+ # resp.latest_cloud_watch_logs_delivery_error #=> String
547
+ # resp.latest_cloud_watch_logs_delivery_time #=> Time
548
+ # resp.latest_digest_delivery_time #=> Time
549
+ # resp.latest_digest_delivery_error #=> String
550
+ # resp.latest_delivery_attempt_time #=> String
551
+ # resp.latest_notification_attempt_time #=> String
552
+ # resp.latest_notification_attempt_succeeded #=> String
553
+ # resp.latest_delivery_attempt_succeeded #=> String
554
+ # resp.time_logging_started #=> String
555
+ # resp.time_logging_stopped #=> String
556
+ #
557
+ # @overload get_trail_status(params = {})
558
+ # @param [Hash] params ({})
559
+ def get_trail_status(params = {}, options = {})
560
+ req = build_request(:get_trail_status, params)
561
+ req.send_request(options)
562
+ end
557
563
 
558
- # Lists the tags for the trail in the current region.
559
- # @option params [required, Array<String>] :resource_id_list
560
- # Specifies a list of trail ARNs whose tags will be listed. The list has
561
- # a limit of 20 ARNs. The format of a trail ARN is:
562
- #
563
- # `arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail`
564
- # @option params [String] :next_token
565
- # Reserved for future use.
566
- # @return [Types::ListTagsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
567
- #
568
- # * {Types::ListTagsResponse#resource_tag_list #ResourceTagList} => Array&lt;Types::ResourceTag&gt;
569
- # * {Types::ListTagsResponse#next_token #NextToken} => String
570
- #
571
- # @example Request syntax with placeholder values
572
- # resp = client.list_tags({
573
- # resource_id_list: ["String"], # required
574
- # next_token: "String",
575
- # })
576
- #
577
- # @example Response structure
578
- # resp.resource_tag_list #=> Array
579
- # resp.resource_tag_list[0].resource_id #=> String
580
- # resp.resource_tag_list[0].tags_list #=> Array
581
- # resp.resource_tag_list[0].tags_list[0].key #=> String
582
- # resp.resource_tag_list[0].tags_list[0].value #=> String
583
- # resp.next_token #=> String
584
- # @overload list_tags(params = {})
585
- # @param [Hash] params ({})
586
- def list_tags(params = {}, options = {})
587
- req = build_request(:list_tags, params)
588
- req.send_request(options)
589
- end
564
+ # Returns all public keys whose private keys were used to sign the
565
+ # digest files within the specified time range. The public key is needed
566
+ # to validate digest files that were signed with its corresponding
567
+ # private key.
568
+ #
569
+ # <note markdown="1"> CloudTrail uses different private/public key pairs per region. Each
570
+ # digest file is signed with a private key unique to its region.
571
+ # Therefore, when you validate a digest file from a particular region,
572
+ # you must look in the same region for its corresponding public key.
573
+ #
574
+ # </note>
575
+ #
576
+ # @option params [Time,DateTime,Date,Integer,String] :start_time
577
+ # Optionally specifies, in UTC, the start of the time range to look up
578
+ # public keys for CloudTrail digest files. If not specified, the current
579
+ # time is used, and the current public key is returned.
580
+ #
581
+ # @option params [Time,DateTime,Date,Integer,String] :end_time
582
+ # Optionally specifies, in UTC, the end of the time range to look up
583
+ # public keys for CloudTrail digest files. If not specified, the current
584
+ # time is used.
585
+ #
586
+ # @option params [String] :next_token
587
+ # Reserved for future use.
588
+ #
589
+ # @return [Types::ListPublicKeysResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
590
+ #
591
+ # * {Types::ListPublicKeysResponse#public_key_list #public_key_list} => Array&lt;Types::PublicKey&gt;
592
+ # * {Types::ListPublicKeysResponse#next_token #next_token} => String
593
+ #
594
+ # @example Request syntax with placeholder values
595
+ #
596
+ # resp = client.list_public_keys({
597
+ # start_time: Time.now,
598
+ # end_time: Time.now,
599
+ # next_token: "String",
600
+ # })
601
+ #
602
+ # @example Response structure
603
+ #
604
+ # resp.public_key_list #=> Array
605
+ # resp.public_key_list[0].value #=> String
606
+ # resp.public_key_list[0].validity_start_time #=> Time
607
+ # resp.public_key_list[0].validity_end_time #=> Time
608
+ # resp.public_key_list[0].fingerprint #=> String
609
+ # resp.next_token #=> String
610
+ #
611
+ # @overload list_public_keys(params = {})
612
+ # @param [Hash] params ({})
613
+ def list_public_keys(params = {}, options = {})
614
+ req = build_request(:list_public_keys, params)
615
+ req.send_request(options)
616
+ end
590
617
 
591
- # Looks up API activity events captured by CloudTrail that create,
592
- # update, or delete resources in your account. Events for a region can
593
- # be looked up for the times in which you had CloudTrail turned on in
594
- # that region during the last seven days. Lookup supports the following
595
- # attributes:
596
- #
597
- # * Event ID
598
- #
599
- # * Event name
600
- #
601
- # * Resource name
602
- #
603
- # * Resource type
604
- #
605
- # * User name
606
- #
607
- # All attributes are optional. The default number of results returned is
608
- # 10, with a maximum of 50 possible. The response includes a token that
609
- # you can use to get the next page of results.
610
- #
611
- # The rate of lookup requests is limited to one per second per account.
612
- # If this limit is exceeded, a throttling error occurs.
613
- #
614
- # Events that occurred during the selected time range will not be
615
- # available for lookup if CloudTrail logging was not enabled when the
616
- # events occurred.
617
- # @option params [Array<Types::LookupAttribute>] :lookup_attributes
618
- # Contains a list of lookup attributes. Currently the list can contain
619
- # only one item.
620
- # @option params [Time,DateTime,Date,Integer,String] :start_time
621
- # Specifies that only events that occur after or at the specified time
622
- # are returned. If the specified start time is after the specified end
623
- # time, an error is returned.
624
- # @option params [Time,DateTime,Date,Integer,String] :end_time
625
- # Specifies that only events that occur before or at the specified time
626
- # are returned. If the specified end time is before the specified start
627
- # time, an error is returned.
628
- # @option params [Integer] :max_results
629
- # The number of events to return. Possible values are 1 through 50. The
630
- # default is 10.
631
- # @option params [String] :next_token
632
- # The token to use to get the next page of results after a previous API
633
- # call. This token must be passed in with the same parameters that were
634
- # specified in the the original call. For example, if the original call
635
- # specified an AttributeKey of 'Username' with a value of 'root',
636
- # the call with NextToken should include those same parameters.
637
- # @return [Types::LookupEventsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
638
- #
639
- # * {Types::LookupEventsResponse#events #Events} => Array&lt;Types::Event&gt;
640
- # * {Types::LookupEventsResponse#next_token #NextToken} => String
641
- #
642
- # @example Request syntax with placeholder values
643
- # resp = client.lookup_events({
644
- # lookup_attributes: [
645
- # {
646
- # attribute_key: "EventId", # required, accepts EventId, EventName, Username, ResourceType, ResourceName, EventSource
647
- # attribute_value: "String", # required
648
- # },
649
- # ],
650
- # start_time: Time.now,
651
- # end_time: Time.now,
652
- # max_results: 1,
653
- # next_token: "NextToken",
654
- # })
655
- #
656
- # @example Response structure
657
- # resp.events #=> Array
658
- # resp.events[0].event_id #=> String
659
- # resp.events[0].event_name #=> String
660
- # resp.events[0].event_time #=> Time
661
- # resp.events[0].event_source #=> String
662
- # resp.events[0].username #=> String
663
- # resp.events[0].resources #=> Array
664
- # resp.events[0].resources[0].resource_type #=> String
665
- # resp.events[0].resources[0].resource_name #=> String
666
- # resp.events[0].cloud_trail_event #=> String
667
- # resp.next_token #=> String
668
- # @overload lookup_events(params = {})
669
- # @param [Hash] params ({})
670
- def lookup_events(params = {}, options = {})
671
- req = build_request(:lookup_events, params)
672
- req.send_request(options)
673
- end
618
+ # Lists the tags for the trail in the current region.
619
+ #
620
+ # @option params [required, Array<String>] :resource_id_list
621
+ # Specifies a list of trail ARNs whose tags will be listed. The list has
622
+ # a limit of 20 ARNs. The format of a trail ARN is:
623
+ #
624
+ # `arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail`
625
+ #
626
+ # @option params [String] :next_token
627
+ # Reserved for future use.
628
+ #
629
+ # @return [Types::ListTagsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
630
+ #
631
+ # * {Types::ListTagsResponse#resource_tag_list #resource_tag_list} => Array&lt;Types::ResourceTag&gt;
632
+ # * {Types::ListTagsResponse#next_token #next_token} => String
633
+ #
634
+ # @example Request syntax with placeholder values
635
+ #
636
+ # resp = client.list_tags({
637
+ # resource_id_list: ["String"], # required
638
+ # next_token: "String",
639
+ # })
640
+ #
641
+ # @example Response structure
642
+ #
643
+ # resp.resource_tag_list #=> Array
644
+ # resp.resource_tag_list[0].resource_id #=> String
645
+ # resp.resource_tag_list[0].tags_list #=> Array
646
+ # resp.resource_tag_list[0].tags_list[0].key #=> String
647
+ # resp.resource_tag_list[0].tags_list[0].value #=> String
648
+ # resp.next_token #=> String
649
+ #
650
+ # @overload list_tags(params = {})
651
+ # @param [Hash] params ({})
652
+ def list_tags(params = {}, options = {})
653
+ req = build_request(:list_tags, params)
654
+ req.send_request(options)
655
+ end
674
656
 
675
- # Configures an event selector for your trail. Use event selectors to
676
- # specify the type of events that you want your trail to log. When an
677
- # event occurs in your account, CloudTrail evaluates the event selectors
678
- # in all trails. For each trail, if the event matches any event
679
- # selector, the trail processes and logs the event. If the event
680
- # doesn't match any event selector, the trail doesn't log the event.
681
- #
682
- # Example
683
- #
684
- # 1. You create an event selector for a trail and specify that you want
685
- # write-only events.
686
- #
687
- # 2. The EC2 `GetConsoleOutput` and `RunInstances` API operations occur
688
- # in your account.
689
- #
690
- # 3. CloudTrail evaluates whether the events match your event
691
- # selectors.
692
- #
693
- # 4. The `RunInstances` is a write-only event and it matches your event
694
- # selector. The trail logs the event.
695
- #
696
- # 5. The `GetConsoleOutput` is a read-only event but it doesn't match
697
- # your event selector. The trail doesn't log the event.
698
- #
699
- # The `PutEventSelectors` operation must be called from the region in
700
- # which the trail was created; otherwise, an
701
- # `InvalidHomeRegionException` is thrown.
702
- #
703
- # You can configure up to five event selectors for each trail. For more
704
- # information, see [Configuring Event Selectors for Trails][1] in the
705
- # *AWS CloudTrail User Guide*.
706
- #
707
- #
708
- #
709
- # [1]: http://docs.aws.amazon.com/awscloudtrail/latest/userguide/create-event-selectors-for-a-trail.html
710
- # @option params [String] :trail_name
711
- # Specifies the name of the trail or trail ARN. If you specify a trail
712
- # name, the string must meet the following requirements:
713
- #
714
- # * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.),
715
- # underscores (\_), or dashes (-)
716
- #
717
- # * Start with a letter or number, and end with a letter or number
718
- #
719
- # * Be between 3 and 128 characters
720
- #
721
- # * Have no adjacent periods, underscores or dashes. Names like
722
- # `my-_namespace` and `my--namespace` are invalid.
723
- #
724
- # * Not be in IP address format (for example, 192.168.5.4)
725
- #
726
- # If you specify a trail ARN, it must be in the format:
727
- #
728
- # `arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail`
729
- # @option params [Array<Types::EventSelector>] :event_selectors
730
- # Specifies the settings for your event selectors. You can configure up
731
- # to five event selectors for a trail.
732
- # @return [Types::PutEventSelectorsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
733
- #
734
- # * {Types::PutEventSelectorsResponse#trail_arn #TrailARN} => String
735
- # * {Types::PutEventSelectorsResponse#event_selectors #EventSelectors} => Array&lt;Types::EventSelector&gt;
736
- #
737
- # @example Request syntax with placeholder values
738
- # resp = client.put_event_selectors({
739
- # trail_name: "String",
740
- # event_selectors: [
741
- # {
742
- # read_write_type: "ReadOnly", # accepts ReadOnly, WriteOnly, All
743
- # include_management_events: false,
744
- # data_resources: [
745
- # {
746
- # type: "String",
747
- # values: ["String"],
748
- # },
749
- # ],
750
- # },
751
- # ],
752
- # })
753
- #
754
- # @example Response structure
755
- # resp.trail_arn #=> String
756
- # resp.event_selectors #=> Array
757
- # resp.event_selectors[0].read_write_type #=> String, one of "ReadOnly", "WriteOnly", "All"
758
- # resp.event_selectors[0].include_management_events #=> Boolean
759
- # resp.event_selectors[0].data_resources #=> Array
760
- # resp.event_selectors[0].data_resources[0].type #=> String
761
- # resp.event_selectors[0].data_resources[0].values #=> Array
762
- # resp.event_selectors[0].data_resources[0].values[0] #=> String
763
- # @overload put_event_selectors(params = {})
764
- # @param [Hash] params ({})
765
- def put_event_selectors(params = {}, options = {})
766
- req = build_request(:put_event_selectors, params)
767
- req.send_request(options)
768
- end
657
+ # Looks up API activity events captured by CloudTrail that create,
658
+ # update, or delete resources in your account. Events for a region can
659
+ # be looked up for the times in which you had CloudTrail turned on in
660
+ # that region during the last seven days. Lookup supports the following
661
+ # attributes:
662
+ #
663
+ # * Event ID
664
+ #
665
+ # * Event name
666
+ #
667
+ # * Resource name
668
+ #
669
+ # * Resource type
670
+ #
671
+ # * User name
672
+ #
673
+ # All attributes are optional. The default number of results returned is
674
+ # 10, with a maximum of 50 possible. The response includes a token that
675
+ # you can use to get the next page of results.
676
+ #
677
+ # The rate of lookup requests is limited to one per second per account.
678
+ # If this limit is exceeded, a throttling error occurs.
679
+ #
680
+ # Events that occurred during the selected time range will not be
681
+ # available for lookup if CloudTrail logging was not enabled when the
682
+ # events occurred.
683
+ #
684
+ # @option params [Array<Types::LookupAttribute>] :lookup_attributes
685
+ # Contains a list of lookup attributes. Currently the list can contain
686
+ # only one item.
687
+ #
688
+ # @option params [Time,DateTime,Date,Integer,String] :start_time
689
+ # Specifies that only events that occur after or at the specified time
690
+ # are returned. If the specified start time is after the specified end
691
+ # time, an error is returned.
692
+ #
693
+ # @option params [Time,DateTime,Date,Integer,String] :end_time
694
+ # Specifies that only events that occur before or at the specified time
695
+ # are returned. If the specified end time is before the specified start
696
+ # time, an error is returned.
697
+ #
698
+ # @option params [Integer] :max_results
699
+ # The number of events to return. Possible values are 1 through 50. The
700
+ # default is 10.
701
+ #
702
+ # @option params [String] :next_token
703
+ # The token to use to get the next page of results after a previous API
704
+ # call. This token must be passed in with the same parameters that were
705
+ # specified in the the original call. For example, if the original call
706
+ # specified an AttributeKey of 'Username' with a value of 'root',
707
+ # the call with NextToken should include those same parameters.
708
+ #
709
+ # @return [Types::LookupEventsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
710
+ #
711
+ # * {Types::LookupEventsResponse#events #events} => Array&lt;Types::Event&gt;
712
+ # * {Types::LookupEventsResponse#next_token #next_token} => String
713
+ #
714
+ # @example Request syntax with placeholder values
715
+ #
716
+ # resp = client.lookup_events({
717
+ # lookup_attributes: [
718
+ # {
719
+ # attribute_key: "EventId", # required, accepts EventId, EventName, Username, ResourceType, ResourceName, EventSource
720
+ # attribute_value: "String", # required
721
+ # },
722
+ # ],
723
+ # start_time: Time.now,
724
+ # end_time: Time.now,
725
+ # max_results: 1,
726
+ # next_token: "NextToken",
727
+ # })
728
+ #
729
+ # @example Response structure
730
+ #
731
+ # resp.events #=> Array
732
+ # resp.events[0].event_id #=> String
733
+ # resp.events[0].event_name #=> String
734
+ # resp.events[0].event_time #=> Time
735
+ # resp.events[0].event_source #=> String
736
+ # resp.events[0].username #=> String
737
+ # resp.events[0].resources #=> Array
738
+ # resp.events[0].resources[0].resource_type #=> String
739
+ # resp.events[0].resources[0].resource_name #=> String
740
+ # resp.events[0].cloud_trail_event #=> String
741
+ # resp.next_token #=> String
742
+ #
743
+ # @overload lookup_events(params = {})
744
+ # @param [Hash] params ({})
745
+ def lookup_events(params = {}, options = {})
746
+ req = build_request(:lookup_events, params)
747
+ req.send_request(options)
748
+ end
769
749
 
770
- # Removes the specified tags from a trail.
771
- # @option params [required, String] :resource_id
772
- # Specifies the ARN of the trail from which tags should be removed. The
773
- # format of a trail ARN is:
774
- #
775
- # `arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail`
776
- # @option params [Array<Types::Tag>] :tags_list
777
- # Specifies a list of tags to be removed.
778
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
779
- #
780
- # @example Request syntax with placeholder values
781
- # resp = client.remove_tags({
782
- # resource_id: "String", # required
783
- # tags_list: [
784
- # {
785
- # key: "String", # required
786
- # value: "String",
787
- # },
788
- # ],
789
- # })
790
- # @overload remove_tags(params = {})
791
- # @param [Hash] params ({})
792
- def remove_tags(params = {}, options = {})
793
- req = build_request(:remove_tags, params)
794
- req.send_request(options)
795
- end
750
+ # Configures an event selector for your trail. Use event selectors to
751
+ # specify the type of events that you want your trail to log. When an
752
+ # event occurs in your account, CloudTrail evaluates the event selectors
753
+ # in all trails. For each trail, if the event matches any event
754
+ # selector, the trail processes and logs the event. If the event
755
+ # doesn't match any event selector, the trail doesn't log the event.
756
+ #
757
+ # Example
758
+ #
759
+ # 1. You create an event selector for a trail and specify that you want
760
+ # write-only events.
761
+ #
762
+ # 2. The EC2 `GetConsoleOutput` and `RunInstances` API operations occur
763
+ # in your account.
764
+ #
765
+ # 3. CloudTrail evaluates whether the events match your event
766
+ # selectors.
767
+ #
768
+ # 4. The `RunInstances` is a write-only event and it matches your event
769
+ # selector. The trail logs the event.
770
+ #
771
+ # 5. The `GetConsoleOutput` is a read-only event but it doesn't match
772
+ # your event selector. The trail doesn't log the event.
773
+ #
774
+ # The `PutEventSelectors` operation must be called from the region in
775
+ # which the trail was created; otherwise, an
776
+ # `InvalidHomeRegionException` is thrown.
777
+ #
778
+ # You can configure up to five event selectors for each trail. For more
779
+ # information, see [Configuring Event Selectors for Trails][1] in the
780
+ # *AWS CloudTrail User Guide*.
781
+ #
782
+ #
783
+ #
784
+ # [1]: http://docs.aws.amazon.com/awscloudtrail/latest/userguide/create-event-selectors-for-a-trail.html
785
+ #
786
+ # @option params [String] :trail_name
787
+ # Specifies the name of the trail or trail ARN. If you specify a trail
788
+ # name, the string must meet the following requirements:
789
+ #
790
+ # * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.),
791
+ # underscores (\_), or dashes (-)
792
+ #
793
+ # * Start with a letter or number, and end with a letter or number
794
+ #
795
+ # * Be between 3 and 128 characters
796
+ #
797
+ # * Have no adjacent periods, underscores or dashes. Names like
798
+ # `my-_namespace` and `my--namespace` are invalid.
799
+ #
800
+ # * Not be in IP address format (for example, 192.168.5.4)
801
+ #
802
+ # If you specify a trail ARN, it must be in the format:
803
+ #
804
+ # `arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail`
805
+ #
806
+ # @option params [Array<Types::EventSelector>] :event_selectors
807
+ # Specifies the settings for your event selectors. You can configure up
808
+ # to five event selectors for a trail.
809
+ #
810
+ # @return [Types::PutEventSelectorsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
811
+ #
812
+ # * {Types::PutEventSelectorsResponse#trail_arn #trail_arn} => String
813
+ # * {Types::PutEventSelectorsResponse#event_selectors #event_selectors} => Array&lt;Types::EventSelector&gt;
814
+ #
815
+ # @example Request syntax with placeholder values
816
+ #
817
+ # resp = client.put_event_selectors({
818
+ # trail_name: "String",
819
+ # event_selectors: [
820
+ # {
821
+ # read_write_type: "ReadOnly", # accepts ReadOnly, WriteOnly, All
822
+ # include_management_events: false,
823
+ # data_resources: [
824
+ # {
825
+ # type: "String",
826
+ # values: ["String"],
827
+ # },
828
+ # ],
829
+ # },
830
+ # ],
831
+ # })
832
+ #
833
+ # @example Response structure
834
+ #
835
+ # resp.trail_arn #=> String
836
+ # resp.event_selectors #=> Array
837
+ # resp.event_selectors[0].read_write_type #=> String, one of "ReadOnly", "WriteOnly", "All"
838
+ # resp.event_selectors[0].include_management_events #=> Boolean
839
+ # resp.event_selectors[0].data_resources #=> Array
840
+ # resp.event_selectors[0].data_resources[0].type #=> String
841
+ # resp.event_selectors[0].data_resources[0].values #=> Array
842
+ # resp.event_selectors[0].data_resources[0].values[0] #=> String
843
+ #
844
+ # @overload put_event_selectors(params = {})
845
+ # @param [Hash] params ({})
846
+ def put_event_selectors(params = {}, options = {})
847
+ req = build_request(:put_event_selectors, params)
848
+ req.send_request(options)
849
+ end
796
850
 
797
- # Starts the recording of AWS API calls and log file delivery for a
798
- # trail. For a trail that is enabled in all regions, this operation must
799
- # be called from the region in which the trail was created. This
800
- # operation cannot be called on the shadow trails (replicated trails in
801
- # other regions) of a trail that is enabled in all regions.
802
- # @option params [required, String] :name
803
- # Specifies the name or the CloudTrail ARN of the trail for which
804
- # CloudTrail logs AWS API calls. The format of a trail ARN is:
805
- #
806
- # `arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail`
807
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
808
- #
809
- # @example Request syntax with placeholder values
810
- # resp = client.start_logging({
811
- # name: "String", # required
812
- # })
813
- # @overload start_logging(params = {})
814
- # @param [Hash] params ({})
815
- def start_logging(params = {}, options = {})
816
- req = build_request(:start_logging, params)
817
- req.send_request(options)
818
- end
851
+ # Removes the specified tags from a trail.
852
+ #
853
+ # @option params [required, String] :resource_id
854
+ # Specifies the ARN of the trail from which tags should be removed. The
855
+ # format of a trail ARN is:
856
+ #
857
+ # `arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail`
858
+ #
859
+ # @option params [Array<Types::Tag>] :tags_list
860
+ # Specifies a list of tags to be removed.
861
+ #
862
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
863
+ #
864
+ # @example Request syntax with placeholder values
865
+ #
866
+ # resp = client.remove_tags({
867
+ # resource_id: "String", # required
868
+ # tags_list: [
869
+ # {
870
+ # key: "String", # required
871
+ # value: "String",
872
+ # },
873
+ # ],
874
+ # })
875
+ #
876
+ # @overload remove_tags(params = {})
877
+ # @param [Hash] params ({})
878
+ def remove_tags(params = {}, options = {})
879
+ req = build_request(:remove_tags, params)
880
+ req.send_request(options)
881
+ end
819
882
 
820
- # Suspends the recording of AWS API calls and log file delivery for the
821
- # specified trail. Under most circumstances, there is no need to use
822
- # this action. You can update a trail without stopping it first. This
823
- # action is the only way to stop recording. For a trail enabled in all
824
- # regions, this operation must be called from the region in which the
825
- # trail was created, or an `InvalidHomeRegionException` will occur. This
826
- # operation cannot be called on the shadow trails (replicated trails in
827
- # other regions) of a trail enabled in all regions.
828
- # @option params [required, String] :name
829
- # Specifies the name or the CloudTrail ARN of the trail for which
830
- # CloudTrail will stop logging AWS API calls. The format of a trail ARN
831
- # is:
832
- #
833
- # `arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail`
834
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
835
- #
836
- # @example Request syntax with placeholder values
837
- # resp = client.stop_logging({
838
- # name: "String", # required
839
- # })
840
- # @overload stop_logging(params = {})
841
- # @param [Hash] params ({})
842
- def stop_logging(params = {}, options = {})
843
- req = build_request(:stop_logging, params)
844
- req.send_request(options)
845
- end
883
+ # Starts the recording of AWS API calls and log file delivery for a
884
+ # trail. For a trail that is enabled in all regions, this operation must
885
+ # be called from the region in which the trail was created. This
886
+ # operation cannot be called on the shadow trails (replicated trails in
887
+ # other regions) of a trail that is enabled in all regions.
888
+ #
889
+ # @option params [required, String] :name
890
+ # Specifies the name or the CloudTrail ARN of the trail for which
891
+ # CloudTrail logs AWS API calls. The format of a trail ARN is:
892
+ #
893
+ # `arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail`
894
+ #
895
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
896
+ #
897
+ # @example Request syntax with placeholder values
898
+ #
899
+ # resp = client.start_logging({
900
+ # name: "String", # required
901
+ # })
902
+ #
903
+ # @overload start_logging(params = {})
904
+ # @param [Hash] params ({})
905
+ def start_logging(params = {}, options = {})
906
+ req = build_request(:start_logging, params)
907
+ req.send_request(options)
908
+ end
846
909
 
847
- # Updates the settings that specify delivery of log files. Changes to a
848
- # trail do not require stopping the CloudTrail service. Use this action
849
- # to designate an existing bucket for log delivery. If the existing
850
- # bucket has previously been a target for CloudTrail log files, an IAM
851
- # policy exists for the bucket. `UpdateTrail` must be called from the
852
- # region in which the trail was created; otherwise, an
853
- # `InvalidHomeRegionException` is thrown.
854
- # @option params [required, String] :name
855
- # Specifies the name of the trail or trail ARN. If `Name` is a trail
856
- # name, the string must meet the following requirements:
857
- #
858
- # * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.),
859
- # underscores (\_), or dashes (-)
860
- #
861
- # * Start with a letter or number, and end with a letter or number
862
- #
863
- # * Be between 3 and 128 characters
864
- #
865
- # * Have no adjacent periods, underscores or dashes. Names like
866
- # `my-_namespace` and `my--namespace` are invalid.
867
- #
868
- # * Not be in IP address format (for example, 192.168.5.4)
869
- #
870
- # If `Name` is a trail ARN, it must be in the format:
871
- #
872
- # `arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail`
873
- # @option params [String] :s3_bucket_name
874
- # Specifies the name of the Amazon S3 bucket designated for publishing
875
- # log files. See [Amazon S3 Bucket Naming Requirements][1].
876
- #
877
- #
878
- #
879
- # [1]: http://docs.aws.amazon.com/awscloudtrail/latest/userguide/create_trail_naming_policy.html
880
- # @option params [String] :s3_key_prefix
881
- # Specifies the Amazon S3 key prefix that comes after the name of the
882
- # bucket you have designated for log file delivery. For more
883
- # information, see [Finding Your CloudTrail Log Files][1]. The maximum
884
- # length is 200 characters.
885
- #
886
- #
887
- #
888
- # [1]: http://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-find-log-files.html
889
- # @option params [String] :sns_topic_name
890
- # Specifies the name of the Amazon SNS topic defined for notification of
891
- # log file delivery. The maximum length is 256 characters.
892
- # @option params [Boolean] :include_global_service_events
893
- # Specifies whether the trail is publishing events from global services
894
- # such as IAM to the log files.
895
- # @option params [Boolean] :is_multi_region_trail
896
- # Specifies whether the trail applies only to the current region or to
897
- # all regions. The default is false. If the trail exists only in the
898
- # current region and this value is set to true, shadow trails
899
- # (replications of the trail) will be created in the other regions. If
900
- # the trail exists in all regions and this value is set to false, the
901
- # trail will remain in the region where it was created, and its shadow
902
- # trails in other regions will be deleted.
903
- # @option params [Boolean] :enable_log_file_validation
904
- # Specifies whether log file validation is enabled. The default is
905
- # false.
906
- #
907
- # <note markdown="1"> When you disable log file integrity validation, the chain of digest
908
- # files is broken after one hour. CloudTrail will not create digest
909
- # files for log files that were delivered during a period in which log
910
- # file integrity validation was disabled. For example, if you enable log
911
- # file integrity validation at noon on January 1, disable it at noon on
912
- # January 2, and re-enable it at noon on January 10, digest files will
913
- # not be created for the log files delivered from noon on January 2 to
914
- # noon on January 10. The same applies whenever you stop CloudTrail
915
- # logging or delete a trail.
916
- #
917
- # </note>
918
- # @option params [String] :cloud_watch_logs_log_group_arn
919
- # Specifies a log group name using an Amazon Resource Name (ARN), a
920
- # unique identifier that represents the log group to which CloudTrail
921
- # logs will be delivered. Not required unless you specify
922
- # CloudWatchLogsRoleArn.
923
- # @option params [String] :cloud_watch_logs_role_arn
924
- # Specifies the role for the CloudWatch Logs endpoint to assume to write
925
- # to a user's log group.
926
- # @option params [String] :kms_key_id
927
- # Specifies the KMS key ID to use to encrypt the logs delivered by
928
- # CloudTrail. The value can be a an alias name prefixed by "alias/", a
929
- # fully specified ARN to an alias, a fully specified ARN to a key, or a
930
- # globally unique identifier.
931
- #
932
- # Examples:
933
- #
934
- # * alias/MyAliasName
935
- #
936
- # * arn:aws:kms:us-east-1:123456789012:alias/MyAliasName
937
- #
938
- # * arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
939
- #
940
- # * 12345678-1234-1234-1234-123456789012
941
- # @return [Types::UpdateTrailResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
942
- #
943
- # * {Types::UpdateTrailResponse#name #Name} => String
944
- # * {Types::UpdateTrailResponse#s3_bucket_name #S3BucketName} => String
945
- # * {Types::UpdateTrailResponse#s3_key_prefix #S3KeyPrefix} => String
946
- # * {Types::UpdateTrailResponse#sns_topic_name #SnsTopicName} => String
947
- # * {Types::UpdateTrailResponse#sns_topic_arn #SnsTopicARN} => String
948
- # * {Types::UpdateTrailResponse#include_global_service_events #IncludeGlobalServiceEvents} => Boolean
949
- # * {Types::UpdateTrailResponse#is_multi_region_trail #IsMultiRegionTrail} => Boolean
950
- # * {Types::UpdateTrailResponse#trail_arn #TrailARN} => String
951
- # * {Types::UpdateTrailResponse#log_file_validation_enabled #LogFileValidationEnabled} => Boolean
952
- # * {Types::UpdateTrailResponse#cloud_watch_logs_log_group_arn #CloudWatchLogsLogGroupArn} => String
953
- # * {Types::UpdateTrailResponse#cloud_watch_logs_role_arn #CloudWatchLogsRoleArn} => String
954
- # * {Types::UpdateTrailResponse#kms_key_id #KmsKeyId} => String
955
- #
956
- # @example Request syntax with placeholder values
957
- # resp = client.update_trail({
958
- # name: "String", # required
959
- # s3_bucket_name: "String",
960
- # s3_key_prefix: "String",
961
- # sns_topic_name: "String",
962
- # include_global_service_events: false,
963
- # is_multi_region_trail: false,
964
- # enable_log_file_validation: false,
965
- # cloud_watch_logs_log_group_arn: "String",
966
- # cloud_watch_logs_role_arn: "String",
967
- # kms_key_id: "String",
968
- # })
969
- #
970
- # @example Response structure
971
- # resp.name #=> String
972
- # resp.s3_bucket_name #=> String
973
- # resp.s3_key_prefix #=> String
974
- # resp.sns_topic_name #=> String
975
- # resp.sns_topic_arn #=> String
976
- # resp.include_global_service_events #=> Boolean
977
- # resp.is_multi_region_trail #=> Boolean
978
- # resp.trail_arn #=> String
979
- # resp.log_file_validation_enabled #=> Boolean
980
- # resp.cloud_watch_logs_log_group_arn #=> String
981
- # resp.cloud_watch_logs_role_arn #=> String
982
- # resp.kms_key_id #=> String
983
- # @overload update_trail(params = {})
984
- # @param [Hash] params ({})
985
- def update_trail(params = {}, options = {})
986
- req = build_request(:update_trail, params)
987
- req.send_request(options)
988
- end
910
+ # Suspends the recording of AWS API calls and log file delivery for the
911
+ # specified trail. Under most circumstances, there is no need to use
912
+ # this action. You can update a trail without stopping it first. This
913
+ # action is the only way to stop recording. For a trail enabled in all
914
+ # regions, this operation must be called from the region in which the
915
+ # trail was created, or an `InvalidHomeRegionException` will occur. This
916
+ # operation cannot be called on the shadow trails (replicated trails in
917
+ # other regions) of a trail enabled in all regions.
918
+ #
919
+ # @option params [required, String] :name
920
+ # Specifies the name or the CloudTrail ARN of the trail for which
921
+ # CloudTrail will stop logging AWS API calls. The format of a trail ARN
922
+ # is:
923
+ #
924
+ # `arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail`
925
+ #
926
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
927
+ #
928
+ # @example Request syntax with placeholder values
929
+ #
930
+ # resp = client.stop_logging({
931
+ # name: "String", # required
932
+ # })
933
+ #
934
+ # @overload stop_logging(params = {})
935
+ # @param [Hash] params ({})
936
+ def stop_logging(params = {}, options = {})
937
+ req = build_request(:stop_logging, params)
938
+ req.send_request(options)
939
+ end
989
940
 
990
- # @!endgroup
941
+ # Updates the settings that specify delivery of log files. Changes to a
942
+ # trail do not require stopping the CloudTrail service. Use this action
943
+ # to designate an existing bucket for log delivery. If the existing
944
+ # bucket has previously been a target for CloudTrail log files, an IAM
945
+ # policy exists for the bucket. `UpdateTrail` must be called from the
946
+ # region in which the trail was created; otherwise, an
947
+ # `InvalidHomeRegionException` is thrown.
948
+ #
949
+ # @option params [required, String] :name
950
+ # Specifies the name of the trail or trail ARN. If `Name` is a trail
951
+ # name, the string must meet the following requirements:
952
+ #
953
+ # * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.),
954
+ # underscores (\_), or dashes (-)
955
+ #
956
+ # * Start with a letter or number, and end with a letter or number
957
+ #
958
+ # * Be between 3 and 128 characters
959
+ #
960
+ # * Have no adjacent periods, underscores or dashes. Names like
961
+ # `my-_namespace` and `my--namespace` are invalid.
962
+ #
963
+ # * Not be in IP address format (for example, 192.168.5.4)
964
+ #
965
+ # If `Name` is a trail ARN, it must be in the format:
966
+ #
967
+ # `arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail`
968
+ #
969
+ # @option params [String] :s3_bucket_name
970
+ # Specifies the name of the Amazon S3 bucket designated for publishing
971
+ # log files. See [Amazon S3 Bucket Naming Requirements][1].
972
+ #
973
+ #
974
+ #
975
+ # [1]: http://docs.aws.amazon.com/awscloudtrail/latest/userguide/create_trail_naming_policy.html
976
+ #
977
+ # @option params [String] :s3_key_prefix
978
+ # Specifies the Amazon S3 key prefix that comes after the name of the
979
+ # bucket you have designated for log file delivery. For more
980
+ # information, see [Finding Your CloudTrail Log Files][1]. The maximum
981
+ # length is 200 characters.
982
+ #
983
+ #
984
+ #
985
+ # [1]: http://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-find-log-files.html
986
+ #
987
+ # @option params [String] :sns_topic_name
988
+ # Specifies the name of the Amazon SNS topic defined for notification of
989
+ # log file delivery. The maximum length is 256 characters.
990
+ #
991
+ # @option params [Boolean] :include_global_service_events
992
+ # Specifies whether the trail is publishing events from global services
993
+ # such as IAM to the log files.
994
+ #
995
+ # @option params [Boolean] :is_multi_region_trail
996
+ # Specifies whether the trail applies only to the current region or to
997
+ # all regions. The default is false. If the trail exists only in the
998
+ # current region and this value is set to true, shadow trails
999
+ # (replications of the trail) will be created in the other regions. If
1000
+ # the trail exists in all regions and this value is set to false, the
1001
+ # trail will remain in the region where it was created, and its shadow
1002
+ # trails in other regions will be deleted.
1003
+ #
1004
+ # @option params [Boolean] :enable_log_file_validation
1005
+ # Specifies whether log file validation is enabled. The default is
1006
+ # false.
1007
+ #
1008
+ # <note markdown="1"> When you disable log file integrity validation, the chain of digest
1009
+ # files is broken after one hour. CloudTrail will not create digest
1010
+ # files for log files that were delivered during a period in which log
1011
+ # file integrity validation was disabled. For example, if you enable log
1012
+ # file integrity validation at noon on January 1, disable it at noon on
1013
+ # January 2, and re-enable it at noon on January 10, digest files will
1014
+ # not be created for the log files delivered from noon on January 2 to
1015
+ # noon on January 10. The same applies whenever you stop CloudTrail
1016
+ # logging or delete a trail.
1017
+ #
1018
+ # </note>
1019
+ #
1020
+ # @option params [String] :cloud_watch_logs_log_group_arn
1021
+ # Specifies a log group name using an Amazon Resource Name (ARN), a
1022
+ # unique identifier that represents the log group to which CloudTrail
1023
+ # logs will be delivered. Not required unless you specify
1024
+ # CloudWatchLogsRoleArn.
1025
+ #
1026
+ # @option params [String] :cloud_watch_logs_role_arn
1027
+ # Specifies the role for the CloudWatch Logs endpoint to assume to write
1028
+ # to a user's log group.
1029
+ #
1030
+ # @option params [String] :kms_key_id
1031
+ # Specifies the KMS key ID to use to encrypt the logs delivered by
1032
+ # CloudTrail. The value can be a an alias name prefixed by "alias/", a
1033
+ # fully specified ARN to an alias, a fully specified ARN to a key, or a
1034
+ # globally unique identifier.
1035
+ #
1036
+ # Examples:
1037
+ #
1038
+ # * alias/MyAliasName
1039
+ #
1040
+ # * arn:aws:kms:us-east-1:123456789012:alias/MyAliasName
1041
+ #
1042
+ # * arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
1043
+ #
1044
+ # * 12345678-1234-1234-1234-123456789012
1045
+ #
1046
+ # @return [Types::UpdateTrailResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1047
+ #
1048
+ # * {Types::UpdateTrailResponse#name #name} => String
1049
+ # * {Types::UpdateTrailResponse#s3_bucket_name #s3_bucket_name} => String
1050
+ # * {Types::UpdateTrailResponse#s3_key_prefix #s3_key_prefix} => String
1051
+ # * {Types::UpdateTrailResponse#sns_topic_name #sns_topic_name} => String
1052
+ # * {Types::UpdateTrailResponse#sns_topic_arn #sns_topic_arn} => String
1053
+ # * {Types::UpdateTrailResponse#include_global_service_events #include_global_service_events} => Boolean
1054
+ # * {Types::UpdateTrailResponse#is_multi_region_trail #is_multi_region_trail} => Boolean
1055
+ # * {Types::UpdateTrailResponse#trail_arn #trail_arn} => String
1056
+ # * {Types::UpdateTrailResponse#log_file_validation_enabled #log_file_validation_enabled} => Boolean
1057
+ # * {Types::UpdateTrailResponse#cloud_watch_logs_log_group_arn #cloud_watch_logs_log_group_arn} => String
1058
+ # * {Types::UpdateTrailResponse#cloud_watch_logs_role_arn #cloud_watch_logs_role_arn} => String
1059
+ # * {Types::UpdateTrailResponse#kms_key_id #kms_key_id} => String
1060
+ #
1061
+ # @example Request syntax with placeholder values
1062
+ #
1063
+ # resp = client.update_trail({
1064
+ # name: "String", # required
1065
+ # s3_bucket_name: "String",
1066
+ # s3_key_prefix: "String",
1067
+ # sns_topic_name: "String",
1068
+ # include_global_service_events: false,
1069
+ # is_multi_region_trail: false,
1070
+ # enable_log_file_validation: false,
1071
+ # cloud_watch_logs_log_group_arn: "String",
1072
+ # cloud_watch_logs_role_arn: "String",
1073
+ # kms_key_id: "String",
1074
+ # })
1075
+ #
1076
+ # @example Response structure
1077
+ #
1078
+ # resp.name #=> String
1079
+ # resp.s3_bucket_name #=> String
1080
+ # resp.s3_key_prefix #=> String
1081
+ # resp.sns_topic_name #=> String
1082
+ # resp.sns_topic_arn #=> String
1083
+ # resp.include_global_service_events #=> Boolean
1084
+ # resp.is_multi_region_trail #=> Boolean
1085
+ # resp.trail_arn #=> String
1086
+ # resp.log_file_validation_enabled #=> Boolean
1087
+ # resp.cloud_watch_logs_log_group_arn #=> String
1088
+ # resp.cloud_watch_logs_role_arn #=> String
1089
+ # resp.kms_key_id #=> String
1090
+ #
1091
+ # @overload update_trail(params = {})
1092
+ # @param [Hash] params ({})
1093
+ def update_trail(params = {}, options = {})
1094
+ req = build_request(:update_trail, params)
1095
+ req.send_request(options)
1096
+ end
991
1097
 
992
- # @param params ({})
993
- # @api private
994
- def build_request(operation_name, params = {})
995
- handlers = @handlers.for(operation_name)
996
- context = Seahorse::Client::RequestContext.new(
997
- operation_name: operation_name,
998
- operation: config.api.operation(operation_name),
999
- client: self,
1000
- params: params,
1001
- config: config)
1002
- context[:gem_name] = 'aws-sdk-cloudtrail'
1003
- context[:gem_version] = '1.0.0.rc1'
1004
- Seahorse::Client::Request.new(handlers, context)
1005
- end
1098
+ # @!endgroup
1006
1099
 
1007
- # @api private
1008
- # @deprecated
1009
- def waiter_names
1010
- []
1011
- end
1100
+ # @param params ({})
1101
+ # @api private
1102
+ def build_request(operation_name, params = {})
1103
+ handlers = @handlers.for(operation_name)
1104
+ context = Seahorse::Client::RequestContext.new(
1105
+ operation_name: operation_name,
1106
+ operation: config.api.operation(operation_name),
1107
+ client: self,
1108
+ params: params,
1109
+ config: config)
1110
+ context[:gem_name] = 'aws-sdk-cloudtrail'
1111
+ context[:gem_version] = '1.0.0.rc1'
1112
+ Seahorse::Client::Request.new(handlers, context)
1113
+ end
1012
1114
 
1013
- class << self
1115
+ # @api private
1116
+ # @deprecated
1117
+ def waiter_names
1118
+ []
1119
+ end
1014
1120
 
1015
- # @api private
1016
- attr_reader :identifier
1121
+ class << self
1017
1122
 
1018
- # @api private
1019
- def errors_module
1020
- Errors
1021
- end
1123
+ # @api private
1124
+ attr_reader :identifier
1022
1125
 
1126
+ # @api private
1127
+ def errors_module
1128
+ Errors
1023
1129
  end
1130
+
1024
1131
  end
1025
1132
  end
1026
1133
  end