aws-sdk-docdb 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: a38bd1ed591392a6618472dde53666bc0b463591
4
+ data.tar.gz: 211e967d37c1f35ccdce7ea7171e7c6074e97513
5
+ SHA512:
6
+ metadata.gz: f9cecd73d10a1b7765c91596b746ef450df2a8e15354a1f70307700753e59fe96cbbbb07ea7dee3f7f6756c9bbe667086f4979418578ebe0f94212dcbea991c8
7
+ data.tar.gz: 7e21cdd868e863f1fee40cb7ab352064ef43ea781d5d2312bb68a696ed0bf97903ee85c34f947d9040f77444781270387eea32b6de65f78def353a7eacd57ffc
@@ -0,0 +1,48 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'aws-sdk-core'
9
+ require 'aws-sigv4'
10
+
11
+ require_relative 'aws-sdk-docdb/types'
12
+ require_relative 'aws-sdk-docdb/client_api'
13
+ require_relative 'aws-sdk-docdb/client'
14
+ require_relative 'aws-sdk-docdb/errors'
15
+ require_relative 'aws-sdk-docdb/waiters'
16
+ require_relative 'aws-sdk-docdb/resource'
17
+ require_relative 'aws-sdk-docdb/customizations'
18
+
19
+ # This module provides support for Amazon DocumentDB with MongoDB compatibility. This module is available in the
20
+ # `aws-sdk-docdb` gem.
21
+ #
22
+ # # Client
23
+ #
24
+ # The {Client} class provides one method for each API operation. Operation
25
+ # methods each accept a hash of request parameters and return a response
26
+ # structure.
27
+ #
28
+ # See {Client} for more information.
29
+ #
30
+ # # Errors
31
+ #
32
+ # Errors returned from Amazon DocumentDB with MongoDB compatibility all
33
+ # extend {Errors::ServiceError}.
34
+ #
35
+ # begin
36
+ # # do stuff
37
+ # rescue Aws::DocDB::Errors::ServiceError
38
+ # # rescues all service API errors
39
+ # end
40
+ #
41
+ # See {Errors} for more information.
42
+ #
43
+ # @service
44
+ module Aws::DocDB
45
+
46
+ GEM_VERSION = '1.0.0'
47
+
48
+ end
@@ -0,0 +1,4001 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'seahorse/client/plugins/content_length.rb'
9
+ require 'aws-sdk-core/plugins/credentials_configuration.rb'
10
+ require 'aws-sdk-core/plugins/logging.rb'
11
+ require 'aws-sdk-core/plugins/param_converter.rb'
12
+ require 'aws-sdk-core/plugins/param_validator.rb'
13
+ require 'aws-sdk-core/plugins/user_agent.rb'
14
+ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
15
+ require 'aws-sdk-core/plugins/retry_errors.rb'
16
+ require 'aws-sdk-core/plugins/global_configuration.rb'
17
+ require 'aws-sdk-core/plugins/regional_endpoint.rb'
18
+ require 'aws-sdk-core/plugins/endpoint_discovery.rb'
19
+ require 'aws-sdk-core/plugins/endpoint_pattern.rb'
20
+ require 'aws-sdk-core/plugins/response_paging.rb'
21
+ require 'aws-sdk-core/plugins/stub_responses.rb'
22
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
23
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
24
+ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
25
+ require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
26
+ require 'aws-sdk-core/plugins/signature_v4.rb'
27
+ require 'aws-sdk-core/plugins/protocols/query.rb'
28
+
29
+ Aws::Plugins::GlobalConfiguration.add_identifier(:docdb)
30
+
31
+ module Aws::DocDB
32
+ class Client < Seahorse::Client::Base
33
+
34
+ include Aws::ClientStubs
35
+
36
+ @identifier = :docdb
37
+
38
+ set_api(ClientApi::API)
39
+
40
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
41
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
42
+ add_plugin(Aws::Plugins::Logging)
43
+ add_plugin(Aws::Plugins::ParamConverter)
44
+ add_plugin(Aws::Plugins::ParamValidator)
45
+ add_plugin(Aws::Plugins::UserAgent)
46
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
47
+ add_plugin(Aws::Plugins::RetryErrors)
48
+ add_plugin(Aws::Plugins::GlobalConfiguration)
49
+ add_plugin(Aws::Plugins::RegionalEndpoint)
50
+ add_plugin(Aws::Plugins::EndpointDiscovery)
51
+ add_plugin(Aws::Plugins::EndpointPattern)
52
+ add_plugin(Aws::Plugins::ResponsePaging)
53
+ add_plugin(Aws::Plugins::StubResponses)
54
+ add_plugin(Aws::Plugins::IdempotencyToken)
55
+ add_plugin(Aws::Plugins::JsonvalueConverter)
56
+ add_plugin(Aws::Plugins::ClientMetricsPlugin)
57
+ add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
58
+ add_plugin(Aws::Plugins::SignatureV4)
59
+ add_plugin(Aws::Plugins::Protocols::Query)
60
+
61
+ # @overload initialize(options)
62
+ # @param [Hash] options
63
+ # @option options [required, Aws::CredentialProvider] :credentials
64
+ # Your AWS credentials. This can be an instance of any one of the
65
+ # following classes:
66
+ #
67
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
68
+ # credentials.
69
+ #
70
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
71
+ # from an EC2 IMDS on an EC2 instance.
72
+ #
73
+ # * `Aws::SharedCredentials` - Used for loading credentials from a
74
+ # shared file, such as `~/.aws/config`.
75
+ #
76
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
77
+ #
78
+ # When `:credentials` are not configured directly, the following
79
+ # locations will be searched for credentials:
80
+ #
81
+ # * `Aws.config[:credentials]`
82
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
83
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
84
+ # * `~/.aws/credentials`
85
+ # * `~/.aws/config`
86
+ # * EC2 IMDS instance profile - When used by default, the timeouts are
87
+ # very aggressive. Construct and pass an instance of
88
+ # `Aws::InstanceProfileCredentails` to enable retries and extended
89
+ # timeouts.
90
+ #
91
+ # @option options [required, String] :region
92
+ # The AWS region to connect to. The configured `:region` is
93
+ # used to determine the service `:endpoint`. When not passed,
94
+ # a default `:region` is search for in the following locations:
95
+ #
96
+ # * `Aws.config[:region]`
97
+ # * `ENV['AWS_REGION']`
98
+ # * `ENV['AMAZON_REGION']`
99
+ # * `ENV['AWS_DEFAULT_REGION']`
100
+ # * `~/.aws/credentials`
101
+ # * `~/.aws/config`
102
+ #
103
+ # @option options [String] :access_key_id
104
+ #
105
+ # @option options [Boolean] :active_endpoint_cache (false)
106
+ # When set to `true`, a thread polling for endpoints will be running in
107
+ # the background every 60 secs (default). Defaults to `false`.
108
+ #
109
+ # @option options [Boolean] :client_side_monitoring (false)
110
+ # When `true`, client-side metrics will be collected for all API requests from
111
+ # this client.
112
+ #
113
+ # @option options [String] :client_side_monitoring_client_id ("")
114
+ # Allows you to provide an identifier for this client which will be attached to
115
+ # all generated client side metrics. Defaults to an empty string.
116
+ #
117
+ # @option options [Integer] :client_side_monitoring_port (31000)
118
+ # Required for publishing client metrics. The port that the client side monitoring
119
+ # agent is running on, where client metrics will be published via UDP.
120
+ #
121
+ # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher)
122
+ # Allows you to provide a custom client-side monitoring publisher class. By default,
123
+ # will use the Client Side Monitoring Agent Publisher.
124
+ #
125
+ # @option options [Boolean] :convert_params (true)
126
+ # When `true`, an attempt is made to coerce request parameters into
127
+ # the required types.
128
+ #
129
+ # @option options [Boolean] :disable_host_prefix_injection (false)
130
+ # Set to true to disable SDK automatically adding host prefix
131
+ # to default service endpoint when available.
132
+ #
133
+ # @option options [String] :endpoint
134
+ # The client endpoint is normally constructed from the `:region`
135
+ # option. You should only configure an `:endpoint` when connecting
136
+ # to test endpoints. This should be avalid HTTP(S) URI.
137
+ #
138
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
139
+ # Used for the maximum size limit of the LRU cache storing endpoints data
140
+ # for endpoint discovery enabled operations. Defaults to 1000.
141
+ #
142
+ # @option options [Integer] :endpoint_cache_max_threads (10)
143
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
144
+ #
145
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
146
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
147
+ # Use this option to config the time interval in seconds for making
148
+ # requests fetching endpoints information. Defaults to 60 sec.
149
+ #
150
+ # @option options [Boolean] :endpoint_discovery (false)
151
+ # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
152
+ #
153
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
154
+ # The log formatter.
155
+ #
156
+ # @option options [Symbol] :log_level (:info)
157
+ # The log level to send messages to the `:logger` at.
158
+ #
159
+ # @option options [Logger] :logger
160
+ # The Logger instance to send log messages to. If this option
161
+ # is not set, logging will be disabled.
162
+ #
163
+ # @option options [String] :profile ("default")
164
+ # Used when loading credentials from the shared credentials file
165
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
166
+ #
167
+ # @option options [Float] :retry_base_delay (0.3)
168
+ # The base delay in seconds used by the default backoff function.
169
+ #
170
+ # @option options [Symbol] :retry_jitter (:none)
171
+ # A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number.
172
+ #
173
+ # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
174
+ #
175
+ # @option options [Integer] :retry_limit (3)
176
+ # The maximum number of times to retry failed requests. Only
177
+ # ~ 500 level server errors and certain ~ 400 level client errors
178
+ # are retried. Generally, these are throttling errors, data
179
+ # checksum errors, networking errors, timeout errors and auth
180
+ # errors from expired credentials.
181
+ #
182
+ # @option options [Integer] :retry_max_delay (0)
183
+ # The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function.
184
+ #
185
+ # @option options [String] :secret_access_key
186
+ #
187
+ # @option options [String] :session_token
188
+ #
189
+ # @option options [Boolean] :stub_responses (false)
190
+ # Causes the client to return stubbed responses. By default
191
+ # fake responses are generated and returned. You can specify
192
+ # the response data to return or errors to raise by calling
193
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
194
+ #
195
+ # ** Please note ** When response stubbing is enabled, no HTTP
196
+ # requests are made, and retries are disabled.
197
+ #
198
+ # @option options [Boolean] :validate_params (true)
199
+ # When `true`, request parameters are validated before
200
+ # sending the request.
201
+ #
202
+ def initialize(*args)
203
+ super
204
+ end
205
+
206
+ # @!group API Operations
207
+
208
+ # Adds metadata tags to an Amazon DocumentDB resource. You can use these
209
+ # tags with cost allocation reporting to track costs that are associated
210
+ # with Amazon DocumentDB resources. or in a `Condition` statement in an
211
+ # AWS Identity and Access Management (IAM) policy for Amazon DocumentDB.
212
+ #
213
+ # @option params [required, String] :resource_name
214
+ # The Amazon DocumentDB resource that the tags are added to. This value
215
+ # is an Amazon Resource Name (ARN).
216
+ #
217
+ # @option params [required, Array<Types::Tag>] :tags
218
+ # The tags to be assigned to the Amazon DocumentDB resource.
219
+ #
220
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
221
+ #
222
+ # @example Request syntax with placeholder values
223
+ #
224
+ # resp = client.add_tags_to_resource({
225
+ # resource_name: "String", # required
226
+ # tags: [ # required
227
+ # {
228
+ # key: "String",
229
+ # value: "String",
230
+ # },
231
+ # ],
232
+ # })
233
+ #
234
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/AddTagsToResource AWS API Documentation
235
+ #
236
+ # @overload add_tags_to_resource(params = {})
237
+ # @param [Hash] params ({})
238
+ def add_tags_to_resource(params = {}, options = {})
239
+ req = build_request(:add_tags_to_resource, params)
240
+ req.send_request(options)
241
+ end
242
+
243
+ # Applies a pending maintenance action to a resource (for example, to a
244
+ # DB instance).
245
+ #
246
+ # @option params [required, String] :resource_identifier
247
+ # The Amazon Resource Name (ARN) of the resource that the pending
248
+ # maintenance action applies to.
249
+ #
250
+ # @option params [required, String] :apply_action
251
+ # The pending maintenance action to apply to this resource.
252
+ #
253
+ # Valid values: `system-update`, `db-upgrade`
254
+ #
255
+ # @option params [required, String] :opt_in_type
256
+ # A value that specifies the type of opt-in request or undoes an opt-in
257
+ # request. An opt-in request of type `immediate` can't be undone.
258
+ #
259
+ # Valid values:
260
+ #
261
+ # * `immediate` - Apply the maintenance action immediately.
262
+ #
263
+ # * `next-maintenance` - Apply the maintenance action during the next
264
+ # maintenance window for the resource.
265
+ #
266
+ # * `undo-opt-in` - Cancel any existing `next-maintenance` opt-in
267
+ # requests.
268
+ #
269
+ # @return [Types::ApplyPendingMaintenanceActionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
270
+ #
271
+ # * {Types::ApplyPendingMaintenanceActionResult#resource_pending_maintenance_actions #resource_pending_maintenance_actions} => Types::ResourcePendingMaintenanceActions
272
+ #
273
+ # @example Request syntax with placeholder values
274
+ #
275
+ # resp = client.apply_pending_maintenance_action({
276
+ # resource_identifier: "String", # required
277
+ # apply_action: "String", # required
278
+ # opt_in_type: "String", # required
279
+ # })
280
+ #
281
+ # @example Response structure
282
+ #
283
+ # resp.resource_pending_maintenance_actions.resource_identifier #=> String
284
+ # resp.resource_pending_maintenance_actions.pending_maintenance_action_details #=> Array
285
+ # resp.resource_pending_maintenance_actions.pending_maintenance_action_details[0].action #=> String
286
+ # resp.resource_pending_maintenance_actions.pending_maintenance_action_details[0].auto_applied_after_date #=> Time
287
+ # resp.resource_pending_maintenance_actions.pending_maintenance_action_details[0].forced_apply_date #=> Time
288
+ # resp.resource_pending_maintenance_actions.pending_maintenance_action_details[0].opt_in_status #=> String
289
+ # resp.resource_pending_maintenance_actions.pending_maintenance_action_details[0].current_apply_date #=> Time
290
+ # resp.resource_pending_maintenance_actions.pending_maintenance_action_details[0].description #=> String
291
+ #
292
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/ApplyPendingMaintenanceAction AWS API Documentation
293
+ #
294
+ # @overload apply_pending_maintenance_action(params = {})
295
+ # @param [Hash] params ({})
296
+ def apply_pending_maintenance_action(params = {}, options = {})
297
+ req = build_request(:apply_pending_maintenance_action, params)
298
+ req.send_request(options)
299
+ end
300
+
301
+ # Copies the specified DB cluster parameter group.
302
+ #
303
+ # @option params [required, String] :source_db_cluster_parameter_group_identifier
304
+ # The identifier or Amazon Resource Name (ARN) for the source DB cluster
305
+ # parameter group.
306
+ #
307
+ # Constraints:
308
+ #
309
+ # * Must specify a valid DB cluster parameter group.
310
+ #
311
+ # * If the source DB cluster parameter group is in the same AWS Region
312
+ # as the copy, specify a valid DB parameter group identifier; for
313
+ # example, `my-db-cluster-param-group`, or a valid ARN.
314
+ #
315
+ # * If the source DB parameter group is in a different AWS Region than
316
+ # the copy, specify a valid DB cluster parameter group ARN; for
317
+ # example,
318
+ # `arn:aws:rds:us-east-1:123456789012:cluster-pg:custom-cluster-group1`.
319
+ #
320
+ # @option params [required, String] :target_db_cluster_parameter_group_identifier
321
+ # The identifier for the copied DB cluster parameter group.
322
+ #
323
+ # Constraints:
324
+ #
325
+ # * Cannot be null, empty, or blank.
326
+ #
327
+ # * Must contain from 1 to 255 letters, numbers, or hyphens.
328
+ #
329
+ # * The first character must be a letter.
330
+ #
331
+ # * Cannot end with a hyphen or contain two consecutive hyphens.
332
+ #
333
+ # Example: `my-cluster-param-group1`
334
+ #
335
+ # @option params [required, String] :target_db_cluster_parameter_group_description
336
+ # A description for the copied DB cluster parameter group.
337
+ #
338
+ # @option params [Array<Types::Tag>] :tags
339
+ # The tags that are to be assigned to the parameter group.
340
+ #
341
+ # @return [Types::CopyDBClusterParameterGroupResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
342
+ #
343
+ # * {Types::CopyDBClusterParameterGroupResult#db_cluster_parameter_group #db_cluster_parameter_group} => Types::DBClusterParameterGroup
344
+ #
345
+ # @example Request syntax with placeholder values
346
+ #
347
+ # resp = client.copy_db_cluster_parameter_group({
348
+ # source_db_cluster_parameter_group_identifier: "String", # required
349
+ # target_db_cluster_parameter_group_identifier: "String", # required
350
+ # target_db_cluster_parameter_group_description: "String", # required
351
+ # tags: [
352
+ # {
353
+ # key: "String",
354
+ # value: "String",
355
+ # },
356
+ # ],
357
+ # })
358
+ #
359
+ # @example Response structure
360
+ #
361
+ # resp.db_cluster_parameter_group.db_cluster_parameter_group_name #=> String
362
+ # resp.db_cluster_parameter_group.db_parameter_group_family #=> String
363
+ # resp.db_cluster_parameter_group.description #=> String
364
+ # resp.db_cluster_parameter_group.db_cluster_parameter_group_arn #=> String
365
+ #
366
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/CopyDBClusterParameterGroup AWS API Documentation
367
+ #
368
+ # @overload copy_db_cluster_parameter_group(params = {})
369
+ # @param [Hash] params ({})
370
+ def copy_db_cluster_parameter_group(params = {}, options = {})
371
+ req = build_request(:copy_db_cluster_parameter_group, params)
372
+ req.send_request(options)
373
+ end
374
+
375
+ # Copies a snapshot of a DB cluster.
376
+ #
377
+ # To copy a DB cluster snapshot from a shared manual DB cluster
378
+ # snapshot, `SourceDBClusterSnapshotIdentifier` must be the Amazon
379
+ # Resource Name (ARN) of the shared DB cluster snapshot.
380
+ #
381
+ # To cancel the copy operation after it is in progress, delete the
382
+ # target DB cluster snapshot identified by
383
+ # `TargetDBClusterSnapshotIdentifier` while that DB cluster snapshot is
384
+ # in the *copying* status.
385
+ #
386
+ # @option params [required, String] :source_db_cluster_snapshot_identifier
387
+ # The identifier of the DB cluster snapshot to copy. This parameter is
388
+ # not case sensitive.
389
+ #
390
+ # You can't copy an encrypted, shared DB cluster snapshot from one AWS
391
+ # Region to another.
392
+ #
393
+ # Constraints:
394
+ #
395
+ # * Must specify a valid system snapshot in the "available" state.
396
+ #
397
+ # * If the source snapshot is in the same AWS Region as the copy,
398
+ # specify a valid DB snapshot identifier.
399
+ #
400
+ # * If the source snapshot is in a different AWS Region than the copy,
401
+ # specify a valid DB cluster snapshot ARN.
402
+ #
403
+ # Example: `my-cluster-snapshot1`
404
+ #
405
+ # @option params [required, String] :target_db_cluster_snapshot_identifier
406
+ # The identifier of the new DB cluster snapshot to create from the
407
+ # source DB cluster snapshot. This parameter is not case sensitive.
408
+ #
409
+ # Constraints:
410
+ #
411
+ # * Must contain from 1 to 63 letters, numbers, or hyphens.
412
+ #
413
+ # * The first character must be a letter.
414
+ #
415
+ # * Cannot end with a hyphen or contain two consecutive hyphens.
416
+ #
417
+ # Example: `my-cluster-snapshot2`
418
+ #
419
+ # @option params [String] :kms_key_id
420
+ # The AWS KMS key ID for an encrypted DB cluster snapshot. The AWS KMS
421
+ # key ID is the Amazon Resource Name (ARN), AWS KMS key identifier, or
422
+ # the AWS KMS key alias for the AWS KMS encryption key.
423
+ #
424
+ # If you copy an encrypted DB cluster snapshot from your AWS account,
425
+ # you can specify a value for `KmsKeyId` to encrypt the copy with a new
426
+ # AWS KMS encryption key. If you don't specify a value for `KmsKeyId`,
427
+ # then the copy of the DB cluster snapshot is encrypted with the same
428
+ # AWS KMS key as the source DB cluster snapshot.
429
+ #
430
+ # If you copy an encrypted DB cluster snapshot that is shared from
431
+ # another AWS account, then you must specify a value for `KmsKeyId`.
432
+ #
433
+ # To copy an encrypted DB cluster snapshot to another AWS Region, set
434
+ # `KmsKeyId` to the AWS KMS key ID that you want to use to encrypt the
435
+ # copy of the DB cluster snapshot in the destination Region. AWS KMS
436
+ # encryption keys are specific to the AWS Region that they are created
437
+ # in, and you can't use encryption keys from one Region in another
438
+ # Region.
439
+ #
440
+ # If you copy an unencrypted DB cluster snapshot and specify a value for
441
+ # the `KmsKeyId` parameter, an error is returned.
442
+ #
443
+ # @option params [String] :pre_signed_url
444
+ # The URL that contains a Signature Version 4 signed request for the
445
+ # `CopyDBClusterSnapshot` API action in the AWS Region that contains the
446
+ # source DB cluster snapshot to copy. You must use the `PreSignedUrl`
447
+ # parameter when copying an encrypted DB cluster snapshot from another
448
+ # AWS Region.
449
+ #
450
+ # The presigned URL must be a valid request for the
451
+ # `CopyDBSClusterSnapshot` API action that can be executed in the source
452
+ # AWS Region that contains the encrypted DB cluster snapshot to be
453
+ # copied. The presigned URL request must contain the following parameter
454
+ # values:
455
+ #
456
+ # * `KmsKeyId` - The AWS KMS key identifier for the key to use to
457
+ # encrypt the copy of the DB cluster snapshot in the destination AWS
458
+ # Region. This is the same identifier for both the
459
+ # `CopyDBClusterSnapshot` action that is called in the destination AWS
460
+ # Region, and the action contained in the presigned URL.
461
+ #
462
+ # * `DestinationRegion` - The name of the AWS Region that the DB cluster
463
+ # snapshot will be created in.
464
+ #
465
+ # * `SourceDBClusterSnapshotIdentifier` - The DB cluster snapshot
466
+ # identifier for the encrypted DB cluster snapshot to be copied. This
467
+ # identifier must be in the Amazon Resource Name (ARN) format for the
468
+ # source AWS Region. For example, if you are copying an encrypted DB
469
+ # cluster snapshot from the us-west-2 AWS Region, then your
470
+ # `SourceDBClusterSnapshotIdentifier` looks like the following
471
+ # example:
472
+ # `arn:aws:rds:us-west-2:123456789012:cluster-snapshot:my-cluster-snapshot-20161115`.
473
+ #
474
+ # @option params [Boolean] :copy_tags
475
+ # Set to `true` to copy all tags from the source DB cluster snapshot to
476
+ # the target DB cluster snapshot, and otherwise `false`. The default is
477
+ # `false`.
478
+ #
479
+ # @option params [Array<Types::Tag>] :tags
480
+ # The tags to be assigned to the DB cluster snapshot.
481
+ #
482
+ # @return [Types::CopyDBClusterSnapshotResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
483
+ #
484
+ # * {Types::CopyDBClusterSnapshotResult#db_cluster_snapshot #db_cluster_snapshot} => Types::DBClusterSnapshot
485
+ #
486
+ # @example Request syntax with placeholder values
487
+ #
488
+ # resp = client.copy_db_cluster_snapshot({
489
+ # source_db_cluster_snapshot_identifier: "String", # required
490
+ # target_db_cluster_snapshot_identifier: "String", # required
491
+ # kms_key_id: "String",
492
+ # pre_signed_url: "String",
493
+ # copy_tags: false,
494
+ # tags: [
495
+ # {
496
+ # key: "String",
497
+ # value: "String",
498
+ # },
499
+ # ],
500
+ # })
501
+ #
502
+ # @example Response structure
503
+ #
504
+ # resp.db_cluster_snapshot.availability_zones #=> Array
505
+ # resp.db_cluster_snapshot.availability_zones[0] #=> String
506
+ # resp.db_cluster_snapshot.db_cluster_snapshot_identifier #=> String
507
+ # resp.db_cluster_snapshot.db_cluster_identifier #=> String
508
+ # resp.db_cluster_snapshot.snapshot_create_time #=> Time
509
+ # resp.db_cluster_snapshot.engine #=> String
510
+ # resp.db_cluster_snapshot.status #=> String
511
+ # resp.db_cluster_snapshot.port #=> Integer
512
+ # resp.db_cluster_snapshot.vpc_id #=> String
513
+ # resp.db_cluster_snapshot.cluster_create_time #=> Time
514
+ # resp.db_cluster_snapshot.master_username #=> String
515
+ # resp.db_cluster_snapshot.engine_version #=> String
516
+ # resp.db_cluster_snapshot.snapshot_type #=> String
517
+ # resp.db_cluster_snapshot.percent_progress #=> Integer
518
+ # resp.db_cluster_snapshot.storage_encrypted #=> Boolean
519
+ # resp.db_cluster_snapshot.kms_key_id #=> String
520
+ # resp.db_cluster_snapshot.db_cluster_snapshot_arn #=> String
521
+ # resp.db_cluster_snapshot.source_db_cluster_snapshot_arn #=> String
522
+ #
523
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/CopyDBClusterSnapshot AWS API Documentation
524
+ #
525
+ # @overload copy_db_cluster_snapshot(params = {})
526
+ # @param [Hash] params ({})
527
+ def copy_db_cluster_snapshot(params = {}, options = {})
528
+ req = build_request(:copy_db_cluster_snapshot, params)
529
+ req.send_request(options)
530
+ end
531
+
532
+ # Creates a new Amazon DocumentDB DB cluster.
533
+ #
534
+ # @option params [Array<String>] :availability_zones
535
+ # A list of Amazon EC2 Availability Zones that instances in the DB
536
+ # cluster can be created in.
537
+ #
538
+ # @option params [Integer] :backup_retention_period
539
+ # The number of days for which automated backups are retained. You must
540
+ # specify a minimum value of 1.
541
+ #
542
+ # Default: 1
543
+ #
544
+ # Constraints:
545
+ #
546
+ # * Must be a value from 1 to 35.
547
+ #
548
+ # ^
549
+ #
550
+ # @option params [required, String] :db_cluster_identifier
551
+ # The DB cluster identifier. This parameter is stored as a lowercase
552
+ # string.
553
+ #
554
+ # Constraints:
555
+ #
556
+ # * Must contain from 1 to 63 letters, numbers, or hyphens.
557
+ #
558
+ # * The first character must be a letter.
559
+ #
560
+ # * Cannot end with a hyphen or contain two consecutive hyphens.
561
+ #
562
+ # Example: `my-cluster`
563
+ #
564
+ # @option params [String] :db_cluster_parameter_group_name
565
+ # The name of the DB cluster parameter group to associate with this DB
566
+ # cluster.
567
+ #
568
+ # @option params [Array<String>] :vpc_security_group_ids
569
+ # A list of EC2 VPC security groups to associate with this DB cluster.
570
+ #
571
+ # @option params [String] :db_subnet_group_name
572
+ # A DB subnet group to associate with this DB cluster.
573
+ #
574
+ # Constraints: Must match the name of an existing `DBSubnetGroup`. Must
575
+ # not be default.
576
+ #
577
+ # Example: `mySubnetgroup`
578
+ #
579
+ # @option params [required, String] :engine
580
+ # The name of the database engine to be used for this DB cluster.
581
+ #
582
+ # Valid values: `docdb`
583
+ #
584
+ # @option params [String] :engine_version
585
+ # The version number of the database engine to use.
586
+ #
587
+ # @option params [Integer] :port
588
+ # The port number on which the instances in the DB cluster accept
589
+ # connections.
590
+ #
591
+ # @option params [String] :master_username
592
+ # The name of the master user for the DB cluster.
593
+ #
594
+ # Constraints:
595
+ #
596
+ # * Must be from 1 to 16 letters or numbers.
597
+ #
598
+ # * The first character must be a letter.
599
+ #
600
+ # * Cannot be a reserved word for the chosen database engine.
601
+ #
602
+ # @option params [String] :master_user_password
603
+ # The password for the master database user. This password can contain
604
+ # any printable ASCII character except "/", """, or "@".
605
+ #
606
+ # Constraints: Must contain from 8 to 41 characters.
607
+ #
608
+ # @option params [String] :preferred_backup_window
609
+ # The daily time range during which automated backups are created if
610
+ # automated backups are enabled using the `BackupRetentionPeriod`
611
+ # parameter.
612
+ #
613
+ # The default is a 30-minute window selected at random from an 8-hour
614
+ # block of time for each AWS Region.
615
+ #
616
+ # Constraints:
617
+ #
618
+ # * Must be in the format `hh24:mi-hh24:mi`.
619
+ #
620
+ # * Must be in Universal Coordinated Time (UTC).
621
+ #
622
+ # * Must not conflict with the preferred maintenance window.
623
+ #
624
+ # * Must be at least 30 minutes.
625
+ #
626
+ # @option params [String] :preferred_maintenance_window
627
+ # The weekly time range during which system maintenance can occur, in
628
+ # Universal Coordinated Time (UTC).
629
+ #
630
+ # Format: `ddd:hh24:mi-ddd:hh24:mi`
631
+ #
632
+ # The default is a 30-minute window selected at random from an 8-hour
633
+ # block of time for each AWS Region, occurring on a random day of the
634
+ # week.
635
+ #
636
+ # Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun
637
+ #
638
+ # Constraints: Minimum 30-minute window.
639
+ #
640
+ # @option params [Array<Types::Tag>] :tags
641
+ # The tags to be assigned to the DB cluster.
642
+ #
643
+ # @option params [Boolean] :storage_encrypted
644
+ # Specifies whether the DB cluster is encrypted.
645
+ #
646
+ # @option params [String] :kms_key_id
647
+ # The AWS KMS key identifier for an encrypted DB cluster.
648
+ #
649
+ # The AWS KMS key identifier is the Amazon Resource Name (ARN) for the
650
+ # AWS KMS encryption key. If you are creating a DB cluster using the
651
+ # same AWS account that owns the AWS KMS encryption key that is used to
652
+ # encrypt the new DB cluster, you can use the AWS KMS key alias instead
653
+ # of the ARN for the AWS KMS encryption key.
654
+ #
655
+ # If an encryption key is not specified in `KmsKeyId`\:
656
+ #
657
+ # * If `ReplicationSourceIdentifier` identifies an encrypted source,
658
+ # then Amazon DocumentDB uses the encryption key that is used to
659
+ # encrypt the source. Otherwise, Amazon DocumentDB uses your default
660
+ # encryption key.
661
+ #
662
+ # * If the `StorageEncrypted` parameter is `true` and
663
+ # `ReplicationSourceIdentifier` is not specified, Amazon DocumentDB
664
+ # uses your default encryption key.
665
+ #
666
+ # AWS KMS creates the default encryption key for your AWS account. Your
667
+ # AWS account has a different default encryption key for each AWS
668
+ # Region.
669
+ #
670
+ # If you create a replica of an encrypted DB cluster in another AWS
671
+ # Region, you must set `KmsKeyId` to a KMS key ID that is valid in the
672
+ # destination AWS Region. This key is used to encrypt the replica in
673
+ # that AWS Region.
674
+ #
675
+ # @option params [Array<String>] :enable_cloudwatch_logs_exports
676
+ # A list of log types that need to be enabled for exporting to Amazon
677
+ # CloudWatch Logs.
678
+ #
679
+ # @return [Types::CreateDBClusterResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
680
+ #
681
+ # * {Types::CreateDBClusterResult#db_cluster #db_cluster} => Types::DBCluster
682
+ #
683
+ # @example Request syntax with placeholder values
684
+ #
685
+ # resp = client.create_db_cluster({
686
+ # availability_zones: ["String"],
687
+ # backup_retention_period: 1,
688
+ # db_cluster_identifier: "String", # required
689
+ # db_cluster_parameter_group_name: "String",
690
+ # vpc_security_group_ids: ["String"],
691
+ # db_subnet_group_name: "String",
692
+ # engine: "String", # required
693
+ # engine_version: "String",
694
+ # port: 1,
695
+ # master_username: "String",
696
+ # master_user_password: "String",
697
+ # preferred_backup_window: "String",
698
+ # preferred_maintenance_window: "String",
699
+ # tags: [
700
+ # {
701
+ # key: "String",
702
+ # value: "String",
703
+ # },
704
+ # ],
705
+ # storage_encrypted: false,
706
+ # kms_key_id: "String",
707
+ # enable_cloudwatch_logs_exports: ["String"],
708
+ # })
709
+ #
710
+ # @example Response structure
711
+ #
712
+ # resp.db_cluster.availability_zones #=> Array
713
+ # resp.db_cluster.availability_zones[0] #=> String
714
+ # resp.db_cluster.backup_retention_period #=> Integer
715
+ # resp.db_cluster.db_cluster_identifier #=> String
716
+ # resp.db_cluster.db_cluster_parameter_group #=> String
717
+ # resp.db_cluster.db_subnet_group #=> String
718
+ # resp.db_cluster.status #=> String
719
+ # resp.db_cluster.percent_progress #=> String
720
+ # resp.db_cluster.earliest_restorable_time #=> Time
721
+ # resp.db_cluster.endpoint #=> String
722
+ # resp.db_cluster.reader_endpoint #=> String
723
+ # resp.db_cluster.multi_az #=> Boolean
724
+ # resp.db_cluster.engine #=> String
725
+ # resp.db_cluster.engine_version #=> String
726
+ # resp.db_cluster.latest_restorable_time #=> Time
727
+ # resp.db_cluster.port #=> Integer
728
+ # resp.db_cluster.master_username #=> String
729
+ # resp.db_cluster.preferred_backup_window #=> String
730
+ # resp.db_cluster.preferred_maintenance_window #=> String
731
+ # resp.db_cluster.db_cluster_members #=> Array
732
+ # resp.db_cluster.db_cluster_members[0].db_instance_identifier #=> String
733
+ # resp.db_cluster.db_cluster_members[0].is_cluster_writer #=> Boolean
734
+ # resp.db_cluster.db_cluster_members[0].db_cluster_parameter_group_status #=> String
735
+ # resp.db_cluster.db_cluster_members[0].promotion_tier #=> Integer
736
+ # resp.db_cluster.vpc_security_groups #=> Array
737
+ # resp.db_cluster.vpc_security_groups[0].vpc_security_group_id #=> String
738
+ # resp.db_cluster.vpc_security_groups[0].status #=> String
739
+ # resp.db_cluster.hosted_zone_id #=> String
740
+ # resp.db_cluster.storage_encrypted #=> Boolean
741
+ # resp.db_cluster.kms_key_id #=> String
742
+ # resp.db_cluster.db_cluster_resource_id #=> String
743
+ # resp.db_cluster.db_cluster_arn #=> String
744
+ # resp.db_cluster.associated_roles #=> Array
745
+ # resp.db_cluster.associated_roles[0].role_arn #=> String
746
+ # resp.db_cluster.associated_roles[0].status #=> String
747
+ # resp.db_cluster.cluster_create_time #=> Time
748
+ # resp.db_cluster.enabled_cloudwatch_logs_exports #=> Array
749
+ # resp.db_cluster.enabled_cloudwatch_logs_exports[0] #=> String
750
+ #
751
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/CreateDBCluster AWS API Documentation
752
+ #
753
+ # @overload create_db_cluster(params = {})
754
+ # @param [Hash] params ({})
755
+ def create_db_cluster(params = {}, options = {})
756
+ req = build_request(:create_db_cluster, params)
757
+ req.send_request(options)
758
+ end
759
+
760
+ # Creates a new DB cluster parameter group.
761
+ #
762
+ # Parameters in a DB cluster parameter group apply to all of the
763
+ # instances in a DB cluster.
764
+ #
765
+ # A DB cluster parameter group is initially created with the default
766
+ # parameters for the database engine used by instances in the DB
767
+ # cluster. To provide custom values for any of the parameters, you must
768
+ # modify the group after you create it. After you create a DB cluster
769
+ # parameter group, you must associate it with your DB cluster. For the
770
+ # new DB cluster parameter group and associated settings to take effect,
771
+ # you must then reboot the DB instances in the DB cluster without
772
+ # failover.
773
+ #
774
+ # After you create a DB cluster parameter group, you should wait at
775
+ # least 5 minutes before creating your first DB cluster that uses that
776
+ # DB cluster parameter group as the default parameter group. This allows
777
+ # Amazon DocumentDB to fully complete the create action before the DB
778
+ # cluster parameter group is used as the default for a new DB cluster.
779
+ # This step is especially important for parameters that are critical
780
+ # when creating the default database for a DB cluster, such as the
781
+ # character set for the default database defined by the
782
+ # `character_set_database` parameter.
783
+ #
784
+ # @option params [required, String] :db_cluster_parameter_group_name
785
+ # The name of the DB cluster parameter group.
786
+ #
787
+ # Constraints:
788
+ #
789
+ # * Must match the name of an existing `DBClusterParameterGroup`.
790
+ #
791
+ # ^
792
+ #
793
+ # <note markdown="1"> This value is stored as a lowercase string.
794
+ #
795
+ # </note>
796
+ #
797
+ # @option params [required, String] :db_parameter_group_family
798
+ # The DB cluster parameter group family name.
799
+ #
800
+ # @option params [required, String] :description
801
+ # The description for the DB cluster parameter group.
802
+ #
803
+ # @option params [Array<Types::Tag>] :tags
804
+ # The tags to be assigned to the DB cluster parameter group.
805
+ #
806
+ # @return [Types::CreateDBClusterParameterGroupResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
807
+ #
808
+ # * {Types::CreateDBClusterParameterGroupResult#db_cluster_parameter_group #db_cluster_parameter_group} => Types::DBClusterParameterGroup
809
+ #
810
+ # @example Request syntax with placeholder values
811
+ #
812
+ # resp = client.create_db_cluster_parameter_group({
813
+ # db_cluster_parameter_group_name: "String", # required
814
+ # db_parameter_group_family: "String", # required
815
+ # description: "String", # required
816
+ # tags: [
817
+ # {
818
+ # key: "String",
819
+ # value: "String",
820
+ # },
821
+ # ],
822
+ # })
823
+ #
824
+ # @example Response structure
825
+ #
826
+ # resp.db_cluster_parameter_group.db_cluster_parameter_group_name #=> String
827
+ # resp.db_cluster_parameter_group.db_parameter_group_family #=> String
828
+ # resp.db_cluster_parameter_group.description #=> String
829
+ # resp.db_cluster_parameter_group.db_cluster_parameter_group_arn #=> String
830
+ #
831
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/CreateDBClusterParameterGroup AWS API Documentation
832
+ #
833
+ # @overload create_db_cluster_parameter_group(params = {})
834
+ # @param [Hash] params ({})
835
+ def create_db_cluster_parameter_group(params = {}, options = {})
836
+ req = build_request(:create_db_cluster_parameter_group, params)
837
+ req.send_request(options)
838
+ end
839
+
840
+ # Creates a snapshot of a DB cluster.
841
+ #
842
+ # @option params [required, String] :db_cluster_snapshot_identifier
843
+ # The identifier of the DB cluster snapshot. This parameter is stored as
844
+ # a lowercase string.
845
+ #
846
+ # Constraints:
847
+ #
848
+ # * Must contain from 1 to 63 letters, numbers, or hyphens.
849
+ #
850
+ # * The first character must be a letter.
851
+ #
852
+ # * Cannot end with a hyphen or contain two consecutive hyphens.
853
+ #
854
+ # Example: `my-cluster-snapshot1`
855
+ #
856
+ # @option params [required, String] :db_cluster_identifier
857
+ # The identifier of the DB cluster to create a snapshot for. This
858
+ # parameter is not case sensitive.
859
+ #
860
+ # Constraints:
861
+ #
862
+ # * Must match the identifier of an existing `DBCluster`.
863
+ #
864
+ # ^
865
+ #
866
+ # Example: `my-cluster`
867
+ #
868
+ # @option params [Array<Types::Tag>] :tags
869
+ # The tags to be assigned to the DB cluster snapshot.
870
+ #
871
+ # @return [Types::CreateDBClusterSnapshotResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
872
+ #
873
+ # * {Types::CreateDBClusterSnapshotResult#db_cluster_snapshot #db_cluster_snapshot} => Types::DBClusterSnapshot
874
+ #
875
+ # @example Request syntax with placeholder values
876
+ #
877
+ # resp = client.create_db_cluster_snapshot({
878
+ # db_cluster_snapshot_identifier: "String", # required
879
+ # db_cluster_identifier: "String", # required
880
+ # tags: [
881
+ # {
882
+ # key: "String",
883
+ # value: "String",
884
+ # },
885
+ # ],
886
+ # })
887
+ #
888
+ # @example Response structure
889
+ #
890
+ # resp.db_cluster_snapshot.availability_zones #=> Array
891
+ # resp.db_cluster_snapshot.availability_zones[0] #=> String
892
+ # resp.db_cluster_snapshot.db_cluster_snapshot_identifier #=> String
893
+ # resp.db_cluster_snapshot.db_cluster_identifier #=> String
894
+ # resp.db_cluster_snapshot.snapshot_create_time #=> Time
895
+ # resp.db_cluster_snapshot.engine #=> String
896
+ # resp.db_cluster_snapshot.status #=> String
897
+ # resp.db_cluster_snapshot.port #=> Integer
898
+ # resp.db_cluster_snapshot.vpc_id #=> String
899
+ # resp.db_cluster_snapshot.cluster_create_time #=> Time
900
+ # resp.db_cluster_snapshot.master_username #=> String
901
+ # resp.db_cluster_snapshot.engine_version #=> String
902
+ # resp.db_cluster_snapshot.snapshot_type #=> String
903
+ # resp.db_cluster_snapshot.percent_progress #=> Integer
904
+ # resp.db_cluster_snapshot.storage_encrypted #=> Boolean
905
+ # resp.db_cluster_snapshot.kms_key_id #=> String
906
+ # resp.db_cluster_snapshot.db_cluster_snapshot_arn #=> String
907
+ # resp.db_cluster_snapshot.source_db_cluster_snapshot_arn #=> String
908
+ #
909
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/CreateDBClusterSnapshot AWS API Documentation
910
+ #
911
+ # @overload create_db_cluster_snapshot(params = {})
912
+ # @param [Hash] params ({})
913
+ def create_db_cluster_snapshot(params = {}, options = {})
914
+ req = build_request(:create_db_cluster_snapshot, params)
915
+ req.send_request(options)
916
+ end
917
+
918
+ # Creates a new DB instance.
919
+ #
920
+ # @option params [required, String] :db_instance_identifier
921
+ # The DB instance identifier. This parameter is stored as a lowercase
922
+ # string.
923
+ #
924
+ # Constraints:
925
+ #
926
+ # * Must contain from 1 to 63 letters, numbers, or hyphens.
927
+ #
928
+ # * The first character must be a letter.
929
+ #
930
+ # * Cannot end with a hyphen or contain two consecutive hyphens.
931
+ #
932
+ # Example: `mydbinstance`
933
+ #
934
+ # @option params [required, String] :db_instance_class
935
+ # The compute and memory capacity of the DB instance; for example,
936
+ # `db.m4.large`.
937
+ #
938
+ # @option params [required, String] :engine
939
+ # The name of the database engine to be used for this instance.
940
+ #
941
+ # Valid value: `docdb`
942
+ #
943
+ # @option params [String] :availability_zone
944
+ # The Amazon EC2 Availability Zone that the DB instance is created in.
945
+ #
946
+ # Default: A random, system-chosen Availability Zone in the endpoint's
947
+ # AWS Region.
948
+ #
949
+ # Example: `us-east-1d`
950
+ #
951
+ # Constraint: The `AvailabilityZone` parameter can't be specified if
952
+ # the `MultiAZ` parameter is set to `true`. The specified Availability
953
+ # Zone must be in the same AWS Region as the current endpoint.
954
+ #
955
+ # @option params [String] :preferred_maintenance_window
956
+ # The time range each week during which system maintenance can occur, in
957
+ # Universal Coordinated Time (UTC).
958
+ #
959
+ # Format: `ddd:hh24:mi-ddd:hh24:mi`
960
+ #
961
+ # The default is a 30-minute window selected at random from an 8-hour
962
+ # block of time for each AWS Region, occurring on a random day of the
963
+ # week.
964
+ #
965
+ # Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun
966
+ #
967
+ # Constraints: Minimum 30-minute window.
968
+ #
969
+ # @option params [Boolean] :auto_minor_version_upgrade
970
+ # Indicates that minor engine upgrades are applied automatically to the
971
+ # DB instance during the maintenance window.
972
+ #
973
+ # Default: `true`
974
+ #
975
+ # @option params [Array<Types::Tag>] :tags
976
+ # The tags to be assigned to the DB instance.
977
+ #
978
+ # @option params [required, String] :db_cluster_identifier
979
+ # The identifier of the DB cluster that the instance will belong to.
980
+ #
981
+ # @option params [Integer] :promotion_tier
982
+ # A value that specifies the order in which an Amazon DocumentDB replica
983
+ # is promoted to the primary instance after a failure of the existing
984
+ # primary instance.
985
+ #
986
+ # Default: 1
987
+ #
988
+ # Valid values: 0-15
989
+ #
990
+ # @return [Types::CreateDBInstanceResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
991
+ #
992
+ # * {Types::CreateDBInstanceResult#db_instance #db_instance} => Types::DBInstance
993
+ #
994
+ # @example Request syntax with placeholder values
995
+ #
996
+ # resp = client.create_db_instance({
997
+ # db_instance_identifier: "String", # required
998
+ # db_instance_class: "String", # required
999
+ # engine: "String", # required
1000
+ # availability_zone: "String",
1001
+ # preferred_maintenance_window: "String",
1002
+ # auto_minor_version_upgrade: false,
1003
+ # tags: [
1004
+ # {
1005
+ # key: "String",
1006
+ # value: "String",
1007
+ # },
1008
+ # ],
1009
+ # db_cluster_identifier: "String", # required
1010
+ # promotion_tier: 1,
1011
+ # })
1012
+ #
1013
+ # @example Response structure
1014
+ #
1015
+ # resp.db_instance.db_instance_identifier #=> String
1016
+ # resp.db_instance.db_instance_class #=> String
1017
+ # resp.db_instance.engine #=> String
1018
+ # resp.db_instance.db_instance_status #=> String
1019
+ # resp.db_instance.endpoint.address #=> String
1020
+ # resp.db_instance.endpoint.port #=> Integer
1021
+ # resp.db_instance.endpoint.hosted_zone_id #=> String
1022
+ # resp.db_instance.instance_create_time #=> Time
1023
+ # resp.db_instance.preferred_backup_window #=> String
1024
+ # resp.db_instance.backup_retention_period #=> Integer
1025
+ # resp.db_instance.vpc_security_groups #=> Array
1026
+ # resp.db_instance.vpc_security_groups[0].vpc_security_group_id #=> String
1027
+ # resp.db_instance.vpc_security_groups[0].status #=> String
1028
+ # resp.db_instance.availability_zone #=> String
1029
+ # resp.db_instance.db_subnet_group.db_subnet_group_name #=> String
1030
+ # resp.db_instance.db_subnet_group.db_subnet_group_description #=> String
1031
+ # resp.db_instance.db_subnet_group.vpc_id #=> String
1032
+ # resp.db_instance.db_subnet_group.subnet_group_status #=> String
1033
+ # resp.db_instance.db_subnet_group.subnets #=> Array
1034
+ # resp.db_instance.db_subnet_group.subnets[0].subnet_identifier #=> String
1035
+ # resp.db_instance.db_subnet_group.subnets[0].subnet_availability_zone.name #=> String
1036
+ # resp.db_instance.db_subnet_group.subnets[0].subnet_status #=> String
1037
+ # resp.db_instance.db_subnet_group.db_subnet_group_arn #=> String
1038
+ # resp.db_instance.preferred_maintenance_window #=> String
1039
+ # resp.db_instance.pending_modified_values.db_instance_class #=> String
1040
+ # resp.db_instance.pending_modified_values.allocated_storage #=> Integer
1041
+ # resp.db_instance.pending_modified_values.master_user_password #=> String
1042
+ # resp.db_instance.pending_modified_values.port #=> Integer
1043
+ # resp.db_instance.pending_modified_values.backup_retention_period #=> Integer
1044
+ # resp.db_instance.pending_modified_values.multi_az #=> Boolean
1045
+ # resp.db_instance.pending_modified_values.engine_version #=> String
1046
+ # resp.db_instance.pending_modified_values.license_model #=> String
1047
+ # resp.db_instance.pending_modified_values.iops #=> Integer
1048
+ # resp.db_instance.pending_modified_values.db_instance_identifier #=> String
1049
+ # resp.db_instance.pending_modified_values.storage_type #=> String
1050
+ # resp.db_instance.pending_modified_values.ca_certificate_identifier #=> String
1051
+ # resp.db_instance.pending_modified_values.db_subnet_group_name #=> String
1052
+ # resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
1053
+ # resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
1054
+ # resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
1055
+ # resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
1056
+ # resp.db_instance.latest_restorable_time #=> Time
1057
+ # resp.db_instance.engine_version #=> String
1058
+ # resp.db_instance.auto_minor_version_upgrade #=> Boolean
1059
+ # resp.db_instance.publicly_accessible #=> Boolean
1060
+ # resp.db_instance.status_infos #=> Array
1061
+ # resp.db_instance.status_infos[0].status_type #=> String
1062
+ # resp.db_instance.status_infos[0].normal #=> Boolean
1063
+ # resp.db_instance.status_infos[0].status #=> String
1064
+ # resp.db_instance.status_infos[0].message #=> String
1065
+ # resp.db_instance.db_cluster_identifier #=> String
1066
+ # resp.db_instance.storage_encrypted #=> Boolean
1067
+ # resp.db_instance.kms_key_id #=> String
1068
+ # resp.db_instance.dbi_resource_id #=> String
1069
+ # resp.db_instance.promotion_tier #=> Integer
1070
+ # resp.db_instance.db_instance_arn #=> String
1071
+ # resp.db_instance.enabled_cloudwatch_logs_exports #=> Array
1072
+ # resp.db_instance.enabled_cloudwatch_logs_exports[0] #=> String
1073
+ #
1074
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/CreateDBInstance AWS API Documentation
1075
+ #
1076
+ # @overload create_db_instance(params = {})
1077
+ # @param [Hash] params ({})
1078
+ def create_db_instance(params = {}, options = {})
1079
+ req = build_request(:create_db_instance, params)
1080
+ req.send_request(options)
1081
+ end
1082
+
1083
+ # Creates a new DB subnet group. DB subnet groups must contain at least
1084
+ # one subnet in at least two Availability Zones in the AWS Region.
1085
+ #
1086
+ # @option params [required, String] :db_subnet_group_name
1087
+ # The name for the DB subnet group. This value is stored as a lowercase
1088
+ # string.
1089
+ #
1090
+ # Constraints: Must contain no more than 255 letters, numbers, periods,
1091
+ # underscores, spaces, or hyphens. Must not be default.
1092
+ #
1093
+ # Example: `mySubnetgroup`
1094
+ #
1095
+ # @option params [required, String] :db_subnet_group_description
1096
+ # The description for the DB subnet group.
1097
+ #
1098
+ # @option params [required, Array<String>] :subnet_ids
1099
+ # The Amazon EC2 subnet IDs for the DB subnet group.
1100
+ #
1101
+ # @option params [Array<Types::Tag>] :tags
1102
+ # The tags to be assigned to the DB subnet group.
1103
+ #
1104
+ # @return [Types::CreateDBSubnetGroupResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1105
+ #
1106
+ # * {Types::CreateDBSubnetGroupResult#db_subnet_group #db_subnet_group} => Types::DBSubnetGroup
1107
+ #
1108
+ # @example Request syntax with placeholder values
1109
+ #
1110
+ # resp = client.create_db_subnet_group({
1111
+ # db_subnet_group_name: "String", # required
1112
+ # db_subnet_group_description: "String", # required
1113
+ # subnet_ids: ["String"], # required
1114
+ # tags: [
1115
+ # {
1116
+ # key: "String",
1117
+ # value: "String",
1118
+ # },
1119
+ # ],
1120
+ # })
1121
+ #
1122
+ # @example Response structure
1123
+ #
1124
+ # resp.db_subnet_group.db_subnet_group_name #=> String
1125
+ # resp.db_subnet_group.db_subnet_group_description #=> String
1126
+ # resp.db_subnet_group.vpc_id #=> String
1127
+ # resp.db_subnet_group.subnet_group_status #=> String
1128
+ # resp.db_subnet_group.subnets #=> Array
1129
+ # resp.db_subnet_group.subnets[0].subnet_identifier #=> String
1130
+ # resp.db_subnet_group.subnets[0].subnet_availability_zone.name #=> String
1131
+ # resp.db_subnet_group.subnets[0].subnet_status #=> String
1132
+ # resp.db_subnet_group.db_subnet_group_arn #=> String
1133
+ #
1134
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/CreateDBSubnetGroup AWS API Documentation
1135
+ #
1136
+ # @overload create_db_subnet_group(params = {})
1137
+ # @param [Hash] params ({})
1138
+ def create_db_subnet_group(params = {}, options = {})
1139
+ req = build_request(:create_db_subnet_group, params)
1140
+ req.send_request(options)
1141
+ end
1142
+
1143
+ # Deletes a previously provisioned DB cluster. When you delete a DB
1144
+ # cluster, all automated backups for that DB cluster are deleted and
1145
+ # can't be recovered. Manual DB cluster snapshots of the specified DB
1146
+ # cluster are not deleted.
1147
+ #
1148
+ # @option params [required, String] :db_cluster_identifier
1149
+ # The DB cluster identifier for the DB cluster to be deleted. This
1150
+ # parameter isn't case sensitive.
1151
+ #
1152
+ # Constraints:
1153
+ #
1154
+ # * Must match an existing `DBClusterIdentifier`.
1155
+ #
1156
+ # ^
1157
+ #
1158
+ # @option params [Boolean] :skip_final_snapshot
1159
+ # Determines whether a final DB cluster snapshot is created before the
1160
+ # DB cluster is deleted. If `true` is specified, no DB cluster snapshot
1161
+ # is created. If `false` is specified, a DB cluster snapshot is created
1162
+ # before the DB cluster is deleted.
1163
+ #
1164
+ # <note markdown="1"> If `SkipFinalSnapshot` is `false`, you must specify a
1165
+ # `FinalDBSnapshotIdentifier` parameter.
1166
+ #
1167
+ # </note>
1168
+ #
1169
+ # Default: `false`
1170
+ #
1171
+ # @option params [String] :final_db_snapshot_identifier
1172
+ # The DB cluster snapshot identifier of the new DB cluster snapshot
1173
+ # created when `SkipFinalSnapshot` is set to `false`.
1174
+ #
1175
+ # <note markdown="1"> Specifying this parameter and also setting the `SkipFinalShapshot`
1176
+ # parameter to `true` results in an error.
1177
+ #
1178
+ # </note>
1179
+ #
1180
+ # Constraints:
1181
+ #
1182
+ # * Must be from 1 to 255 letters, numbers, or hyphens.
1183
+ #
1184
+ # * The first character must be a letter.
1185
+ #
1186
+ # * Cannot end with a hyphen or contain two consecutive hyphens.
1187
+ #
1188
+ # @return [Types::DeleteDBClusterResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1189
+ #
1190
+ # * {Types::DeleteDBClusterResult#db_cluster #db_cluster} => Types::DBCluster
1191
+ #
1192
+ # @example Request syntax with placeholder values
1193
+ #
1194
+ # resp = client.delete_db_cluster({
1195
+ # db_cluster_identifier: "String", # required
1196
+ # skip_final_snapshot: false,
1197
+ # final_db_snapshot_identifier: "String",
1198
+ # })
1199
+ #
1200
+ # @example Response structure
1201
+ #
1202
+ # resp.db_cluster.availability_zones #=> Array
1203
+ # resp.db_cluster.availability_zones[0] #=> String
1204
+ # resp.db_cluster.backup_retention_period #=> Integer
1205
+ # resp.db_cluster.db_cluster_identifier #=> String
1206
+ # resp.db_cluster.db_cluster_parameter_group #=> String
1207
+ # resp.db_cluster.db_subnet_group #=> String
1208
+ # resp.db_cluster.status #=> String
1209
+ # resp.db_cluster.percent_progress #=> String
1210
+ # resp.db_cluster.earliest_restorable_time #=> Time
1211
+ # resp.db_cluster.endpoint #=> String
1212
+ # resp.db_cluster.reader_endpoint #=> String
1213
+ # resp.db_cluster.multi_az #=> Boolean
1214
+ # resp.db_cluster.engine #=> String
1215
+ # resp.db_cluster.engine_version #=> String
1216
+ # resp.db_cluster.latest_restorable_time #=> Time
1217
+ # resp.db_cluster.port #=> Integer
1218
+ # resp.db_cluster.master_username #=> String
1219
+ # resp.db_cluster.preferred_backup_window #=> String
1220
+ # resp.db_cluster.preferred_maintenance_window #=> String
1221
+ # resp.db_cluster.db_cluster_members #=> Array
1222
+ # resp.db_cluster.db_cluster_members[0].db_instance_identifier #=> String
1223
+ # resp.db_cluster.db_cluster_members[0].is_cluster_writer #=> Boolean
1224
+ # resp.db_cluster.db_cluster_members[0].db_cluster_parameter_group_status #=> String
1225
+ # resp.db_cluster.db_cluster_members[0].promotion_tier #=> Integer
1226
+ # resp.db_cluster.vpc_security_groups #=> Array
1227
+ # resp.db_cluster.vpc_security_groups[0].vpc_security_group_id #=> String
1228
+ # resp.db_cluster.vpc_security_groups[0].status #=> String
1229
+ # resp.db_cluster.hosted_zone_id #=> String
1230
+ # resp.db_cluster.storage_encrypted #=> Boolean
1231
+ # resp.db_cluster.kms_key_id #=> String
1232
+ # resp.db_cluster.db_cluster_resource_id #=> String
1233
+ # resp.db_cluster.db_cluster_arn #=> String
1234
+ # resp.db_cluster.associated_roles #=> Array
1235
+ # resp.db_cluster.associated_roles[0].role_arn #=> String
1236
+ # resp.db_cluster.associated_roles[0].status #=> String
1237
+ # resp.db_cluster.cluster_create_time #=> Time
1238
+ # resp.db_cluster.enabled_cloudwatch_logs_exports #=> Array
1239
+ # resp.db_cluster.enabled_cloudwatch_logs_exports[0] #=> String
1240
+ #
1241
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DeleteDBCluster AWS API Documentation
1242
+ #
1243
+ # @overload delete_db_cluster(params = {})
1244
+ # @param [Hash] params ({})
1245
+ def delete_db_cluster(params = {}, options = {})
1246
+ req = build_request(:delete_db_cluster, params)
1247
+ req.send_request(options)
1248
+ end
1249
+
1250
+ # Deletes a specified DB cluster parameter group. The DB cluster
1251
+ # parameter group to be deleted can't be associated with any DB
1252
+ # clusters.
1253
+ #
1254
+ # @option params [required, String] :db_cluster_parameter_group_name
1255
+ # The name of the DB cluster parameter group.
1256
+ #
1257
+ # Constraints:
1258
+ #
1259
+ # * Must be the name of an existing DB cluster parameter group.
1260
+ #
1261
+ # * You can't delete a default DB cluster parameter group.
1262
+ #
1263
+ # * Cannot be associated with any DB clusters.
1264
+ #
1265
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1266
+ #
1267
+ # @example Request syntax with placeholder values
1268
+ #
1269
+ # resp = client.delete_db_cluster_parameter_group({
1270
+ # db_cluster_parameter_group_name: "String", # required
1271
+ # })
1272
+ #
1273
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DeleteDBClusterParameterGroup AWS API Documentation
1274
+ #
1275
+ # @overload delete_db_cluster_parameter_group(params = {})
1276
+ # @param [Hash] params ({})
1277
+ def delete_db_cluster_parameter_group(params = {}, options = {})
1278
+ req = build_request(:delete_db_cluster_parameter_group, params)
1279
+ req.send_request(options)
1280
+ end
1281
+
1282
+ # Deletes a DB cluster snapshot. If the snapshot is being copied, the
1283
+ # copy operation is terminated.
1284
+ #
1285
+ # <note markdown="1"> The DB cluster snapshot must be in the `available` state to be
1286
+ # deleted.
1287
+ #
1288
+ # </note>
1289
+ #
1290
+ # @option params [required, String] :db_cluster_snapshot_identifier
1291
+ # The identifier of the DB cluster snapshot to delete.
1292
+ #
1293
+ # Constraints: Must be the name of an existing DB cluster snapshot in
1294
+ # the `available` state.
1295
+ #
1296
+ # @return [Types::DeleteDBClusterSnapshotResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1297
+ #
1298
+ # * {Types::DeleteDBClusterSnapshotResult#db_cluster_snapshot #db_cluster_snapshot} => Types::DBClusterSnapshot
1299
+ #
1300
+ # @example Request syntax with placeholder values
1301
+ #
1302
+ # resp = client.delete_db_cluster_snapshot({
1303
+ # db_cluster_snapshot_identifier: "String", # required
1304
+ # })
1305
+ #
1306
+ # @example Response structure
1307
+ #
1308
+ # resp.db_cluster_snapshot.availability_zones #=> Array
1309
+ # resp.db_cluster_snapshot.availability_zones[0] #=> String
1310
+ # resp.db_cluster_snapshot.db_cluster_snapshot_identifier #=> String
1311
+ # resp.db_cluster_snapshot.db_cluster_identifier #=> String
1312
+ # resp.db_cluster_snapshot.snapshot_create_time #=> Time
1313
+ # resp.db_cluster_snapshot.engine #=> String
1314
+ # resp.db_cluster_snapshot.status #=> String
1315
+ # resp.db_cluster_snapshot.port #=> Integer
1316
+ # resp.db_cluster_snapshot.vpc_id #=> String
1317
+ # resp.db_cluster_snapshot.cluster_create_time #=> Time
1318
+ # resp.db_cluster_snapshot.master_username #=> String
1319
+ # resp.db_cluster_snapshot.engine_version #=> String
1320
+ # resp.db_cluster_snapshot.snapshot_type #=> String
1321
+ # resp.db_cluster_snapshot.percent_progress #=> Integer
1322
+ # resp.db_cluster_snapshot.storage_encrypted #=> Boolean
1323
+ # resp.db_cluster_snapshot.kms_key_id #=> String
1324
+ # resp.db_cluster_snapshot.db_cluster_snapshot_arn #=> String
1325
+ # resp.db_cluster_snapshot.source_db_cluster_snapshot_arn #=> String
1326
+ #
1327
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DeleteDBClusterSnapshot AWS API Documentation
1328
+ #
1329
+ # @overload delete_db_cluster_snapshot(params = {})
1330
+ # @param [Hash] params ({})
1331
+ def delete_db_cluster_snapshot(params = {}, options = {})
1332
+ req = build_request(:delete_db_cluster_snapshot, params)
1333
+ req.send_request(options)
1334
+ end
1335
+
1336
+ # Deletes a previously provisioned DB instance.
1337
+ #
1338
+ # @option params [required, String] :db_instance_identifier
1339
+ # The DB instance identifier for the DB instance to be deleted. This
1340
+ # parameter isn't case sensitive.
1341
+ #
1342
+ # Constraints:
1343
+ #
1344
+ # * Must match the name of an existing DB instance.
1345
+ #
1346
+ # ^
1347
+ #
1348
+ # @return [Types::DeleteDBInstanceResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1349
+ #
1350
+ # * {Types::DeleteDBInstanceResult#db_instance #db_instance} => Types::DBInstance
1351
+ #
1352
+ # @example Request syntax with placeholder values
1353
+ #
1354
+ # resp = client.delete_db_instance({
1355
+ # db_instance_identifier: "String", # required
1356
+ # })
1357
+ #
1358
+ # @example Response structure
1359
+ #
1360
+ # resp.db_instance.db_instance_identifier #=> String
1361
+ # resp.db_instance.db_instance_class #=> String
1362
+ # resp.db_instance.engine #=> String
1363
+ # resp.db_instance.db_instance_status #=> String
1364
+ # resp.db_instance.endpoint.address #=> String
1365
+ # resp.db_instance.endpoint.port #=> Integer
1366
+ # resp.db_instance.endpoint.hosted_zone_id #=> String
1367
+ # resp.db_instance.instance_create_time #=> Time
1368
+ # resp.db_instance.preferred_backup_window #=> String
1369
+ # resp.db_instance.backup_retention_period #=> Integer
1370
+ # resp.db_instance.vpc_security_groups #=> Array
1371
+ # resp.db_instance.vpc_security_groups[0].vpc_security_group_id #=> String
1372
+ # resp.db_instance.vpc_security_groups[0].status #=> String
1373
+ # resp.db_instance.availability_zone #=> String
1374
+ # resp.db_instance.db_subnet_group.db_subnet_group_name #=> String
1375
+ # resp.db_instance.db_subnet_group.db_subnet_group_description #=> String
1376
+ # resp.db_instance.db_subnet_group.vpc_id #=> String
1377
+ # resp.db_instance.db_subnet_group.subnet_group_status #=> String
1378
+ # resp.db_instance.db_subnet_group.subnets #=> Array
1379
+ # resp.db_instance.db_subnet_group.subnets[0].subnet_identifier #=> String
1380
+ # resp.db_instance.db_subnet_group.subnets[0].subnet_availability_zone.name #=> String
1381
+ # resp.db_instance.db_subnet_group.subnets[0].subnet_status #=> String
1382
+ # resp.db_instance.db_subnet_group.db_subnet_group_arn #=> String
1383
+ # resp.db_instance.preferred_maintenance_window #=> String
1384
+ # resp.db_instance.pending_modified_values.db_instance_class #=> String
1385
+ # resp.db_instance.pending_modified_values.allocated_storage #=> Integer
1386
+ # resp.db_instance.pending_modified_values.master_user_password #=> String
1387
+ # resp.db_instance.pending_modified_values.port #=> Integer
1388
+ # resp.db_instance.pending_modified_values.backup_retention_period #=> Integer
1389
+ # resp.db_instance.pending_modified_values.multi_az #=> Boolean
1390
+ # resp.db_instance.pending_modified_values.engine_version #=> String
1391
+ # resp.db_instance.pending_modified_values.license_model #=> String
1392
+ # resp.db_instance.pending_modified_values.iops #=> Integer
1393
+ # resp.db_instance.pending_modified_values.db_instance_identifier #=> String
1394
+ # resp.db_instance.pending_modified_values.storage_type #=> String
1395
+ # resp.db_instance.pending_modified_values.ca_certificate_identifier #=> String
1396
+ # resp.db_instance.pending_modified_values.db_subnet_group_name #=> String
1397
+ # resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
1398
+ # resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
1399
+ # resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
1400
+ # resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
1401
+ # resp.db_instance.latest_restorable_time #=> Time
1402
+ # resp.db_instance.engine_version #=> String
1403
+ # resp.db_instance.auto_minor_version_upgrade #=> Boolean
1404
+ # resp.db_instance.publicly_accessible #=> Boolean
1405
+ # resp.db_instance.status_infos #=> Array
1406
+ # resp.db_instance.status_infos[0].status_type #=> String
1407
+ # resp.db_instance.status_infos[0].normal #=> Boolean
1408
+ # resp.db_instance.status_infos[0].status #=> String
1409
+ # resp.db_instance.status_infos[0].message #=> String
1410
+ # resp.db_instance.db_cluster_identifier #=> String
1411
+ # resp.db_instance.storage_encrypted #=> Boolean
1412
+ # resp.db_instance.kms_key_id #=> String
1413
+ # resp.db_instance.dbi_resource_id #=> String
1414
+ # resp.db_instance.promotion_tier #=> Integer
1415
+ # resp.db_instance.db_instance_arn #=> String
1416
+ # resp.db_instance.enabled_cloudwatch_logs_exports #=> Array
1417
+ # resp.db_instance.enabled_cloudwatch_logs_exports[0] #=> String
1418
+ #
1419
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DeleteDBInstance AWS API Documentation
1420
+ #
1421
+ # @overload delete_db_instance(params = {})
1422
+ # @param [Hash] params ({})
1423
+ def delete_db_instance(params = {}, options = {})
1424
+ req = build_request(:delete_db_instance, params)
1425
+ req.send_request(options)
1426
+ end
1427
+
1428
+ # Deletes a DB subnet group.
1429
+ #
1430
+ # <note markdown="1"> The specified database subnet group must not be associated with any DB
1431
+ # instances.
1432
+ #
1433
+ # </note>
1434
+ #
1435
+ # @option params [required, String] :db_subnet_group_name
1436
+ # The name of the database subnet group to delete.
1437
+ #
1438
+ # <note markdown="1"> You can't delete the default subnet group.
1439
+ #
1440
+ # </note>
1441
+ #
1442
+ # Constraints:
1443
+ #
1444
+ # Must match the name of an existing `DBSubnetGroup`. Must not be
1445
+ # default.
1446
+ #
1447
+ # Example: `mySubnetgroup`
1448
+ #
1449
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1450
+ #
1451
+ # @example Request syntax with placeholder values
1452
+ #
1453
+ # resp = client.delete_db_subnet_group({
1454
+ # db_subnet_group_name: "String", # required
1455
+ # })
1456
+ #
1457
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DeleteDBSubnetGroup AWS API Documentation
1458
+ #
1459
+ # @overload delete_db_subnet_group(params = {})
1460
+ # @param [Hash] params ({})
1461
+ def delete_db_subnet_group(params = {}, options = {})
1462
+ req = build_request(:delete_db_subnet_group, params)
1463
+ req.send_request(options)
1464
+ end
1465
+
1466
+ # Returns a list of `DBClusterParameterGroup` descriptions. If a
1467
+ # `DBClusterParameterGroupName` parameter is specified, the list
1468
+ # contains only the description of the specified DB cluster parameter
1469
+ # group.
1470
+ #
1471
+ # @option params [String] :db_cluster_parameter_group_name
1472
+ # The name of a specific DB cluster parameter group to return details
1473
+ # for.
1474
+ #
1475
+ # Constraints:
1476
+ #
1477
+ # * If provided, must match the name of an existing
1478
+ # `DBClusterParameterGroup`.
1479
+ #
1480
+ # ^
1481
+ #
1482
+ # @option params [Array<Types::Filter>] :filters
1483
+ # This parameter is not currently supported.
1484
+ #
1485
+ # @option params [Integer] :max_records
1486
+ # The maximum number of records to include in the response. If more
1487
+ # records exist than the specified `MaxRecords` value, a pagination
1488
+ # token (marker) is included in the response so that the remaining
1489
+ # results can be retrieved.
1490
+ #
1491
+ # Default: 100
1492
+ #
1493
+ # Constraints: Minimum 20, maximum 100.
1494
+ #
1495
+ # @option params [String] :marker
1496
+ # An optional pagination token provided by a previous request. If this
1497
+ # parameter is specified, the response includes only records beyond the
1498
+ # marker, up to the value specified by `MaxRecords`.
1499
+ #
1500
+ # @return [Types::DBClusterParameterGroupsMessage] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1501
+ #
1502
+ # * {Types::DBClusterParameterGroupsMessage#marker #marker} => String
1503
+ # * {Types::DBClusterParameterGroupsMessage#db_cluster_parameter_groups #db_cluster_parameter_groups} => Array&lt;Types::DBClusterParameterGroup&gt;
1504
+ #
1505
+ # @example Request syntax with placeholder values
1506
+ #
1507
+ # resp = client.describe_db_cluster_parameter_groups({
1508
+ # db_cluster_parameter_group_name: "String",
1509
+ # filters: [
1510
+ # {
1511
+ # name: "String", # required
1512
+ # values: ["String"], # required
1513
+ # },
1514
+ # ],
1515
+ # max_records: 1,
1516
+ # marker: "String",
1517
+ # })
1518
+ #
1519
+ # @example Response structure
1520
+ #
1521
+ # resp.marker #=> String
1522
+ # resp.db_cluster_parameter_groups #=> Array
1523
+ # resp.db_cluster_parameter_groups[0].db_cluster_parameter_group_name #=> String
1524
+ # resp.db_cluster_parameter_groups[0].db_parameter_group_family #=> String
1525
+ # resp.db_cluster_parameter_groups[0].description #=> String
1526
+ # resp.db_cluster_parameter_groups[0].db_cluster_parameter_group_arn #=> String
1527
+ #
1528
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DescribeDBClusterParameterGroups AWS API Documentation
1529
+ #
1530
+ # @overload describe_db_cluster_parameter_groups(params = {})
1531
+ # @param [Hash] params ({})
1532
+ def describe_db_cluster_parameter_groups(params = {}, options = {})
1533
+ req = build_request(:describe_db_cluster_parameter_groups, params)
1534
+ req.send_request(options)
1535
+ end
1536
+
1537
+ # Returns the detailed parameter list for a particular DB cluster
1538
+ # parameter group.
1539
+ #
1540
+ # @option params [required, String] :db_cluster_parameter_group_name
1541
+ # The name of a specific DB cluster parameter group to return parameter
1542
+ # details for.
1543
+ #
1544
+ # Constraints:
1545
+ #
1546
+ # * If provided, must match the name of an existing
1547
+ # `DBClusterParameterGroup`.
1548
+ #
1549
+ # ^
1550
+ #
1551
+ # @option params [String] :source
1552
+ # A value that indicates to return only parameters for a specific
1553
+ # source. Parameter sources can be `engine`, `service`, or `customer`.
1554
+ #
1555
+ # @option params [Array<Types::Filter>] :filters
1556
+ # This parameter is not currently supported.
1557
+ #
1558
+ # @option params [Integer] :max_records
1559
+ # The maximum number of records to include in the response. If more
1560
+ # records exist than the specified `MaxRecords` value, a pagination
1561
+ # token (marker) is included in the response so that the remaining
1562
+ # results can be retrieved.
1563
+ #
1564
+ # Default: 100
1565
+ #
1566
+ # Constraints: Minimum 20, maximum 100.
1567
+ #
1568
+ # @option params [String] :marker
1569
+ # An optional pagination token provided by a previous request. If this
1570
+ # parameter is specified, the response includes only records beyond the
1571
+ # marker, up to the value specified by `MaxRecords`.
1572
+ #
1573
+ # @return [Types::DBClusterParameterGroupDetails] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1574
+ #
1575
+ # * {Types::DBClusterParameterGroupDetails#parameters #parameters} => Array&lt;Types::Parameter&gt;
1576
+ # * {Types::DBClusterParameterGroupDetails#marker #marker} => String
1577
+ #
1578
+ # @example Request syntax with placeholder values
1579
+ #
1580
+ # resp = client.describe_db_cluster_parameters({
1581
+ # db_cluster_parameter_group_name: "String", # required
1582
+ # source: "String",
1583
+ # filters: [
1584
+ # {
1585
+ # name: "String", # required
1586
+ # values: ["String"], # required
1587
+ # },
1588
+ # ],
1589
+ # max_records: 1,
1590
+ # marker: "String",
1591
+ # })
1592
+ #
1593
+ # @example Response structure
1594
+ #
1595
+ # resp.parameters #=> Array
1596
+ # resp.parameters[0].parameter_name #=> String
1597
+ # resp.parameters[0].parameter_value #=> String
1598
+ # resp.parameters[0].description #=> String
1599
+ # resp.parameters[0].source #=> String
1600
+ # resp.parameters[0].apply_type #=> String
1601
+ # resp.parameters[0].data_type #=> String
1602
+ # resp.parameters[0].allowed_values #=> String
1603
+ # resp.parameters[0].is_modifiable #=> Boolean
1604
+ # resp.parameters[0].minimum_engine_version #=> String
1605
+ # resp.parameters[0].apply_method #=> String, one of "immediate", "pending-reboot"
1606
+ # resp.marker #=> String
1607
+ #
1608
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DescribeDBClusterParameters AWS API Documentation
1609
+ #
1610
+ # @overload describe_db_cluster_parameters(params = {})
1611
+ # @param [Hash] params ({})
1612
+ def describe_db_cluster_parameters(params = {}, options = {})
1613
+ req = build_request(:describe_db_cluster_parameters, params)
1614
+ req.send_request(options)
1615
+ end
1616
+
1617
+ # Returns a list of DB cluster snapshot attribute names and values for a
1618
+ # manual DB cluster snapshot.
1619
+ #
1620
+ # When you share snapshots with other AWS accounts,
1621
+ # `DescribeDBClusterSnapshotAttributes` returns the `restore` attribute
1622
+ # and a list of IDs for the AWS accounts that are authorized to copy or
1623
+ # restore the manual DB cluster snapshot. If `all` is included in the
1624
+ # list of values for the `restore` attribute, then the manual DB cluster
1625
+ # snapshot is public and can be copied or restored by all AWS accounts.
1626
+ #
1627
+ # @option params [required, String] :db_cluster_snapshot_identifier
1628
+ # The identifier for the DB cluster snapshot to describe the attributes
1629
+ # for.
1630
+ #
1631
+ # @return [Types::DescribeDBClusterSnapshotAttributesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1632
+ #
1633
+ # * {Types::DescribeDBClusterSnapshotAttributesResult#db_cluster_snapshot_attributes_result #db_cluster_snapshot_attributes_result} => Types::DBClusterSnapshotAttributesResult
1634
+ #
1635
+ # @example Request syntax with placeholder values
1636
+ #
1637
+ # resp = client.describe_db_cluster_snapshot_attributes({
1638
+ # db_cluster_snapshot_identifier: "String", # required
1639
+ # })
1640
+ #
1641
+ # @example Response structure
1642
+ #
1643
+ # resp.db_cluster_snapshot_attributes_result.db_cluster_snapshot_identifier #=> String
1644
+ # resp.db_cluster_snapshot_attributes_result.db_cluster_snapshot_attributes #=> Array
1645
+ # resp.db_cluster_snapshot_attributes_result.db_cluster_snapshot_attributes[0].attribute_name #=> String
1646
+ # resp.db_cluster_snapshot_attributes_result.db_cluster_snapshot_attributes[0].attribute_values #=> Array
1647
+ # resp.db_cluster_snapshot_attributes_result.db_cluster_snapshot_attributes[0].attribute_values[0] #=> String
1648
+ #
1649
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DescribeDBClusterSnapshotAttributes AWS API Documentation
1650
+ #
1651
+ # @overload describe_db_cluster_snapshot_attributes(params = {})
1652
+ # @param [Hash] params ({})
1653
+ def describe_db_cluster_snapshot_attributes(params = {}, options = {})
1654
+ req = build_request(:describe_db_cluster_snapshot_attributes, params)
1655
+ req.send_request(options)
1656
+ end
1657
+
1658
+ # Returns information about DB cluster snapshots. This API operation
1659
+ # supports pagination.
1660
+ #
1661
+ # @option params [String] :db_cluster_identifier
1662
+ # The ID of the DB cluster to retrieve the list of DB cluster snapshots
1663
+ # for. This parameter can't be used with the
1664
+ # `DBClusterSnapshotIdentifier` parameter. This parameter is not case
1665
+ # sensitive.
1666
+ #
1667
+ # Constraints:
1668
+ #
1669
+ # * If provided, must match the identifier of an existing `DBCluster`.
1670
+ #
1671
+ # ^
1672
+ #
1673
+ # @option params [String] :db_cluster_snapshot_identifier
1674
+ # A specific DB cluster snapshot identifier to describe. This parameter
1675
+ # can't be used with the `DBClusterIdentifier` parameter. This value is
1676
+ # stored as a lowercase string.
1677
+ #
1678
+ # Constraints:
1679
+ #
1680
+ # * If provided, must match the identifier of an existing
1681
+ # `DBClusterSnapshot`.
1682
+ #
1683
+ # * If this identifier is for an automated snapshot, the `SnapshotType`
1684
+ # parameter must also be specified.
1685
+ #
1686
+ # @option params [String] :snapshot_type
1687
+ # The type of DB cluster snapshots to be returned. You can specify one
1688
+ # of the following values:
1689
+ #
1690
+ # * `automated` - Return all DB cluster snapshots that Amazon DocumentDB
1691
+ # has automatically created for your AWS account.
1692
+ #
1693
+ # * `manual` - Return all DB cluster snapshots that you have manually
1694
+ # created for your AWS account.
1695
+ #
1696
+ # * `shared` - Return all manual DB cluster snapshots that have been
1697
+ # shared to your AWS account.
1698
+ #
1699
+ # * `public` - Return all DB cluster snapshots that have been marked as
1700
+ # public.
1701
+ #
1702
+ # If you don't specify a `SnapshotType` value, then both automated and
1703
+ # manual DB cluster snapshots are returned. You can include shared DB
1704
+ # cluster snapshots with these results by setting the `IncludeShared`
1705
+ # parameter to `true`. You can include public DB cluster snapshots with
1706
+ # these results by setting the `IncludePublic` parameter to `true`.
1707
+ #
1708
+ # The `IncludeShared` and `IncludePublic` parameters don't apply for
1709
+ # `SnapshotType` values of `manual` or `automated`. The `IncludePublic`
1710
+ # parameter doesn't apply when `SnapshotType` is set to `shared`. The
1711
+ # `IncludeShared` parameter doesn't apply when `SnapshotType` is set to
1712
+ # `public`.
1713
+ #
1714
+ # @option params [Array<Types::Filter>] :filters
1715
+ # This parameter is not currently supported.
1716
+ #
1717
+ # @option params [Integer] :max_records
1718
+ # The maximum number of records to include in the response. If more
1719
+ # records exist than the specified `MaxRecords` value, a pagination
1720
+ # token (marker) is included in the response so that the remaining
1721
+ # results can be retrieved.
1722
+ #
1723
+ # Default: 100
1724
+ #
1725
+ # Constraints: Minimum 20, maximum 100.
1726
+ #
1727
+ # @option params [String] :marker
1728
+ # An optional pagination token provided by a previous request. If this
1729
+ # parameter is specified, the response includes only records beyond the
1730
+ # marker, up to the value specified by `MaxRecords`.
1731
+ #
1732
+ # @option params [Boolean] :include_shared
1733
+ # Set to `true` to include shared manual DB cluster snapshots from other
1734
+ # AWS accounts that this AWS account has been given permission to copy
1735
+ # or restore, and otherwise `false`. The default is `false`.
1736
+ #
1737
+ # @option params [Boolean] :include_public
1738
+ # Set to `true` to include manual DB cluster snapshots that are public
1739
+ # and can be copied or restored by any AWS account, and otherwise
1740
+ # `false`. The default is `false`.
1741
+ #
1742
+ # @return [Types::DBClusterSnapshotMessage] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1743
+ #
1744
+ # * {Types::DBClusterSnapshotMessage#marker #marker} => String
1745
+ # * {Types::DBClusterSnapshotMessage#db_cluster_snapshots #db_cluster_snapshots} => Array&lt;Types::DBClusterSnapshot&gt;
1746
+ #
1747
+ # @example Request syntax with placeholder values
1748
+ #
1749
+ # resp = client.describe_db_cluster_snapshots({
1750
+ # db_cluster_identifier: "String",
1751
+ # db_cluster_snapshot_identifier: "String",
1752
+ # snapshot_type: "String",
1753
+ # filters: [
1754
+ # {
1755
+ # name: "String", # required
1756
+ # values: ["String"], # required
1757
+ # },
1758
+ # ],
1759
+ # max_records: 1,
1760
+ # marker: "String",
1761
+ # include_shared: false,
1762
+ # include_public: false,
1763
+ # })
1764
+ #
1765
+ # @example Response structure
1766
+ #
1767
+ # resp.marker #=> String
1768
+ # resp.db_cluster_snapshots #=> Array
1769
+ # resp.db_cluster_snapshots[0].availability_zones #=> Array
1770
+ # resp.db_cluster_snapshots[0].availability_zones[0] #=> String
1771
+ # resp.db_cluster_snapshots[0].db_cluster_snapshot_identifier #=> String
1772
+ # resp.db_cluster_snapshots[0].db_cluster_identifier #=> String
1773
+ # resp.db_cluster_snapshots[0].snapshot_create_time #=> Time
1774
+ # resp.db_cluster_snapshots[0].engine #=> String
1775
+ # resp.db_cluster_snapshots[0].status #=> String
1776
+ # resp.db_cluster_snapshots[0].port #=> Integer
1777
+ # resp.db_cluster_snapshots[0].vpc_id #=> String
1778
+ # resp.db_cluster_snapshots[0].cluster_create_time #=> Time
1779
+ # resp.db_cluster_snapshots[0].master_username #=> String
1780
+ # resp.db_cluster_snapshots[0].engine_version #=> String
1781
+ # resp.db_cluster_snapshots[0].snapshot_type #=> String
1782
+ # resp.db_cluster_snapshots[0].percent_progress #=> Integer
1783
+ # resp.db_cluster_snapshots[0].storage_encrypted #=> Boolean
1784
+ # resp.db_cluster_snapshots[0].kms_key_id #=> String
1785
+ # resp.db_cluster_snapshots[0].db_cluster_snapshot_arn #=> String
1786
+ # resp.db_cluster_snapshots[0].source_db_cluster_snapshot_arn #=> String
1787
+ #
1788
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DescribeDBClusterSnapshots AWS API Documentation
1789
+ #
1790
+ # @overload describe_db_cluster_snapshots(params = {})
1791
+ # @param [Hash] params ({})
1792
+ def describe_db_cluster_snapshots(params = {}, options = {})
1793
+ req = build_request(:describe_db_cluster_snapshots, params)
1794
+ req.send_request(options)
1795
+ end
1796
+
1797
+ # Returns information about provisioned Amazon DocumentDB DB clusters.
1798
+ # This API operation supports pagination.
1799
+ #
1800
+ # @option params [String] :db_cluster_identifier
1801
+ # The user-provided DB cluster identifier. If this parameter is
1802
+ # specified, information from only the specific DB cluster is returned.
1803
+ # This parameter isn't case sensitive.
1804
+ #
1805
+ # Constraints:
1806
+ #
1807
+ # * If provided, must match an existing `DBClusterIdentifier`.
1808
+ #
1809
+ # ^
1810
+ #
1811
+ # @option params [Array<Types::Filter>] :filters
1812
+ # A filter that specifies one or more DB clusters to describe.
1813
+ #
1814
+ # Supported filters:
1815
+ #
1816
+ # * `db-cluster-id` - Accepts DB cluster identifiers and DB cluster
1817
+ # Amazon Resource Names (ARNs). The results list only includes
1818
+ # information about the DB clusters identified by these ARNs.
1819
+ #
1820
+ # ^
1821
+ #
1822
+ # @option params [Integer] :max_records
1823
+ # The maximum number of records to include in the response. If more
1824
+ # records exist than the specified `MaxRecords` value, a pagination
1825
+ # token (marker) is included in the response so that the remaining
1826
+ # results can be retrieved.
1827
+ #
1828
+ # Default: 100
1829
+ #
1830
+ # Constraints: Minimum 20, maximum 100.
1831
+ #
1832
+ # @option params [String] :marker
1833
+ # An optional pagination token provided by a previous request. If this
1834
+ # parameter is specified, the response includes only records beyond the
1835
+ # marker, up to the value specified by `MaxRecords`.
1836
+ #
1837
+ # @return [Types::DBClusterMessage] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1838
+ #
1839
+ # * {Types::DBClusterMessage#marker #marker} => String
1840
+ # * {Types::DBClusterMessage#db_clusters #db_clusters} => Array&lt;Types::DBCluster&gt;
1841
+ #
1842
+ # @example Request syntax with placeholder values
1843
+ #
1844
+ # resp = client.describe_db_clusters({
1845
+ # db_cluster_identifier: "String",
1846
+ # filters: [
1847
+ # {
1848
+ # name: "String", # required
1849
+ # values: ["String"], # required
1850
+ # },
1851
+ # ],
1852
+ # max_records: 1,
1853
+ # marker: "String",
1854
+ # })
1855
+ #
1856
+ # @example Response structure
1857
+ #
1858
+ # resp.marker #=> String
1859
+ # resp.db_clusters #=> Array
1860
+ # resp.db_clusters[0].availability_zones #=> Array
1861
+ # resp.db_clusters[0].availability_zones[0] #=> String
1862
+ # resp.db_clusters[0].backup_retention_period #=> Integer
1863
+ # resp.db_clusters[0].db_cluster_identifier #=> String
1864
+ # resp.db_clusters[0].db_cluster_parameter_group #=> String
1865
+ # resp.db_clusters[0].db_subnet_group #=> String
1866
+ # resp.db_clusters[0].status #=> String
1867
+ # resp.db_clusters[0].percent_progress #=> String
1868
+ # resp.db_clusters[0].earliest_restorable_time #=> Time
1869
+ # resp.db_clusters[0].endpoint #=> String
1870
+ # resp.db_clusters[0].reader_endpoint #=> String
1871
+ # resp.db_clusters[0].multi_az #=> Boolean
1872
+ # resp.db_clusters[0].engine #=> String
1873
+ # resp.db_clusters[0].engine_version #=> String
1874
+ # resp.db_clusters[0].latest_restorable_time #=> Time
1875
+ # resp.db_clusters[0].port #=> Integer
1876
+ # resp.db_clusters[0].master_username #=> String
1877
+ # resp.db_clusters[0].preferred_backup_window #=> String
1878
+ # resp.db_clusters[0].preferred_maintenance_window #=> String
1879
+ # resp.db_clusters[0].db_cluster_members #=> Array
1880
+ # resp.db_clusters[0].db_cluster_members[0].db_instance_identifier #=> String
1881
+ # resp.db_clusters[0].db_cluster_members[0].is_cluster_writer #=> Boolean
1882
+ # resp.db_clusters[0].db_cluster_members[0].db_cluster_parameter_group_status #=> String
1883
+ # resp.db_clusters[0].db_cluster_members[0].promotion_tier #=> Integer
1884
+ # resp.db_clusters[0].vpc_security_groups #=> Array
1885
+ # resp.db_clusters[0].vpc_security_groups[0].vpc_security_group_id #=> String
1886
+ # resp.db_clusters[0].vpc_security_groups[0].status #=> String
1887
+ # resp.db_clusters[0].hosted_zone_id #=> String
1888
+ # resp.db_clusters[0].storage_encrypted #=> Boolean
1889
+ # resp.db_clusters[0].kms_key_id #=> String
1890
+ # resp.db_clusters[0].db_cluster_resource_id #=> String
1891
+ # resp.db_clusters[0].db_cluster_arn #=> String
1892
+ # resp.db_clusters[0].associated_roles #=> Array
1893
+ # resp.db_clusters[0].associated_roles[0].role_arn #=> String
1894
+ # resp.db_clusters[0].associated_roles[0].status #=> String
1895
+ # resp.db_clusters[0].cluster_create_time #=> Time
1896
+ # resp.db_clusters[0].enabled_cloudwatch_logs_exports #=> Array
1897
+ # resp.db_clusters[0].enabled_cloudwatch_logs_exports[0] #=> String
1898
+ #
1899
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DescribeDBClusters AWS API Documentation
1900
+ #
1901
+ # @overload describe_db_clusters(params = {})
1902
+ # @param [Hash] params ({})
1903
+ def describe_db_clusters(params = {}, options = {})
1904
+ req = build_request(:describe_db_clusters, params)
1905
+ req.send_request(options)
1906
+ end
1907
+
1908
+ # Returns a list of the available DB engines.
1909
+ #
1910
+ # @option params [String] :engine
1911
+ # The database engine to return.
1912
+ #
1913
+ # @option params [String] :engine_version
1914
+ # The database engine version to return.
1915
+ #
1916
+ # Example: `5.1.49`
1917
+ #
1918
+ # @option params [String] :db_parameter_group_family
1919
+ # The name of a specific DB parameter group family to return details
1920
+ # for.
1921
+ #
1922
+ # Constraints:
1923
+ #
1924
+ # * If provided, must match an existing `DBParameterGroupFamily`.
1925
+ #
1926
+ # ^
1927
+ #
1928
+ # @option params [Array<Types::Filter>] :filters
1929
+ # This parameter is not currently supported.
1930
+ #
1931
+ # @option params [Integer] :max_records
1932
+ # The maximum number of records to include in the response. If more
1933
+ # records exist than the specified `MaxRecords` value, a pagination
1934
+ # token (marker) is included in the response so that the remaining
1935
+ # results can be retrieved.
1936
+ #
1937
+ # Default: 100
1938
+ #
1939
+ # Constraints: Minimum 20, maximum 100.
1940
+ #
1941
+ # @option params [String] :marker
1942
+ # An optional pagination token provided by a previous request. If this
1943
+ # parameter is specified, the response includes only records beyond the
1944
+ # marker, up to the value specified by `MaxRecords`.
1945
+ #
1946
+ # @option params [Boolean] :default_only
1947
+ # Indicates that only the default version of the specified engine or
1948
+ # engine and major version combination is returned.
1949
+ #
1950
+ # @option params [Boolean] :list_supported_character_sets
1951
+ # If this parameter is specified and the requested engine supports the
1952
+ # `CharacterSetName` parameter for `CreateDBInstance`, the response
1953
+ # includes a list of supported character sets for each engine version.
1954
+ #
1955
+ # @option params [Boolean] :list_supported_timezones
1956
+ # If this parameter is specified and the requested engine supports the
1957
+ # `TimeZone` parameter for `CreateDBInstance`, the response includes a
1958
+ # list of supported time zones for each engine version.
1959
+ #
1960
+ # @return [Types::DBEngineVersionMessage] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1961
+ #
1962
+ # * {Types::DBEngineVersionMessage#marker #marker} => String
1963
+ # * {Types::DBEngineVersionMessage#db_engine_versions #db_engine_versions} => Array&lt;Types::DBEngineVersion&gt;
1964
+ #
1965
+ # @example Request syntax with placeholder values
1966
+ #
1967
+ # resp = client.describe_db_engine_versions({
1968
+ # engine: "String",
1969
+ # engine_version: "String",
1970
+ # db_parameter_group_family: "String",
1971
+ # filters: [
1972
+ # {
1973
+ # name: "String", # required
1974
+ # values: ["String"], # required
1975
+ # },
1976
+ # ],
1977
+ # max_records: 1,
1978
+ # marker: "String",
1979
+ # default_only: false,
1980
+ # list_supported_character_sets: false,
1981
+ # list_supported_timezones: false,
1982
+ # })
1983
+ #
1984
+ # @example Response structure
1985
+ #
1986
+ # resp.marker #=> String
1987
+ # resp.db_engine_versions #=> Array
1988
+ # resp.db_engine_versions[0].engine #=> String
1989
+ # resp.db_engine_versions[0].engine_version #=> String
1990
+ # resp.db_engine_versions[0].db_parameter_group_family #=> String
1991
+ # resp.db_engine_versions[0].db_engine_description #=> String
1992
+ # resp.db_engine_versions[0].db_engine_version_description #=> String
1993
+ # resp.db_engine_versions[0].valid_upgrade_target #=> Array
1994
+ # resp.db_engine_versions[0].valid_upgrade_target[0].engine #=> String
1995
+ # resp.db_engine_versions[0].valid_upgrade_target[0].engine_version #=> String
1996
+ # resp.db_engine_versions[0].valid_upgrade_target[0].description #=> String
1997
+ # resp.db_engine_versions[0].valid_upgrade_target[0].auto_upgrade #=> Boolean
1998
+ # resp.db_engine_versions[0].valid_upgrade_target[0].is_major_version_upgrade #=> Boolean
1999
+ # resp.db_engine_versions[0].exportable_log_types #=> Array
2000
+ # resp.db_engine_versions[0].exportable_log_types[0] #=> String
2001
+ # resp.db_engine_versions[0].supports_log_exports_to_cloudwatch_logs #=> Boolean
2002
+ #
2003
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DescribeDBEngineVersions AWS API Documentation
2004
+ #
2005
+ # @overload describe_db_engine_versions(params = {})
2006
+ # @param [Hash] params ({})
2007
+ def describe_db_engine_versions(params = {}, options = {})
2008
+ req = build_request(:describe_db_engine_versions, params)
2009
+ req.send_request(options)
2010
+ end
2011
+
2012
+ # Returns information about provisioned Amazon DocumentDB instances.
2013
+ # This API supports pagination.
2014
+ #
2015
+ # @option params [String] :db_instance_identifier
2016
+ # The user-provided instance identifier. If this parameter is specified,
2017
+ # information from only the specific DB instance is returned. This
2018
+ # parameter isn't case sensitive.
2019
+ #
2020
+ # Constraints:
2021
+ #
2022
+ # * If provided, must match the identifier of an existing `DBInstance`.
2023
+ #
2024
+ # ^
2025
+ #
2026
+ # @option params [Array<Types::Filter>] :filters
2027
+ # A filter that specifies one or more DB instances to describe.
2028
+ #
2029
+ # Supported filters:
2030
+ #
2031
+ # * `db-cluster-id` - Accepts DB cluster identifiers and DB cluster
2032
+ # Amazon Resource Names (ARNs). The results list includes only the
2033
+ # information about the DB instances that are associated with the DB
2034
+ # clusters that are identified by these ARNs.
2035
+ #
2036
+ # * `db-instance-id` - Accepts DB instance identifiers and DB instance
2037
+ # ARNs. The results list includes only the information about the DB
2038
+ # instances that are identified by these ARNs.
2039
+ #
2040
+ # @option params [Integer] :max_records
2041
+ # The maximum number of records to include in the response. If more
2042
+ # records exist than the specified `MaxRecords` value, a pagination
2043
+ # token (marker) is included in the response so that the remaining
2044
+ # results can be retrieved.
2045
+ #
2046
+ # Default: 100
2047
+ #
2048
+ # Constraints: Minimum 20, maximum 100.
2049
+ #
2050
+ # @option params [String] :marker
2051
+ # An optional pagination token provided by a previous request. If this
2052
+ # parameter is specified, the response includes only records beyond the
2053
+ # marker, up to the value specified by `MaxRecords`.
2054
+ #
2055
+ # @return [Types::DBInstanceMessage] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2056
+ #
2057
+ # * {Types::DBInstanceMessage#marker #marker} => String
2058
+ # * {Types::DBInstanceMessage#db_instances #db_instances} => Array&lt;Types::DBInstance&gt;
2059
+ #
2060
+ # @example Request syntax with placeholder values
2061
+ #
2062
+ # resp = client.describe_db_instances({
2063
+ # db_instance_identifier: "String",
2064
+ # filters: [
2065
+ # {
2066
+ # name: "String", # required
2067
+ # values: ["String"], # required
2068
+ # },
2069
+ # ],
2070
+ # max_records: 1,
2071
+ # marker: "String",
2072
+ # })
2073
+ #
2074
+ # @example Response structure
2075
+ #
2076
+ # resp.marker #=> String
2077
+ # resp.db_instances #=> Array
2078
+ # resp.db_instances[0].db_instance_identifier #=> String
2079
+ # resp.db_instances[0].db_instance_class #=> String
2080
+ # resp.db_instances[0].engine #=> String
2081
+ # resp.db_instances[0].db_instance_status #=> String
2082
+ # resp.db_instances[0].endpoint.address #=> String
2083
+ # resp.db_instances[0].endpoint.port #=> Integer
2084
+ # resp.db_instances[0].endpoint.hosted_zone_id #=> String
2085
+ # resp.db_instances[0].instance_create_time #=> Time
2086
+ # resp.db_instances[0].preferred_backup_window #=> String
2087
+ # resp.db_instances[0].backup_retention_period #=> Integer
2088
+ # resp.db_instances[0].vpc_security_groups #=> Array
2089
+ # resp.db_instances[0].vpc_security_groups[0].vpc_security_group_id #=> String
2090
+ # resp.db_instances[0].vpc_security_groups[0].status #=> String
2091
+ # resp.db_instances[0].availability_zone #=> String
2092
+ # resp.db_instances[0].db_subnet_group.db_subnet_group_name #=> String
2093
+ # resp.db_instances[0].db_subnet_group.db_subnet_group_description #=> String
2094
+ # resp.db_instances[0].db_subnet_group.vpc_id #=> String
2095
+ # resp.db_instances[0].db_subnet_group.subnet_group_status #=> String
2096
+ # resp.db_instances[0].db_subnet_group.subnets #=> Array
2097
+ # resp.db_instances[0].db_subnet_group.subnets[0].subnet_identifier #=> String
2098
+ # resp.db_instances[0].db_subnet_group.subnets[0].subnet_availability_zone.name #=> String
2099
+ # resp.db_instances[0].db_subnet_group.subnets[0].subnet_status #=> String
2100
+ # resp.db_instances[0].db_subnet_group.db_subnet_group_arn #=> String
2101
+ # resp.db_instances[0].preferred_maintenance_window #=> String
2102
+ # resp.db_instances[0].pending_modified_values.db_instance_class #=> String
2103
+ # resp.db_instances[0].pending_modified_values.allocated_storage #=> Integer
2104
+ # resp.db_instances[0].pending_modified_values.master_user_password #=> String
2105
+ # resp.db_instances[0].pending_modified_values.port #=> Integer
2106
+ # resp.db_instances[0].pending_modified_values.backup_retention_period #=> Integer
2107
+ # resp.db_instances[0].pending_modified_values.multi_az #=> Boolean
2108
+ # resp.db_instances[0].pending_modified_values.engine_version #=> String
2109
+ # resp.db_instances[0].pending_modified_values.license_model #=> String
2110
+ # resp.db_instances[0].pending_modified_values.iops #=> Integer
2111
+ # resp.db_instances[0].pending_modified_values.db_instance_identifier #=> String
2112
+ # resp.db_instances[0].pending_modified_values.storage_type #=> String
2113
+ # resp.db_instances[0].pending_modified_values.ca_certificate_identifier #=> String
2114
+ # resp.db_instances[0].pending_modified_values.db_subnet_group_name #=> String
2115
+ # resp.db_instances[0].pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
2116
+ # resp.db_instances[0].pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
2117
+ # resp.db_instances[0].pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
2118
+ # resp.db_instances[0].pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
2119
+ # resp.db_instances[0].latest_restorable_time #=> Time
2120
+ # resp.db_instances[0].engine_version #=> String
2121
+ # resp.db_instances[0].auto_minor_version_upgrade #=> Boolean
2122
+ # resp.db_instances[0].publicly_accessible #=> Boolean
2123
+ # resp.db_instances[0].status_infos #=> Array
2124
+ # resp.db_instances[0].status_infos[0].status_type #=> String
2125
+ # resp.db_instances[0].status_infos[0].normal #=> Boolean
2126
+ # resp.db_instances[0].status_infos[0].status #=> String
2127
+ # resp.db_instances[0].status_infos[0].message #=> String
2128
+ # resp.db_instances[0].db_cluster_identifier #=> String
2129
+ # resp.db_instances[0].storage_encrypted #=> Boolean
2130
+ # resp.db_instances[0].kms_key_id #=> String
2131
+ # resp.db_instances[0].dbi_resource_id #=> String
2132
+ # resp.db_instances[0].promotion_tier #=> Integer
2133
+ # resp.db_instances[0].db_instance_arn #=> String
2134
+ # resp.db_instances[0].enabled_cloudwatch_logs_exports #=> Array
2135
+ # resp.db_instances[0].enabled_cloudwatch_logs_exports[0] #=> String
2136
+ #
2137
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DescribeDBInstances AWS API Documentation
2138
+ #
2139
+ # @overload describe_db_instances(params = {})
2140
+ # @param [Hash] params ({})
2141
+ def describe_db_instances(params = {}, options = {})
2142
+ req = build_request(:describe_db_instances, params)
2143
+ req.send_request(options)
2144
+ end
2145
+
2146
+ # Returns a list of `DBSubnetGroup` descriptions. If a
2147
+ # `DBSubnetGroupName` is specified, the list will contain only the
2148
+ # descriptions of the specified `DBSubnetGroup`.
2149
+ #
2150
+ # @option params [String] :db_subnet_group_name
2151
+ # The name of the DB subnet group to return details for.
2152
+ #
2153
+ # @option params [Array<Types::Filter>] :filters
2154
+ # This parameter is not currently supported.
2155
+ #
2156
+ # @option params [Integer] :max_records
2157
+ # The maximum number of records to include in the response. If more
2158
+ # records exist than the specified `MaxRecords` value, a pagination
2159
+ # token (marker) is included in the response so that the remaining
2160
+ # results can be retrieved.
2161
+ #
2162
+ # Default: 100
2163
+ #
2164
+ # Constraints: Minimum 20, maximum 100.
2165
+ #
2166
+ # @option params [String] :marker
2167
+ # An optional pagination token provided by a previous request. If this
2168
+ # parameter is specified, the response includes only records beyond the
2169
+ # marker, up to the value specified by `MaxRecords`.
2170
+ #
2171
+ # @return [Types::DBSubnetGroupMessage] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2172
+ #
2173
+ # * {Types::DBSubnetGroupMessage#marker #marker} => String
2174
+ # * {Types::DBSubnetGroupMessage#db_subnet_groups #db_subnet_groups} => Array&lt;Types::DBSubnetGroup&gt;
2175
+ #
2176
+ # @example Request syntax with placeholder values
2177
+ #
2178
+ # resp = client.describe_db_subnet_groups({
2179
+ # db_subnet_group_name: "String",
2180
+ # filters: [
2181
+ # {
2182
+ # name: "String", # required
2183
+ # values: ["String"], # required
2184
+ # },
2185
+ # ],
2186
+ # max_records: 1,
2187
+ # marker: "String",
2188
+ # })
2189
+ #
2190
+ # @example Response structure
2191
+ #
2192
+ # resp.marker #=> String
2193
+ # resp.db_subnet_groups #=> Array
2194
+ # resp.db_subnet_groups[0].db_subnet_group_name #=> String
2195
+ # resp.db_subnet_groups[0].db_subnet_group_description #=> String
2196
+ # resp.db_subnet_groups[0].vpc_id #=> String
2197
+ # resp.db_subnet_groups[0].subnet_group_status #=> String
2198
+ # resp.db_subnet_groups[0].subnets #=> Array
2199
+ # resp.db_subnet_groups[0].subnets[0].subnet_identifier #=> String
2200
+ # resp.db_subnet_groups[0].subnets[0].subnet_availability_zone.name #=> String
2201
+ # resp.db_subnet_groups[0].subnets[0].subnet_status #=> String
2202
+ # resp.db_subnet_groups[0].db_subnet_group_arn #=> String
2203
+ #
2204
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DescribeDBSubnetGroups AWS API Documentation
2205
+ #
2206
+ # @overload describe_db_subnet_groups(params = {})
2207
+ # @param [Hash] params ({})
2208
+ def describe_db_subnet_groups(params = {}, options = {})
2209
+ req = build_request(:describe_db_subnet_groups, params)
2210
+ req.send_request(options)
2211
+ end
2212
+
2213
+ # Returns the default engine and system parameter information for the
2214
+ # cluster database engine.
2215
+ #
2216
+ # @option params [required, String] :db_parameter_group_family
2217
+ # The name of the DB cluster parameter group family to return the engine
2218
+ # parameter information for.
2219
+ #
2220
+ # @option params [Array<Types::Filter>] :filters
2221
+ # This parameter is not currently supported.
2222
+ #
2223
+ # @option params [Integer] :max_records
2224
+ # The maximum number of records to include in the response. If more
2225
+ # records exist than the specified `MaxRecords` value, a pagination
2226
+ # token (marker) is included in the response so that the remaining
2227
+ # results can be retrieved.
2228
+ #
2229
+ # Default: 100
2230
+ #
2231
+ # Constraints: Minimum 20, maximum 100.
2232
+ #
2233
+ # @option params [String] :marker
2234
+ # An optional pagination token provided by a previous request. If this
2235
+ # parameter is specified, the response includes only records beyond the
2236
+ # marker, up to the value specified by `MaxRecords`.
2237
+ #
2238
+ # @return [Types::DescribeEngineDefaultClusterParametersResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2239
+ #
2240
+ # * {Types::DescribeEngineDefaultClusterParametersResult#engine_defaults #engine_defaults} => Types::EngineDefaults
2241
+ #
2242
+ # @example Request syntax with placeholder values
2243
+ #
2244
+ # resp = client.describe_engine_default_cluster_parameters({
2245
+ # db_parameter_group_family: "String", # required
2246
+ # filters: [
2247
+ # {
2248
+ # name: "String", # required
2249
+ # values: ["String"], # required
2250
+ # },
2251
+ # ],
2252
+ # max_records: 1,
2253
+ # marker: "String",
2254
+ # })
2255
+ #
2256
+ # @example Response structure
2257
+ #
2258
+ # resp.engine_defaults.db_parameter_group_family #=> String
2259
+ # resp.engine_defaults.marker #=> String
2260
+ # resp.engine_defaults.parameters #=> Array
2261
+ # resp.engine_defaults.parameters[0].parameter_name #=> String
2262
+ # resp.engine_defaults.parameters[0].parameter_value #=> String
2263
+ # resp.engine_defaults.parameters[0].description #=> String
2264
+ # resp.engine_defaults.parameters[0].source #=> String
2265
+ # resp.engine_defaults.parameters[0].apply_type #=> String
2266
+ # resp.engine_defaults.parameters[0].data_type #=> String
2267
+ # resp.engine_defaults.parameters[0].allowed_values #=> String
2268
+ # resp.engine_defaults.parameters[0].is_modifiable #=> Boolean
2269
+ # resp.engine_defaults.parameters[0].minimum_engine_version #=> String
2270
+ # resp.engine_defaults.parameters[0].apply_method #=> String, one of "immediate", "pending-reboot"
2271
+ #
2272
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DescribeEngineDefaultClusterParameters AWS API Documentation
2273
+ #
2274
+ # @overload describe_engine_default_cluster_parameters(params = {})
2275
+ # @param [Hash] params ({})
2276
+ def describe_engine_default_cluster_parameters(params = {}, options = {})
2277
+ req = build_request(:describe_engine_default_cluster_parameters, params)
2278
+ req.send_request(options)
2279
+ end
2280
+
2281
+ # Displays a list of categories for all event source types, or, if
2282
+ # specified, for a specified source type.
2283
+ #
2284
+ # @option params [String] :source_type
2285
+ # The type of source that is generating the events.
2286
+ #
2287
+ # Valid values: `db-instance`, `db-parameter-group`,
2288
+ # `db-security-group`, `db-snapshot`
2289
+ #
2290
+ # @option params [Array<Types::Filter>] :filters
2291
+ # This parameter is not currently supported.
2292
+ #
2293
+ # @return [Types::EventCategoriesMessage] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2294
+ #
2295
+ # * {Types::EventCategoriesMessage#event_categories_map_list #event_categories_map_list} => Array&lt;Types::EventCategoriesMap&gt;
2296
+ #
2297
+ # @example Request syntax with placeholder values
2298
+ #
2299
+ # resp = client.describe_event_categories({
2300
+ # source_type: "String",
2301
+ # filters: [
2302
+ # {
2303
+ # name: "String", # required
2304
+ # values: ["String"], # required
2305
+ # },
2306
+ # ],
2307
+ # })
2308
+ #
2309
+ # @example Response structure
2310
+ #
2311
+ # resp.event_categories_map_list #=> Array
2312
+ # resp.event_categories_map_list[0].source_type #=> String
2313
+ # resp.event_categories_map_list[0].event_categories #=> Array
2314
+ # resp.event_categories_map_list[0].event_categories[0] #=> String
2315
+ #
2316
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DescribeEventCategories AWS API Documentation
2317
+ #
2318
+ # @overload describe_event_categories(params = {})
2319
+ # @param [Hash] params ({})
2320
+ def describe_event_categories(params = {}, options = {})
2321
+ req = build_request(:describe_event_categories, params)
2322
+ req.send_request(options)
2323
+ end
2324
+
2325
+ # Returns events related to DB instances, DB security groups, DB
2326
+ # snapshots, and DB parameter groups for the past 14 days. You can
2327
+ # obtain events specific to a particular DB instance, DB security group,
2328
+ # DB snapshot, or DB parameter group by providing the name as a
2329
+ # parameter. By default, the events of the past hour are returned.
2330
+ #
2331
+ # @option params [String] :source_identifier
2332
+ # The identifier of the event source for which events are returned. If
2333
+ # not specified, then all sources are included in the response.
2334
+ #
2335
+ # Constraints:
2336
+ #
2337
+ # * If `SourceIdentifier` is provided, `SourceType` must also be
2338
+ # provided.
2339
+ #
2340
+ # * If the source type is `DBInstance`, a `DBInstanceIdentifier` must be
2341
+ # provided.
2342
+ #
2343
+ # * If the source type is `DBSecurityGroup`, a `DBSecurityGroupName`
2344
+ # must be provided.
2345
+ #
2346
+ # * If the source type is `DBParameterGroup`, a `DBParameterGroupName`
2347
+ # must be provided.
2348
+ #
2349
+ # * If the source type is `DBSnapshot`, a `DBSnapshotIdentifier` must be
2350
+ # provided.
2351
+ #
2352
+ # * Cannot end with a hyphen or contain two consecutive hyphens.
2353
+ #
2354
+ # @option params [String] :source_type
2355
+ # The event source to retrieve events for. If no value is specified, all
2356
+ # events are returned.
2357
+ #
2358
+ # @option params [Time,DateTime,Date,Integer,String] :start_time
2359
+ # The beginning of the time interval to retrieve events for, specified
2360
+ # in ISO 8601 format.
2361
+ #
2362
+ # Example: 2009-07-08T18:00Z
2363
+ #
2364
+ # @option params [Time,DateTime,Date,Integer,String] :end_time
2365
+ # The end of the time interval for which to retrieve events, specified
2366
+ # in ISO 8601 format.
2367
+ #
2368
+ # Example: 2009-07-08T18:00Z
2369
+ #
2370
+ # @option params [Integer] :duration
2371
+ # The number of minutes to retrieve events for.
2372
+ #
2373
+ # Default: 60
2374
+ #
2375
+ # @option params [Array<String>] :event_categories
2376
+ # A list of event categories that trigger notifications for an event
2377
+ # notification subscription.
2378
+ #
2379
+ # @option params [Array<Types::Filter>] :filters
2380
+ # This parameter is not currently supported.
2381
+ #
2382
+ # @option params [Integer] :max_records
2383
+ # The maximum number of records to include in the response. If more
2384
+ # records exist than the specified `MaxRecords` value, a pagination
2385
+ # token (marker) is included in the response so that the remaining
2386
+ # results can be retrieved.
2387
+ #
2388
+ # Default: 100
2389
+ #
2390
+ # Constraints: Minimum 20, maximum 100.
2391
+ #
2392
+ # @option params [String] :marker
2393
+ # An optional pagination token provided by a previous request. If this
2394
+ # parameter is specified, the response includes only records beyond the
2395
+ # marker, up to the value specified by `MaxRecords`.
2396
+ #
2397
+ # @return [Types::EventsMessage] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2398
+ #
2399
+ # * {Types::EventsMessage#marker #marker} => String
2400
+ # * {Types::EventsMessage#events #events} => Array&lt;Types::Event&gt;
2401
+ #
2402
+ # @example Request syntax with placeholder values
2403
+ #
2404
+ # resp = client.describe_events({
2405
+ # source_identifier: "String",
2406
+ # source_type: "db-instance", # accepts db-instance, db-parameter-group, db-security-group, db-snapshot, db-cluster, db-cluster-snapshot
2407
+ # start_time: Time.now,
2408
+ # end_time: Time.now,
2409
+ # duration: 1,
2410
+ # event_categories: ["String"],
2411
+ # filters: [
2412
+ # {
2413
+ # name: "String", # required
2414
+ # values: ["String"], # required
2415
+ # },
2416
+ # ],
2417
+ # max_records: 1,
2418
+ # marker: "String",
2419
+ # })
2420
+ #
2421
+ # @example Response structure
2422
+ #
2423
+ # resp.marker #=> String
2424
+ # resp.events #=> Array
2425
+ # resp.events[0].source_identifier #=> String
2426
+ # resp.events[0].source_type #=> String, one of "db-instance", "db-parameter-group", "db-security-group", "db-snapshot", "db-cluster", "db-cluster-snapshot"
2427
+ # resp.events[0].message #=> String
2428
+ # resp.events[0].event_categories #=> Array
2429
+ # resp.events[0].event_categories[0] #=> String
2430
+ # resp.events[0].date #=> Time
2431
+ # resp.events[0].source_arn #=> String
2432
+ #
2433
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DescribeEvents AWS API Documentation
2434
+ #
2435
+ # @overload describe_events(params = {})
2436
+ # @param [Hash] params ({})
2437
+ def describe_events(params = {}, options = {})
2438
+ req = build_request(:describe_events, params)
2439
+ req.send_request(options)
2440
+ end
2441
+
2442
+ # Returns a list of orderable DB instance options for the specified
2443
+ # engine.
2444
+ #
2445
+ # @option params [required, String] :engine
2446
+ # The name of the engine to retrieve DB instance options for.
2447
+ #
2448
+ # @option params [String] :engine_version
2449
+ # The engine version filter value. Specify this parameter to show only
2450
+ # the available offerings that match the specified engine version.
2451
+ #
2452
+ # @option params [String] :db_instance_class
2453
+ # The DB instance class filter value. Specify this parameter to show
2454
+ # only the available offerings that match the specified DB instance
2455
+ # class.
2456
+ #
2457
+ # @option params [String] :license_model
2458
+ # The license model filter value. Specify this parameter to show only
2459
+ # the available offerings that match the specified license model.
2460
+ #
2461
+ # @option params [Boolean] :vpc
2462
+ # The virtual private cloud (VPC) filter value. Specify this parameter
2463
+ # to show only the available VPC or non-VPC offerings.
2464
+ #
2465
+ # @option params [Array<Types::Filter>] :filters
2466
+ # This parameter is not currently supported.
2467
+ #
2468
+ # @option params [Integer] :max_records
2469
+ # The maximum number of records to include in the response. If more
2470
+ # records exist than the specified `MaxRecords` value, a pagination
2471
+ # token (marker) is included in the response so that the remaining
2472
+ # results can be retrieved.
2473
+ #
2474
+ # Default: 100
2475
+ #
2476
+ # Constraints: Minimum 20, maximum 100.
2477
+ #
2478
+ # @option params [String] :marker
2479
+ # An optional pagination token provided by a previous request. If this
2480
+ # parameter is specified, the response includes only records beyond the
2481
+ # marker, up to the value specified by `MaxRecords`.
2482
+ #
2483
+ # @return [Types::OrderableDBInstanceOptionsMessage] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2484
+ #
2485
+ # * {Types::OrderableDBInstanceOptionsMessage#orderable_db_instance_options #orderable_db_instance_options} => Array&lt;Types::OrderableDBInstanceOption&gt;
2486
+ # * {Types::OrderableDBInstanceOptionsMessage#marker #marker} => String
2487
+ #
2488
+ # @example Request syntax with placeholder values
2489
+ #
2490
+ # resp = client.describe_orderable_db_instance_options({
2491
+ # engine: "String", # required
2492
+ # engine_version: "String",
2493
+ # db_instance_class: "String",
2494
+ # license_model: "String",
2495
+ # vpc: false,
2496
+ # filters: [
2497
+ # {
2498
+ # name: "String", # required
2499
+ # values: ["String"], # required
2500
+ # },
2501
+ # ],
2502
+ # max_records: 1,
2503
+ # marker: "String",
2504
+ # })
2505
+ #
2506
+ # @example Response structure
2507
+ #
2508
+ # resp.orderable_db_instance_options #=> Array
2509
+ # resp.orderable_db_instance_options[0].engine #=> String
2510
+ # resp.orderable_db_instance_options[0].engine_version #=> String
2511
+ # resp.orderable_db_instance_options[0].db_instance_class #=> String
2512
+ # resp.orderable_db_instance_options[0].license_model #=> String
2513
+ # resp.orderable_db_instance_options[0].availability_zones #=> Array
2514
+ # resp.orderable_db_instance_options[0].availability_zones[0].name #=> String
2515
+ # resp.orderable_db_instance_options[0].vpc #=> Boolean
2516
+ # resp.marker #=> String
2517
+ #
2518
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DescribeOrderableDBInstanceOptions AWS API Documentation
2519
+ #
2520
+ # @overload describe_orderable_db_instance_options(params = {})
2521
+ # @param [Hash] params ({})
2522
+ def describe_orderable_db_instance_options(params = {}, options = {})
2523
+ req = build_request(:describe_orderable_db_instance_options, params)
2524
+ req.send_request(options)
2525
+ end
2526
+
2527
+ # Returns a list of resources (for example, DB instances) that have at
2528
+ # least one pending maintenance action.
2529
+ #
2530
+ # @option params [String] :resource_identifier
2531
+ # The ARN of a resource to return pending maintenance actions for.
2532
+ #
2533
+ # @option params [Array<Types::Filter>] :filters
2534
+ # A filter that specifies one or more resources to return pending
2535
+ # maintenance actions for.
2536
+ #
2537
+ # Supported filters:
2538
+ #
2539
+ # * `db-cluster-id` - Accepts DB cluster identifiers and DB cluster
2540
+ # Amazon Resource Names (ARNs). The results list includes only pending
2541
+ # maintenance actions for the DB clusters identified by these ARNs.
2542
+ #
2543
+ # * `db-instance-id` - Accepts DB instance identifiers and DB instance
2544
+ # ARNs. The results list includes only pending maintenance actions for
2545
+ # the DB instances identified by these ARNs.
2546
+ #
2547
+ # @option params [String] :marker
2548
+ # An optional pagination token provided by a previous request. If this
2549
+ # parameter is specified, the response includes only records beyond the
2550
+ # marker, up to the value specified by `MaxRecords`.
2551
+ #
2552
+ # @option params [Integer] :max_records
2553
+ # The maximum number of records to include in the response. If more
2554
+ # records exist than the specified `MaxRecords` value, a pagination
2555
+ # token (marker) is included in the response so that the remaining
2556
+ # results can be retrieved.
2557
+ #
2558
+ # Default: 100
2559
+ #
2560
+ # Constraints: Minimum 20, maximum 100.
2561
+ #
2562
+ # @return [Types::PendingMaintenanceActionsMessage] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2563
+ #
2564
+ # * {Types::PendingMaintenanceActionsMessage#pending_maintenance_actions #pending_maintenance_actions} => Array&lt;Types::ResourcePendingMaintenanceActions&gt;
2565
+ # * {Types::PendingMaintenanceActionsMessage#marker #marker} => String
2566
+ #
2567
+ # @example Request syntax with placeholder values
2568
+ #
2569
+ # resp = client.describe_pending_maintenance_actions({
2570
+ # resource_identifier: "String",
2571
+ # filters: [
2572
+ # {
2573
+ # name: "String", # required
2574
+ # values: ["String"], # required
2575
+ # },
2576
+ # ],
2577
+ # marker: "String",
2578
+ # max_records: 1,
2579
+ # })
2580
+ #
2581
+ # @example Response structure
2582
+ #
2583
+ # resp.pending_maintenance_actions #=> Array
2584
+ # resp.pending_maintenance_actions[0].resource_identifier #=> String
2585
+ # resp.pending_maintenance_actions[0].pending_maintenance_action_details #=> Array
2586
+ # resp.pending_maintenance_actions[0].pending_maintenance_action_details[0].action #=> String
2587
+ # resp.pending_maintenance_actions[0].pending_maintenance_action_details[0].auto_applied_after_date #=> Time
2588
+ # resp.pending_maintenance_actions[0].pending_maintenance_action_details[0].forced_apply_date #=> Time
2589
+ # resp.pending_maintenance_actions[0].pending_maintenance_action_details[0].opt_in_status #=> String
2590
+ # resp.pending_maintenance_actions[0].pending_maintenance_action_details[0].current_apply_date #=> Time
2591
+ # resp.pending_maintenance_actions[0].pending_maintenance_action_details[0].description #=> String
2592
+ # resp.marker #=> String
2593
+ #
2594
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DescribePendingMaintenanceActions AWS API Documentation
2595
+ #
2596
+ # @overload describe_pending_maintenance_actions(params = {})
2597
+ # @param [Hash] params ({})
2598
+ def describe_pending_maintenance_actions(params = {}, options = {})
2599
+ req = build_request(:describe_pending_maintenance_actions, params)
2600
+ req.send_request(options)
2601
+ end
2602
+
2603
+ # Forces a failover for a DB cluster.
2604
+ #
2605
+ # A failover for a DB cluster promotes one of the Amazon DocumentDB
2606
+ # replicas (read-only instances) in the DB cluster to be the primary
2607
+ # instance (the cluster writer).
2608
+ #
2609
+ # If the primary instance fails, Amazon DocumentDB automatically fails
2610
+ # over to an Amazon DocumentDB replica, if one exists. You can force a
2611
+ # failover when you want to simulate a failure of a primary instance for
2612
+ # testing.
2613
+ #
2614
+ # @option params [String] :db_cluster_identifier
2615
+ # A DB cluster identifier to force a failover for. This parameter is not
2616
+ # case sensitive.
2617
+ #
2618
+ # Constraints:
2619
+ #
2620
+ # * Must match the identifier of an existing `DBCluster`.
2621
+ #
2622
+ # ^
2623
+ #
2624
+ # @option params [String] :target_db_instance_identifier
2625
+ # The name of the instance to promote to the primary instance.
2626
+ #
2627
+ # You must specify the instance identifier for an Amazon DocumentDB
2628
+ # replica in the DB cluster. For example, `mydbcluster-replica1`.
2629
+ #
2630
+ # @return [Types::FailoverDBClusterResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2631
+ #
2632
+ # * {Types::FailoverDBClusterResult#db_cluster #db_cluster} => Types::DBCluster
2633
+ #
2634
+ # @example Request syntax with placeholder values
2635
+ #
2636
+ # resp = client.failover_db_cluster({
2637
+ # db_cluster_identifier: "String",
2638
+ # target_db_instance_identifier: "String",
2639
+ # })
2640
+ #
2641
+ # @example Response structure
2642
+ #
2643
+ # resp.db_cluster.availability_zones #=> Array
2644
+ # resp.db_cluster.availability_zones[0] #=> String
2645
+ # resp.db_cluster.backup_retention_period #=> Integer
2646
+ # resp.db_cluster.db_cluster_identifier #=> String
2647
+ # resp.db_cluster.db_cluster_parameter_group #=> String
2648
+ # resp.db_cluster.db_subnet_group #=> String
2649
+ # resp.db_cluster.status #=> String
2650
+ # resp.db_cluster.percent_progress #=> String
2651
+ # resp.db_cluster.earliest_restorable_time #=> Time
2652
+ # resp.db_cluster.endpoint #=> String
2653
+ # resp.db_cluster.reader_endpoint #=> String
2654
+ # resp.db_cluster.multi_az #=> Boolean
2655
+ # resp.db_cluster.engine #=> String
2656
+ # resp.db_cluster.engine_version #=> String
2657
+ # resp.db_cluster.latest_restorable_time #=> Time
2658
+ # resp.db_cluster.port #=> Integer
2659
+ # resp.db_cluster.master_username #=> String
2660
+ # resp.db_cluster.preferred_backup_window #=> String
2661
+ # resp.db_cluster.preferred_maintenance_window #=> String
2662
+ # resp.db_cluster.db_cluster_members #=> Array
2663
+ # resp.db_cluster.db_cluster_members[0].db_instance_identifier #=> String
2664
+ # resp.db_cluster.db_cluster_members[0].is_cluster_writer #=> Boolean
2665
+ # resp.db_cluster.db_cluster_members[0].db_cluster_parameter_group_status #=> String
2666
+ # resp.db_cluster.db_cluster_members[0].promotion_tier #=> Integer
2667
+ # resp.db_cluster.vpc_security_groups #=> Array
2668
+ # resp.db_cluster.vpc_security_groups[0].vpc_security_group_id #=> String
2669
+ # resp.db_cluster.vpc_security_groups[0].status #=> String
2670
+ # resp.db_cluster.hosted_zone_id #=> String
2671
+ # resp.db_cluster.storage_encrypted #=> Boolean
2672
+ # resp.db_cluster.kms_key_id #=> String
2673
+ # resp.db_cluster.db_cluster_resource_id #=> String
2674
+ # resp.db_cluster.db_cluster_arn #=> String
2675
+ # resp.db_cluster.associated_roles #=> Array
2676
+ # resp.db_cluster.associated_roles[0].role_arn #=> String
2677
+ # resp.db_cluster.associated_roles[0].status #=> String
2678
+ # resp.db_cluster.cluster_create_time #=> Time
2679
+ # resp.db_cluster.enabled_cloudwatch_logs_exports #=> Array
2680
+ # resp.db_cluster.enabled_cloudwatch_logs_exports[0] #=> String
2681
+ #
2682
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/FailoverDBCluster AWS API Documentation
2683
+ #
2684
+ # @overload failover_db_cluster(params = {})
2685
+ # @param [Hash] params ({})
2686
+ def failover_db_cluster(params = {}, options = {})
2687
+ req = build_request(:failover_db_cluster, params)
2688
+ req.send_request(options)
2689
+ end
2690
+
2691
+ # Lists all tags on an Amazon DocumentDB resource.
2692
+ #
2693
+ # @option params [required, String] :resource_name
2694
+ # The Amazon DocumentDB resource with tags to be listed. This value is
2695
+ # an Amazon Resource Name (ARN).
2696
+ #
2697
+ # @option params [Array<Types::Filter>] :filters
2698
+ # This parameter is not currently supported.
2699
+ #
2700
+ # @return [Types::TagListMessage] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2701
+ #
2702
+ # * {Types::TagListMessage#tag_list #tag_list} => Array&lt;Types::Tag&gt;
2703
+ #
2704
+ # @example Request syntax with placeholder values
2705
+ #
2706
+ # resp = client.list_tags_for_resource({
2707
+ # resource_name: "String", # required
2708
+ # filters: [
2709
+ # {
2710
+ # name: "String", # required
2711
+ # values: ["String"], # required
2712
+ # },
2713
+ # ],
2714
+ # })
2715
+ #
2716
+ # @example Response structure
2717
+ #
2718
+ # resp.tag_list #=> Array
2719
+ # resp.tag_list[0].key #=> String
2720
+ # resp.tag_list[0].value #=> String
2721
+ #
2722
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/ListTagsForResource AWS API Documentation
2723
+ #
2724
+ # @overload list_tags_for_resource(params = {})
2725
+ # @param [Hash] params ({})
2726
+ def list_tags_for_resource(params = {}, options = {})
2727
+ req = build_request(:list_tags_for_resource, params)
2728
+ req.send_request(options)
2729
+ end
2730
+
2731
+ # Modifies a setting for an Amazon DocumentDB DB cluster. You can change
2732
+ # one or more database configuration parameters by specifying these
2733
+ # parameters and the new values in the request.
2734
+ #
2735
+ # @option params [required, String] :db_cluster_identifier
2736
+ # The DB cluster identifier for the cluster that is being modified. This
2737
+ # parameter is not case sensitive.
2738
+ #
2739
+ # Constraints:
2740
+ #
2741
+ # * Must match the identifier of an existing `DBCluster`.
2742
+ #
2743
+ # ^
2744
+ #
2745
+ # @option params [String] :new_db_cluster_identifier
2746
+ # The new DB cluster identifier for the DB cluster when renaming a DB
2747
+ # cluster. This value is stored as a lowercase string.
2748
+ #
2749
+ # Constraints:
2750
+ #
2751
+ # * Must contain from 1 to 63 letters, numbers, or hyphens.
2752
+ #
2753
+ # * The first character must be a letter.
2754
+ #
2755
+ # * Cannot end with a hyphen or contain two consecutive hyphens.
2756
+ #
2757
+ # Example: `my-cluster2`
2758
+ #
2759
+ # @option params [Boolean] :apply_immediately
2760
+ # A value that specifies whether the changes in this request and any
2761
+ # pending changes are asynchronously applied as soon as possible,
2762
+ # regardless of the `PreferredMaintenanceWindow` setting for the DB
2763
+ # cluster. If this parameter is set to `false`, changes to the DB
2764
+ # cluster are applied during the next maintenance window.
2765
+ #
2766
+ # The `ApplyImmediately` parameter affects only the
2767
+ # `NewDBClusterIdentifier` and `MasterUserPassword` values. If you set
2768
+ # this parameter value to `false`, the changes to the
2769
+ # `NewDBClusterIdentifier` and `MasterUserPassword` values are applied
2770
+ # during the next maintenance window. All other changes are applied
2771
+ # immediately, regardless of the value of the `ApplyImmediately`
2772
+ # parameter.
2773
+ #
2774
+ # Default: `false`
2775
+ #
2776
+ # @option params [Integer] :backup_retention_period
2777
+ # The number of days for which automated backups are retained. You must
2778
+ # specify a minimum value of 1.
2779
+ #
2780
+ # Default: 1
2781
+ #
2782
+ # Constraints:
2783
+ #
2784
+ # * Must be a value from 1 to 35.
2785
+ #
2786
+ # ^
2787
+ #
2788
+ # @option params [String] :db_cluster_parameter_group_name
2789
+ # The name of the DB cluster parameter group to use for the DB cluster.
2790
+ #
2791
+ # @option params [Array<String>] :vpc_security_group_ids
2792
+ # A list of virtual private cloud (VPC) security groups that the DB
2793
+ # cluster will belong to.
2794
+ #
2795
+ # @option params [Integer] :port
2796
+ # The port number on which the DB cluster accepts connections.
2797
+ #
2798
+ # Constraints: Must be a value from `1150` to `65535`.
2799
+ #
2800
+ # Default: The same port as the original DB cluster.
2801
+ #
2802
+ # @option params [String] :master_user_password
2803
+ # The new password for the master database user. This password can
2804
+ # contain any printable ASCII character except "`/`", "`"`", or
2805
+ # "`@`".
2806
+ #
2807
+ # Constraints: Must contain from 8 to 41 characters.
2808
+ #
2809
+ # @option params [String] :preferred_backup_window
2810
+ # The daily time range during which automated backups are created if
2811
+ # automated backups are enabled, using the `BackupRetentionPeriod`
2812
+ # parameter.
2813
+ #
2814
+ # The default is a 30-minute window selected at random from an 8-hour
2815
+ # block of time for each AWS Region.
2816
+ #
2817
+ # Constraints:
2818
+ #
2819
+ # * Must be in the format `hh24:mi-hh24:mi`.
2820
+ #
2821
+ # * Must be in Universal Coordinated Time (UTC).
2822
+ #
2823
+ # * Must not conflict with the preferred maintenance window.
2824
+ #
2825
+ # * Must be at least 30 minutes.
2826
+ #
2827
+ # @option params [String] :preferred_maintenance_window
2828
+ # The weekly time range during which system maintenance can occur, in
2829
+ # Universal Coordinated Time (UTC).
2830
+ #
2831
+ # Format: `ddd:hh24:mi-ddd:hh24:mi`
2832
+ #
2833
+ # The default is a 30-minute window selected at random from an 8-hour
2834
+ # block of time for each AWS Region, occurring on a random day of the
2835
+ # week.
2836
+ #
2837
+ # Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun
2838
+ #
2839
+ # Constraints: Minimum 30-minute window.
2840
+ #
2841
+ # @option params [Types::CloudwatchLogsExportConfiguration] :cloudwatch_logs_export_configuration
2842
+ # The configuration setting for the log types to be enabled for export
2843
+ # to Amazon CloudWatch Logs for a specific DB instance or DB cluster.
2844
+ # The `EnableLogTypes` and `DisableLogTypes` arrays determine which logs
2845
+ # are exported (or not exported) to CloudWatch Logs.
2846
+ #
2847
+ # @option params [String] :engine_version
2848
+ # The version number of the database engine to which you want to
2849
+ # upgrade. Changing this parameter results in an outage. The change is
2850
+ # applied during the next maintenance window unless the
2851
+ # `ApplyImmediately` parameter is set to `true`.
2852
+ #
2853
+ # @return [Types::ModifyDBClusterResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2854
+ #
2855
+ # * {Types::ModifyDBClusterResult#db_cluster #db_cluster} => Types::DBCluster
2856
+ #
2857
+ # @example Request syntax with placeholder values
2858
+ #
2859
+ # resp = client.modify_db_cluster({
2860
+ # db_cluster_identifier: "String", # required
2861
+ # new_db_cluster_identifier: "String",
2862
+ # apply_immediately: false,
2863
+ # backup_retention_period: 1,
2864
+ # db_cluster_parameter_group_name: "String",
2865
+ # vpc_security_group_ids: ["String"],
2866
+ # port: 1,
2867
+ # master_user_password: "String",
2868
+ # preferred_backup_window: "String",
2869
+ # preferred_maintenance_window: "String",
2870
+ # cloudwatch_logs_export_configuration: {
2871
+ # enable_log_types: ["String"],
2872
+ # disable_log_types: ["String"],
2873
+ # },
2874
+ # engine_version: "String",
2875
+ # })
2876
+ #
2877
+ # @example Response structure
2878
+ #
2879
+ # resp.db_cluster.availability_zones #=> Array
2880
+ # resp.db_cluster.availability_zones[0] #=> String
2881
+ # resp.db_cluster.backup_retention_period #=> Integer
2882
+ # resp.db_cluster.db_cluster_identifier #=> String
2883
+ # resp.db_cluster.db_cluster_parameter_group #=> String
2884
+ # resp.db_cluster.db_subnet_group #=> String
2885
+ # resp.db_cluster.status #=> String
2886
+ # resp.db_cluster.percent_progress #=> String
2887
+ # resp.db_cluster.earliest_restorable_time #=> Time
2888
+ # resp.db_cluster.endpoint #=> String
2889
+ # resp.db_cluster.reader_endpoint #=> String
2890
+ # resp.db_cluster.multi_az #=> Boolean
2891
+ # resp.db_cluster.engine #=> String
2892
+ # resp.db_cluster.engine_version #=> String
2893
+ # resp.db_cluster.latest_restorable_time #=> Time
2894
+ # resp.db_cluster.port #=> Integer
2895
+ # resp.db_cluster.master_username #=> String
2896
+ # resp.db_cluster.preferred_backup_window #=> String
2897
+ # resp.db_cluster.preferred_maintenance_window #=> String
2898
+ # resp.db_cluster.db_cluster_members #=> Array
2899
+ # resp.db_cluster.db_cluster_members[0].db_instance_identifier #=> String
2900
+ # resp.db_cluster.db_cluster_members[0].is_cluster_writer #=> Boolean
2901
+ # resp.db_cluster.db_cluster_members[0].db_cluster_parameter_group_status #=> String
2902
+ # resp.db_cluster.db_cluster_members[0].promotion_tier #=> Integer
2903
+ # resp.db_cluster.vpc_security_groups #=> Array
2904
+ # resp.db_cluster.vpc_security_groups[0].vpc_security_group_id #=> String
2905
+ # resp.db_cluster.vpc_security_groups[0].status #=> String
2906
+ # resp.db_cluster.hosted_zone_id #=> String
2907
+ # resp.db_cluster.storage_encrypted #=> Boolean
2908
+ # resp.db_cluster.kms_key_id #=> String
2909
+ # resp.db_cluster.db_cluster_resource_id #=> String
2910
+ # resp.db_cluster.db_cluster_arn #=> String
2911
+ # resp.db_cluster.associated_roles #=> Array
2912
+ # resp.db_cluster.associated_roles[0].role_arn #=> String
2913
+ # resp.db_cluster.associated_roles[0].status #=> String
2914
+ # resp.db_cluster.cluster_create_time #=> Time
2915
+ # resp.db_cluster.enabled_cloudwatch_logs_exports #=> Array
2916
+ # resp.db_cluster.enabled_cloudwatch_logs_exports[0] #=> String
2917
+ #
2918
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/ModifyDBCluster AWS API Documentation
2919
+ #
2920
+ # @overload modify_db_cluster(params = {})
2921
+ # @param [Hash] params ({})
2922
+ def modify_db_cluster(params = {}, options = {})
2923
+ req = build_request(:modify_db_cluster, params)
2924
+ req.send_request(options)
2925
+ end
2926
+
2927
+ # Modifies the parameters of a DB cluster parameter group. To modify
2928
+ # more than one parameter, submit a list of the following:
2929
+ # `ParameterName`, `ParameterValue`, and `ApplyMethod`. A maximum of 20
2930
+ # parameters can be modified in a single request.
2931
+ #
2932
+ # <note markdown="1"> Changes to dynamic parameters are applied immediately. Changes to
2933
+ # static parameters require a reboot or maintenance window before the
2934
+ # change can take effect.
2935
+ #
2936
+ # </note>
2937
+ #
2938
+ # After you create a DB cluster parameter group, you should wait at
2939
+ # least 5 minutes before creating your first DB cluster that uses that
2940
+ # DB cluster parameter group as the default parameter group. This allows
2941
+ # Amazon DocumentDB to fully complete the create action before the
2942
+ # parameter group is used as the default for a new DB cluster. This step
2943
+ # is especially important for parameters that are critical when creating
2944
+ # the default database for a DB cluster, such as the character set for
2945
+ # the default database defined by the `character_set_database`
2946
+ # parameter.
2947
+ #
2948
+ # @option params [required, String] :db_cluster_parameter_group_name
2949
+ # The name of the DB cluster parameter group to modify.
2950
+ #
2951
+ # @option params [required, Array<Types::Parameter>] :parameters
2952
+ # A list of parameters in the DB cluster parameter group to modify.
2953
+ #
2954
+ # @return [Types::DBClusterParameterGroupNameMessage] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2955
+ #
2956
+ # * {Types::DBClusterParameterGroupNameMessage#db_cluster_parameter_group_name #db_cluster_parameter_group_name} => String
2957
+ #
2958
+ # @example Request syntax with placeholder values
2959
+ #
2960
+ # resp = client.modify_db_cluster_parameter_group({
2961
+ # db_cluster_parameter_group_name: "String", # required
2962
+ # parameters: [ # required
2963
+ # {
2964
+ # parameter_name: "String",
2965
+ # parameter_value: "String",
2966
+ # description: "String",
2967
+ # source: "String",
2968
+ # apply_type: "String",
2969
+ # data_type: "String",
2970
+ # allowed_values: "String",
2971
+ # is_modifiable: false,
2972
+ # minimum_engine_version: "String",
2973
+ # apply_method: "immediate", # accepts immediate, pending-reboot
2974
+ # },
2975
+ # ],
2976
+ # })
2977
+ #
2978
+ # @example Response structure
2979
+ #
2980
+ # resp.db_cluster_parameter_group_name #=> String
2981
+ #
2982
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/ModifyDBClusterParameterGroup AWS API Documentation
2983
+ #
2984
+ # @overload modify_db_cluster_parameter_group(params = {})
2985
+ # @param [Hash] params ({})
2986
+ def modify_db_cluster_parameter_group(params = {}, options = {})
2987
+ req = build_request(:modify_db_cluster_parameter_group, params)
2988
+ req.send_request(options)
2989
+ end
2990
+
2991
+ # Adds an attribute and values to, or removes an attribute and values
2992
+ # from, a manual DB cluster snapshot.
2993
+ #
2994
+ # To share a manual DB cluster snapshot with other AWS accounts, specify
2995
+ # `restore` as the `AttributeName`, and use the `ValuesToAdd` parameter
2996
+ # to add a list of IDs of the AWS accounts that are authorized to
2997
+ # restore the manual DB cluster snapshot. Use the value `all` to make
2998
+ # the manual DB cluster snapshot public, which means that it can be
2999
+ # copied or restored by all AWS accounts. Do not add the `all` value for
3000
+ # any manual DB cluster snapshots that contain private information that
3001
+ # you don't want available to all AWS accounts. If a manual DB cluster
3002
+ # snapshot is encrypted, it can be shared, but only by specifying a list
3003
+ # of authorized AWS account IDs for the `ValuesToAdd` parameter. You
3004
+ # can't use `all` as a value for that parameter in this case.
3005
+ #
3006
+ # @option params [required, String] :db_cluster_snapshot_identifier
3007
+ # The identifier for the DB cluster snapshot to modify the attributes
3008
+ # for.
3009
+ #
3010
+ # @option params [required, String] :attribute_name
3011
+ # The name of the DB cluster snapshot attribute to modify.
3012
+ #
3013
+ # To manage authorization for other AWS accounts to copy or restore a
3014
+ # manual DB cluster snapshot, set this value to `restore`.
3015
+ #
3016
+ # @option params [Array<String>] :values_to_add
3017
+ # A list of DB cluster snapshot attributes to add to the attribute
3018
+ # specified by `AttributeName`.
3019
+ #
3020
+ # To authorize other AWS accounts to copy or restore a manual DB cluster
3021
+ # snapshot, set this list to include one or more AWS account IDs. To
3022
+ # make the manual DB cluster snapshot restorable by any AWS account, set
3023
+ # it to `all`. Do not add the `all` value for any manual DB cluster
3024
+ # snapshots that contain private information that you don't want to be
3025
+ # available to all AWS accounts.
3026
+ #
3027
+ # @option params [Array<String>] :values_to_remove
3028
+ # A list of DB cluster snapshot attributes to remove from the attribute
3029
+ # specified by `AttributeName`.
3030
+ #
3031
+ # To remove authorization for other AWS accounts to copy or restore a
3032
+ # manual DB cluster snapshot, set this list to include one or more AWS
3033
+ # account identifiers. To remove authorization for any AWS account to
3034
+ # copy or restore the DB cluster snapshot, set it to `all` . If you
3035
+ # specify `all`, an AWS account whose account ID is explicitly added to
3036
+ # the `restore` attribute can still copy or restore a manual DB cluster
3037
+ # snapshot.
3038
+ #
3039
+ # @return [Types::ModifyDBClusterSnapshotAttributeResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3040
+ #
3041
+ # * {Types::ModifyDBClusterSnapshotAttributeResult#db_cluster_snapshot_attributes_result #db_cluster_snapshot_attributes_result} => Types::DBClusterSnapshotAttributesResult
3042
+ #
3043
+ # @example Request syntax with placeholder values
3044
+ #
3045
+ # resp = client.modify_db_cluster_snapshot_attribute({
3046
+ # db_cluster_snapshot_identifier: "String", # required
3047
+ # attribute_name: "String", # required
3048
+ # values_to_add: ["String"],
3049
+ # values_to_remove: ["String"],
3050
+ # })
3051
+ #
3052
+ # @example Response structure
3053
+ #
3054
+ # resp.db_cluster_snapshot_attributes_result.db_cluster_snapshot_identifier #=> String
3055
+ # resp.db_cluster_snapshot_attributes_result.db_cluster_snapshot_attributes #=> Array
3056
+ # resp.db_cluster_snapshot_attributes_result.db_cluster_snapshot_attributes[0].attribute_name #=> String
3057
+ # resp.db_cluster_snapshot_attributes_result.db_cluster_snapshot_attributes[0].attribute_values #=> Array
3058
+ # resp.db_cluster_snapshot_attributes_result.db_cluster_snapshot_attributes[0].attribute_values[0] #=> String
3059
+ #
3060
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/ModifyDBClusterSnapshotAttribute AWS API Documentation
3061
+ #
3062
+ # @overload modify_db_cluster_snapshot_attribute(params = {})
3063
+ # @param [Hash] params ({})
3064
+ def modify_db_cluster_snapshot_attribute(params = {}, options = {})
3065
+ req = build_request(:modify_db_cluster_snapshot_attribute, params)
3066
+ req.send_request(options)
3067
+ end
3068
+
3069
+ # Modifies settings for a DB instance. You can change one or more
3070
+ # database configuration parameters by specifying these parameters and
3071
+ # the new values in the request.
3072
+ #
3073
+ # @option params [required, String] :db_instance_identifier
3074
+ # The DB instance identifier. This value is stored as a lowercase
3075
+ # string.
3076
+ #
3077
+ # Constraints:
3078
+ #
3079
+ # * Must match the identifier of an existing `DBInstance`.
3080
+ #
3081
+ # ^
3082
+ #
3083
+ # @option params [String] :db_instance_class
3084
+ # The new compute and memory capacity of the DB instance; for example,
3085
+ # `db.m4.large`. Not all DB instance classes are available in all AWS
3086
+ # Regions.
3087
+ #
3088
+ # If you modify the DB instance class, an outage occurs during the
3089
+ # change. The change is applied during the next maintenance window,
3090
+ # unless `ApplyImmediately` is specified as `true` for this request.
3091
+ #
3092
+ # Default: Uses existing setting.
3093
+ #
3094
+ # @option params [Boolean] :apply_immediately
3095
+ # Specifies whether the modifications in this request and any pending
3096
+ # modifications are asynchronously applied as soon as possible,
3097
+ # regardless of the `PreferredMaintenanceWindow` setting for the DB
3098
+ # instance.
3099
+ #
3100
+ # If this parameter is set to `false`, changes to the DB instance are
3101
+ # applied during the next maintenance window. Some parameter changes can
3102
+ # cause an outage and are applied on the next reboot.
3103
+ #
3104
+ # Default: `false`
3105
+ #
3106
+ # @option params [String] :preferred_maintenance_window
3107
+ # The weekly time range (in UTC) during which system maintenance can
3108
+ # occur, which might result in an outage. Changing this parameter
3109
+ # doesn't result in an outage except in the following situation, and
3110
+ # the change is asynchronously applied as soon as possible. If there are
3111
+ # pending actions that cause a reboot, and the maintenance window is
3112
+ # changed to include the current time, changing this parameter causes a
3113
+ # reboot of the DB instance. If you are moving this window to the
3114
+ # current time, there must be at least 30 minutes between the current
3115
+ # time and end of the window to ensure that pending changes are applied.
3116
+ #
3117
+ # Default: Uses existing setting.
3118
+ #
3119
+ # Format: `ddd:hh24:mi-ddd:hh24:mi`
3120
+ #
3121
+ # Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun
3122
+ #
3123
+ # Constraints: Must be at least 30 minutes.
3124
+ #
3125
+ # @option params [Boolean] :auto_minor_version_upgrade
3126
+ # Indicates that minor version upgrades are applied automatically to the
3127
+ # DB instance during the maintenance window. Changing this parameter
3128
+ # doesn't result in an outage except in the following case, and the
3129
+ # change is asynchronously applied as soon as possible. An outage
3130
+ # results if this parameter is set to `true` during the maintenance
3131
+ # window, and a newer minor version is available, and Amazon DocumentDB
3132
+ # has enabled automatic patching for that engine version.
3133
+ #
3134
+ # @option params [String] :new_db_instance_identifier
3135
+ # The new DB instance identifier for the DB instance when renaming a DB
3136
+ # instance. When you change the DB instance identifier, an instance
3137
+ # reboot occurs immediately if you set `Apply Immediately` to `true`. It
3138
+ # occurs during the next maintenance window if you set `Apply
3139
+ # Immediately` to `false`. This value is stored as a lowercase string.
3140
+ #
3141
+ # Constraints:
3142
+ #
3143
+ # * Must contain from 1 to 63 letters, numbers, or hyphens.
3144
+ #
3145
+ # * The first character must be a letter.
3146
+ #
3147
+ # * Cannot end with a hyphen or contain two consecutive hyphens.
3148
+ #
3149
+ # Example: `mydbinstance`
3150
+ #
3151
+ # @option params [Integer] :promotion_tier
3152
+ # A value that specifies the order in which an Amazon DocumentDB replica
3153
+ # is promoted to the primary instance after a failure of the existing
3154
+ # primary instance.
3155
+ #
3156
+ # Default: 1
3157
+ #
3158
+ # Valid values: 0-15
3159
+ #
3160
+ # @return [Types::ModifyDBInstanceResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3161
+ #
3162
+ # * {Types::ModifyDBInstanceResult#db_instance #db_instance} => Types::DBInstance
3163
+ #
3164
+ # @example Request syntax with placeholder values
3165
+ #
3166
+ # resp = client.modify_db_instance({
3167
+ # db_instance_identifier: "String", # required
3168
+ # db_instance_class: "String",
3169
+ # apply_immediately: false,
3170
+ # preferred_maintenance_window: "String",
3171
+ # auto_minor_version_upgrade: false,
3172
+ # new_db_instance_identifier: "String",
3173
+ # promotion_tier: 1,
3174
+ # })
3175
+ #
3176
+ # @example Response structure
3177
+ #
3178
+ # resp.db_instance.db_instance_identifier #=> String
3179
+ # resp.db_instance.db_instance_class #=> String
3180
+ # resp.db_instance.engine #=> String
3181
+ # resp.db_instance.db_instance_status #=> String
3182
+ # resp.db_instance.endpoint.address #=> String
3183
+ # resp.db_instance.endpoint.port #=> Integer
3184
+ # resp.db_instance.endpoint.hosted_zone_id #=> String
3185
+ # resp.db_instance.instance_create_time #=> Time
3186
+ # resp.db_instance.preferred_backup_window #=> String
3187
+ # resp.db_instance.backup_retention_period #=> Integer
3188
+ # resp.db_instance.vpc_security_groups #=> Array
3189
+ # resp.db_instance.vpc_security_groups[0].vpc_security_group_id #=> String
3190
+ # resp.db_instance.vpc_security_groups[0].status #=> String
3191
+ # resp.db_instance.availability_zone #=> String
3192
+ # resp.db_instance.db_subnet_group.db_subnet_group_name #=> String
3193
+ # resp.db_instance.db_subnet_group.db_subnet_group_description #=> String
3194
+ # resp.db_instance.db_subnet_group.vpc_id #=> String
3195
+ # resp.db_instance.db_subnet_group.subnet_group_status #=> String
3196
+ # resp.db_instance.db_subnet_group.subnets #=> Array
3197
+ # resp.db_instance.db_subnet_group.subnets[0].subnet_identifier #=> String
3198
+ # resp.db_instance.db_subnet_group.subnets[0].subnet_availability_zone.name #=> String
3199
+ # resp.db_instance.db_subnet_group.subnets[0].subnet_status #=> String
3200
+ # resp.db_instance.db_subnet_group.db_subnet_group_arn #=> String
3201
+ # resp.db_instance.preferred_maintenance_window #=> String
3202
+ # resp.db_instance.pending_modified_values.db_instance_class #=> String
3203
+ # resp.db_instance.pending_modified_values.allocated_storage #=> Integer
3204
+ # resp.db_instance.pending_modified_values.master_user_password #=> String
3205
+ # resp.db_instance.pending_modified_values.port #=> Integer
3206
+ # resp.db_instance.pending_modified_values.backup_retention_period #=> Integer
3207
+ # resp.db_instance.pending_modified_values.multi_az #=> Boolean
3208
+ # resp.db_instance.pending_modified_values.engine_version #=> String
3209
+ # resp.db_instance.pending_modified_values.license_model #=> String
3210
+ # resp.db_instance.pending_modified_values.iops #=> Integer
3211
+ # resp.db_instance.pending_modified_values.db_instance_identifier #=> String
3212
+ # resp.db_instance.pending_modified_values.storage_type #=> String
3213
+ # resp.db_instance.pending_modified_values.ca_certificate_identifier #=> String
3214
+ # resp.db_instance.pending_modified_values.db_subnet_group_name #=> String
3215
+ # resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
3216
+ # resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
3217
+ # resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
3218
+ # resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
3219
+ # resp.db_instance.latest_restorable_time #=> Time
3220
+ # resp.db_instance.engine_version #=> String
3221
+ # resp.db_instance.auto_minor_version_upgrade #=> Boolean
3222
+ # resp.db_instance.publicly_accessible #=> Boolean
3223
+ # resp.db_instance.status_infos #=> Array
3224
+ # resp.db_instance.status_infos[0].status_type #=> String
3225
+ # resp.db_instance.status_infos[0].normal #=> Boolean
3226
+ # resp.db_instance.status_infos[0].status #=> String
3227
+ # resp.db_instance.status_infos[0].message #=> String
3228
+ # resp.db_instance.db_cluster_identifier #=> String
3229
+ # resp.db_instance.storage_encrypted #=> Boolean
3230
+ # resp.db_instance.kms_key_id #=> String
3231
+ # resp.db_instance.dbi_resource_id #=> String
3232
+ # resp.db_instance.promotion_tier #=> Integer
3233
+ # resp.db_instance.db_instance_arn #=> String
3234
+ # resp.db_instance.enabled_cloudwatch_logs_exports #=> Array
3235
+ # resp.db_instance.enabled_cloudwatch_logs_exports[0] #=> String
3236
+ #
3237
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/ModifyDBInstance AWS API Documentation
3238
+ #
3239
+ # @overload modify_db_instance(params = {})
3240
+ # @param [Hash] params ({})
3241
+ def modify_db_instance(params = {}, options = {})
3242
+ req = build_request(:modify_db_instance, params)
3243
+ req.send_request(options)
3244
+ end
3245
+
3246
+ # Modifies an existing DB subnet group. DB subnet groups must contain at
3247
+ # least one subnet in at least two Availability Zones in the AWS Region.
3248
+ #
3249
+ # @option params [required, String] :db_subnet_group_name
3250
+ # The name for the DB subnet group. This value is stored as a lowercase
3251
+ # string. You can't modify the default subnet group.
3252
+ #
3253
+ # Constraints: Must match the name of an existing `DBSubnetGroup`. Must
3254
+ # not be default.
3255
+ #
3256
+ # Example: `mySubnetgroup`
3257
+ #
3258
+ # @option params [String] :db_subnet_group_description
3259
+ # The description for the DB subnet group.
3260
+ #
3261
+ # @option params [required, Array<String>] :subnet_ids
3262
+ # The Amazon EC2 subnet IDs for the DB subnet group.
3263
+ #
3264
+ # @return [Types::ModifyDBSubnetGroupResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3265
+ #
3266
+ # * {Types::ModifyDBSubnetGroupResult#db_subnet_group #db_subnet_group} => Types::DBSubnetGroup
3267
+ #
3268
+ # @example Request syntax with placeholder values
3269
+ #
3270
+ # resp = client.modify_db_subnet_group({
3271
+ # db_subnet_group_name: "String", # required
3272
+ # db_subnet_group_description: "String",
3273
+ # subnet_ids: ["String"], # required
3274
+ # })
3275
+ #
3276
+ # @example Response structure
3277
+ #
3278
+ # resp.db_subnet_group.db_subnet_group_name #=> String
3279
+ # resp.db_subnet_group.db_subnet_group_description #=> String
3280
+ # resp.db_subnet_group.vpc_id #=> String
3281
+ # resp.db_subnet_group.subnet_group_status #=> String
3282
+ # resp.db_subnet_group.subnets #=> Array
3283
+ # resp.db_subnet_group.subnets[0].subnet_identifier #=> String
3284
+ # resp.db_subnet_group.subnets[0].subnet_availability_zone.name #=> String
3285
+ # resp.db_subnet_group.subnets[0].subnet_status #=> String
3286
+ # resp.db_subnet_group.db_subnet_group_arn #=> String
3287
+ #
3288
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/ModifyDBSubnetGroup AWS API Documentation
3289
+ #
3290
+ # @overload modify_db_subnet_group(params = {})
3291
+ # @param [Hash] params ({})
3292
+ def modify_db_subnet_group(params = {}, options = {})
3293
+ req = build_request(:modify_db_subnet_group, params)
3294
+ req.send_request(options)
3295
+ end
3296
+
3297
+ # You might need to reboot your DB instance, usually for maintenance
3298
+ # reasons. For example, if you make certain changes, or if you change
3299
+ # the DB cluster parameter group that is associated with the DB
3300
+ # instance, you must reboot the instance for the changes to take effect.
3301
+ #
3302
+ # Rebooting a DB instance restarts the database engine service.
3303
+ # Rebooting a DB instance results in a momentary outage, during which
3304
+ # the DB instance status is set to *rebooting*.
3305
+ #
3306
+ # @option params [required, String] :db_instance_identifier
3307
+ # The DB instance identifier. This parameter is stored as a lowercase
3308
+ # string.
3309
+ #
3310
+ # Constraints:
3311
+ #
3312
+ # * Must match the identifier of an existing `DBInstance`.
3313
+ #
3314
+ # ^
3315
+ #
3316
+ # @option params [Boolean] :force_failover
3317
+ # When `true`, the reboot is conducted through a Multi-AZ failover.
3318
+ #
3319
+ # Constraint: You can't specify `true` if the instance is not
3320
+ # configured for Multi-AZ.
3321
+ #
3322
+ # @return [Types::RebootDBInstanceResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3323
+ #
3324
+ # * {Types::RebootDBInstanceResult#db_instance #db_instance} => Types::DBInstance
3325
+ #
3326
+ # @example Request syntax with placeholder values
3327
+ #
3328
+ # resp = client.reboot_db_instance({
3329
+ # db_instance_identifier: "String", # required
3330
+ # force_failover: false,
3331
+ # })
3332
+ #
3333
+ # @example Response structure
3334
+ #
3335
+ # resp.db_instance.db_instance_identifier #=> String
3336
+ # resp.db_instance.db_instance_class #=> String
3337
+ # resp.db_instance.engine #=> String
3338
+ # resp.db_instance.db_instance_status #=> String
3339
+ # resp.db_instance.endpoint.address #=> String
3340
+ # resp.db_instance.endpoint.port #=> Integer
3341
+ # resp.db_instance.endpoint.hosted_zone_id #=> String
3342
+ # resp.db_instance.instance_create_time #=> Time
3343
+ # resp.db_instance.preferred_backup_window #=> String
3344
+ # resp.db_instance.backup_retention_period #=> Integer
3345
+ # resp.db_instance.vpc_security_groups #=> Array
3346
+ # resp.db_instance.vpc_security_groups[0].vpc_security_group_id #=> String
3347
+ # resp.db_instance.vpc_security_groups[0].status #=> String
3348
+ # resp.db_instance.availability_zone #=> String
3349
+ # resp.db_instance.db_subnet_group.db_subnet_group_name #=> String
3350
+ # resp.db_instance.db_subnet_group.db_subnet_group_description #=> String
3351
+ # resp.db_instance.db_subnet_group.vpc_id #=> String
3352
+ # resp.db_instance.db_subnet_group.subnet_group_status #=> String
3353
+ # resp.db_instance.db_subnet_group.subnets #=> Array
3354
+ # resp.db_instance.db_subnet_group.subnets[0].subnet_identifier #=> String
3355
+ # resp.db_instance.db_subnet_group.subnets[0].subnet_availability_zone.name #=> String
3356
+ # resp.db_instance.db_subnet_group.subnets[0].subnet_status #=> String
3357
+ # resp.db_instance.db_subnet_group.db_subnet_group_arn #=> String
3358
+ # resp.db_instance.preferred_maintenance_window #=> String
3359
+ # resp.db_instance.pending_modified_values.db_instance_class #=> String
3360
+ # resp.db_instance.pending_modified_values.allocated_storage #=> Integer
3361
+ # resp.db_instance.pending_modified_values.master_user_password #=> String
3362
+ # resp.db_instance.pending_modified_values.port #=> Integer
3363
+ # resp.db_instance.pending_modified_values.backup_retention_period #=> Integer
3364
+ # resp.db_instance.pending_modified_values.multi_az #=> Boolean
3365
+ # resp.db_instance.pending_modified_values.engine_version #=> String
3366
+ # resp.db_instance.pending_modified_values.license_model #=> String
3367
+ # resp.db_instance.pending_modified_values.iops #=> Integer
3368
+ # resp.db_instance.pending_modified_values.db_instance_identifier #=> String
3369
+ # resp.db_instance.pending_modified_values.storage_type #=> String
3370
+ # resp.db_instance.pending_modified_values.ca_certificate_identifier #=> String
3371
+ # resp.db_instance.pending_modified_values.db_subnet_group_name #=> String
3372
+ # resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
3373
+ # resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
3374
+ # resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
3375
+ # resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
3376
+ # resp.db_instance.latest_restorable_time #=> Time
3377
+ # resp.db_instance.engine_version #=> String
3378
+ # resp.db_instance.auto_minor_version_upgrade #=> Boolean
3379
+ # resp.db_instance.publicly_accessible #=> Boolean
3380
+ # resp.db_instance.status_infos #=> Array
3381
+ # resp.db_instance.status_infos[0].status_type #=> String
3382
+ # resp.db_instance.status_infos[0].normal #=> Boolean
3383
+ # resp.db_instance.status_infos[0].status #=> String
3384
+ # resp.db_instance.status_infos[0].message #=> String
3385
+ # resp.db_instance.db_cluster_identifier #=> String
3386
+ # resp.db_instance.storage_encrypted #=> Boolean
3387
+ # resp.db_instance.kms_key_id #=> String
3388
+ # resp.db_instance.dbi_resource_id #=> String
3389
+ # resp.db_instance.promotion_tier #=> Integer
3390
+ # resp.db_instance.db_instance_arn #=> String
3391
+ # resp.db_instance.enabled_cloudwatch_logs_exports #=> Array
3392
+ # resp.db_instance.enabled_cloudwatch_logs_exports[0] #=> String
3393
+ #
3394
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/RebootDBInstance AWS API Documentation
3395
+ #
3396
+ # @overload reboot_db_instance(params = {})
3397
+ # @param [Hash] params ({})
3398
+ def reboot_db_instance(params = {}, options = {})
3399
+ req = build_request(:reboot_db_instance, params)
3400
+ req.send_request(options)
3401
+ end
3402
+
3403
+ # Removes metadata tags from an Amazon DocumentDB resource.
3404
+ #
3405
+ # @option params [required, String] :resource_name
3406
+ # The Amazon DocumentDB resource that the tags are removed from. This
3407
+ # value is an Amazon Resource Name (ARN).
3408
+ #
3409
+ # @option params [required, Array<String>] :tag_keys
3410
+ # The tag key (name) of the tag to be removed.
3411
+ #
3412
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3413
+ #
3414
+ # @example Request syntax with placeholder values
3415
+ #
3416
+ # resp = client.remove_tags_from_resource({
3417
+ # resource_name: "String", # required
3418
+ # tag_keys: ["String"], # required
3419
+ # })
3420
+ #
3421
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/RemoveTagsFromResource AWS API Documentation
3422
+ #
3423
+ # @overload remove_tags_from_resource(params = {})
3424
+ # @param [Hash] params ({})
3425
+ def remove_tags_from_resource(params = {}, options = {})
3426
+ req = build_request(:remove_tags_from_resource, params)
3427
+ req.send_request(options)
3428
+ end
3429
+
3430
+ # Modifies the parameters of a DB cluster parameter group to the default
3431
+ # value. To reset specific parameters, submit a list of the following:
3432
+ # `ParameterName` and `ApplyMethod`. To reset the entire DB cluster
3433
+ # parameter group, specify the `DBClusterParameterGroupName` and
3434
+ # `ResetAllParameters` parameters.
3435
+ #
3436
+ # When you reset the entire group, dynamic parameters are updated
3437
+ # immediately and static parameters are set to `pending-reboot` to take
3438
+ # effect on the next DB instance reboot.
3439
+ #
3440
+ # @option params [required, String] :db_cluster_parameter_group_name
3441
+ # The name of the DB cluster parameter group to reset.
3442
+ #
3443
+ # @option params [Boolean] :reset_all_parameters
3444
+ # A value that is set to `true` to reset all parameters in the DB
3445
+ # cluster parameter group to their default values, and `false`
3446
+ # otherwise. You can't use this parameter if there is a list of
3447
+ # parameter names specified for the `Parameters` parameter.
3448
+ #
3449
+ # @option params [Array<Types::Parameter>] :parameters
3450
+ # A list of parameter names in the DB cluster parameter group to reset
3451
+ # to the default values. You can't use this parameter if the
3452
+ # `ResetAllParameters` parameter is set to `true`.
3453
+ #
3454
+ # @return [Types::DBClusterParameterGroupNameMessage] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3455
+ #
3456
+ # * {Types::DBClusterParameterGroupNameMessage#db_cluster_parameter_group_name #db_cluster_parameter_group_name} => String
3457
+ #
3458
+ # @example Request syntax with placeholder values
3459
+ #
3460
+ # resp = client.reset_db_cluster_parameter_group({
3461
+ # db_cluster_parameter_group_name: "String", # required
3462
+ # reset_all_parameters: false,
3463
+ # parameters: [
3464
+ # {
3465
+ # parameter_name: "String",
3466
+ # parameter_value: "String",
3467
+ # description: "String",
3468
+ # source: "String",
3469
+ # apply_type: "String",
3470
+ # data_type: "String",
3471
+ # allowed_values: "String",
3472
+ # is_modifiable: false,
3473
+ # minimum_engine_version: "String",
3474
+ # apply_method: "immediate", # accepts immediate, pending-reboot
3475
+ # },
3476
+ # ],
3477
+ # })
3478
+ #
3479
+ # @example Response structure
3480
+ #
3481
+ # resp.db_cluster_parameter_group_name #=> String
3482
+ #
3483
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/ResetDBClusterParameterGroup AWS API Documentation
3484
+ #
3485
+ # @overload reset_db_cluster_parameter_group(params = {})
3486
+ # @param [Hash] params ({})
3487
+ def reset_db_cluster_parameter_group(params = {}, options = {})
3488
+ req = build_request(:reset_db_cluster_parameter_group, params)
3489
+ req.send_request(options)
3490
+ end
3491
+
3492
+ # Creates a new DB cluster from a DB snapshot or DB cluster snapshot.
3493
+ #
3494
+ # If a DB snapshot is specified, the target DB cluster is created from
3495
+ # the source DB snapshot with a default configuration and default
3496
+ # security group.
3497
+ #
3498
+ # If a DB cluster snapshot is specified, the target DB cluster is
3499
+ # created from the source DB cluster restore point with the same
3500
+ # configuration as the original source DB cluster, except that the new
3501
+ # DB cluster is created with the default security group.
3502
+ #
3503
+ # @option params [Array<String>] :availability_zones
3504
+ # Provides the list of Amazon EC2 Availability Zones that instances in
3505
+ # the restored DB cluster can be created in.
3506
+ #
3507
+ # @option params [required, String] :db_cluster_identifier
3508
+ # The name of the DB cluster to create from the DB snapshot or DB
3509
+ # cluster snapshot. This parameter isn't case sensitive.
3510
+ #
3511
+ # Constraints:
3512
+ #
3513
+ # * Must contain from 1 to 63 letters, numbers, or hyphens.
3514
+ #
3515
+ # * The first character must be a letter.
3516
+ #
3517
+ # * Cannot end with a hyphen or contain two consecutive hyphens.
3518
+ #
3519
+ # Example: `my-snapshot-id`
3520
+ #
3521
+ # @option params [required, String] :snapshot_identifier
3522
+ # The identifier for the DB snapshot or DB cluster snapshot to restore
3523
+ # from.
3524
+ #
3525
+ # You can use either the name or the Amazon Resource Name (ARN) to
3526
+ # specify a DB cluster snapshot. However, you can use only the ARN to
3527
+ # specify a DB snapshot.
3528
+ #
3529
+ # Constraints:
3530
+ #
3531
+ # * Must match the identifier of an existing snapshot.
3532
+ #
3533
+ # ^
3534
+ #
3535
+ # @option params [required, String] :engine
3536
+ # The database engine to use for the new DB cluster.
3537
+ #
3538
+ # Default: The same as source.
3539
+ #
3540
+ # Constraint: Must be compatible with the engine of the source.
3541
+ #
3542
+ # @option params [String] :engine_version
3543
+ # The version of the database engine to use for the new DB cluster.
3544
+ #
3545
+ # @option params [Integer] :port
3546
+ # The port number on which the new DB cluster accepts connections.
3547
+ #
3548
+ # Constraints: Must be a value from `1150` to `65535`.
3549
+ #
3550
+ # Default: The same port as the original DB cluster.
3551
+ #
3552
+ # @option params [String] :db_subnet_group_name
3553
+ # The name of the DB subnet group to use for the new DB cluster.
3554
+ #
3555
+ # Constraints: If provided, must match the name of an existing
3556
+ # `DBSubnetGroup`.
3557
+ #
3558
+ # Example: `mySubnetgroup`
3559
+ #
3560
+ # @option params [Array<String>] :vpc_security_group_ids
3561
+ # A list of virtual private cloud (VPC) security groups that the new DB
3562
+ # cluster will belong to.
3563
+ #
3564
+ # @option params [Array<Types::Tag>] :tags
3565
+ # The tags to be assigned to the restored DB cluster.
3566
+ #
3567
+ # @option params [String] :kms_key_id
3568
+ # The AWS KMS key identifier to use when restoring an encrypted DB
3569
+ # cluster from a DB snapshot or DB cluster snapshot.
3570
+ #
3571
+ # The AWS KMS key identifier is the Amazon Resource Name (ARN) for the
3572
+ # AWS KMS encryption key. If you are restoring a DB cluster with the
3573
+ # same AWS account that owns the AWS KMS encryption key used to encrypt
3574
+ # the new DB cluster, then you can use the AWS KMS key alias instead of
3575
+ # the ARN for the AWS KMS encryption key.
3576
+ #
3577
+ # If you do not specify a value for the `KmsKeyId` parameter, then the
3578
+ # following occurs:
3579
+ #
3580
+ # * If the DB snapshot or DB cluster snapshot in `SnapshotIdentifier` is
3581
+ # encrypted, then the restored DB cluster is encrypted using the AWS
3582
+ # KMS key that was used to encrypt the DB snapshot or the DB cluster
3583
+ # snapshot.
3584
+ #
3585
+ # * If the DB snapshot or the DB cluster snapshot in
3586
+ # `SnapshotIdentifier` is not encrypted, then the restored DB cluster
3587
+ # is not encrypted.
3588
+ #
3589
+ # @option params [Array<String>] :enable_cloudwatch_logs_exports
3590
+ # A list of log types that must be enabled for exporting to Amazon
3591
+ # CloudWatch Logs.
3592
+ #
3593
+ # @return [Types::RestoreDBClusterFromSnapshotResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3594
+ #
3595
+ # * {Types::RestoreDBClusterFromSnapshotResult#db_cluster #db_cluster} => Types::DBCluster
3596
+ #
3597
+ # @example Request syntax with placeholder values
3598
+ #
3599
+ # resp = client.restore_db_cluster_from_snapshot({
3600
+ # availability_zones: ["String"],
3601
+ # db_cluster_identifier: "String", # required
3602
+ # snapshot_identifier: "String", # required
3603
+ # engine: "String", # required
3604
+ # engine_version: "String",
3605
+ # port: 1,
3606
+ # db_subnet_group_name: "String",
3607
+ # vpc_security_group_ids: ["String"],
3608
+ # tags: [
3609
+ # {
3610
+ # key: "String",
3611
+ # value: "String",
3612
+ # },
3613
+ # ],
3614
+ # kms_key_id: "String",
3615
+ # enable_cloudwatch_logs_exports: ["String"],
3616
+ # })
3617
+ #
3618
+ # @example Response structure
3619
+ #
3620
+ # resp.db_cluster.availability_zones #=> Array
3621
+ # resp.db_cluster.availability_zones[0] #=> String
3622
+ # resp.db_cluster.backup_retention_period #=> Integer
3623
+ # resp.db_cluster.db_cluster_identifier #=> String
3624
+ # resp.db_cluster.db_cluster_parameter_group #=> String
3625
+ # resp.db_cluster.db_subnet_group #=> String
3626
+ # resp.db_cluster.status #=> String
3627
+ # resp.db_cluster.percent_progress #=> String
3628
+ # resp.db_cluster.earliest_restorable_time #=> Time
3629
+ # resp.db_cluster.endpoint #=> String
3630
+ # resp.db_cluster.reader_endpoint #=> String
3631
+ # resp.db_cluster.multi_az #=> Boolean
3632
+ # resp.db_cluster.engine #=> String
3633
+ # resp.db_cluster.engine_version #=> String
3634
+ # resp.db_cluster.latest_restorable_time #=> Time
3635
+ # resp.db_cluster.port #=> Integer
3636
+ # resp.db_cluster.master_username #=> String
3637
+ # resp.db_cluster.preferred_backup_window #=> String
3638
+ # resp.db_cluster.preferred_maintenance_window #=> String
3639
+ # resp.db_cluster.db_cluster_members #=> Array
3640
+ # resp.db_cluster.db_cluster_members[0].db_instance_identifier #=> String
3641
+ # resp.db_cluster.db_cluster_members[0].is_cluster_writer #=> Boolean
3642
+ # resp.db_cluster.db_cluster_members[0].db_cluster_parameter_group_status #=> String
3643
+ # resp.db_cluster.db_cluster_members[0].promotion_tier #=> Integer
3644
+ # resp.db_cluster.vpc_security_groups #=> Array
3645
+ # resp.db_cluster.vpc_security_groups[0].vpc_security_group_id #=> String
3646
+ # resp.db_cluster.vpc_security_groups[0].status #=> String
3647
+ # resp.db_cluster.hosted_zone_id #=> String
3648
+ # resp.db_cluster.storage_encrypted #=> Boolean
3649
+ # resp.db_cluster.kms_key_id #=> String
3650
+ # resp.db_cluster.db_cluster_resource_id #=> String
3651
+ # resp.db_cluster.db_cluster_arn #=> String
3652
+ # resp.db_cluster.associated_roles #=> Array
3653
+ # resp.db_cluster.associated_roles[0].role_arn #=> String
3654
+ # resp.db_cluster.associated_roles[0].status #=> String
3655
+ # resp.db_cluster.cluster_create_time #=> Time
3656
+ # resp.db_cluster.enabled_cloudwatch_logs_exports #=> Array
3657
+ # resp.db_cluster.enabled_cloudwatch_logs_exports[0] #=> String
3658
+ #
3659
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/RestoreDBClusterFromSnapshot AWS API Documentation
3660
+ #
3661
+ # @overload restore_db_cluster_from_snapshot(params = {})
3662
+ # @param [Hash] params ({})
3663
+ def restore_db_cluster_from_snapshot(params = {}, options = {})
3664
+ req = build_request(:restore_db_cluster_from_snapshot, params)
3665
+ req.send_request(options)
3666
+ end
3667
+
3668
+ # Restores a DB cluster to an arbitrary point in time. Users can restore
3669
+ # to any point in time before `LatestRestorableTime` for up to
3670
+ # `BackupRetentionPeriod` days. The target DB cluster is created from
3671
+ # the source DB cluster with the same configuration as the original DB
3672
+ # cluster, except that the new DB cluster is created with the default DB
3673
+ # security group.
3674
+ #
3675
+ # @option params [required, String] :db_cluster_identifier
3676
+ # The name of the new DB cluster to be created.
3677
+ #
3678
+ # Constraints:
3679
+ #
3680
+ # * Must contain from 1 to 63 letters, numbers, or hyphens.
3681
+ #
3682
+ # * The first character must be a letter.
3683
+ #
3684
+ # * Cannot end with a hyphen or contain two consecutive hyphens.
3685
+ #
3686
+ # @option params [required, String] :source_db_cluster_identifier
3687
+ # The identifier of the source DB cluster from which to restore.
3688
+ #
3689
+ # Constraints:
3690
+ #
3691
+ # * Must match the identifier of an existing `DBCluster`.
3692
+ #
3693
+ # ^
3694
+ #
3695
+ # @option params [Time,DateTime,Date,Integer,String] :restore_to_time
3696
+ # The date and time to restore the DB cluster to.
3697
+ #
3698
+ # Valid values: A time in Universal Coordinated Time (UTC) format.
3699
+ #
3700
+ # Constraints:
3701
+ #
3702
+ # * Must be before the latest restorable time for the DB instance.
3703
+ #
3704
+ # * Must be specified if the `UseLatestRestorableTime` parameter is not
3705
+ # provided.
3706
+ #
3707
+ # * Cannot be specified if the `UseLatestRestorableTime` parameter is
3708
+ # `true`.
3709
+ #
3710
+ # * Cannot be specified if the `RestoreType` parameter is
3711
+ # `copy-on-write`.
3712
+ #
3713
+ # Example: `2015-03-07T23:45:00Z`
3714
+ #
3715
+ # @option params [Boolean] :use_latest_restorable_time
3716
+ # A value that is set to `true` to restore the DB cluster to the latest
3717
+ # restorable backup time, and `false` otherwise.
3718
+ #
3719
+ # Default: `false`
3720
+ #
3721
+ # Constraints: Cannot be specified if the `RestoreToTime` parameter is
3722
+ # provided.
3723
+ #
3724
+ # @option params [Integer] :port
3725
+ # The port number on which the new DB cluster accepts connections.
3726
+ #
3727
+ # Constraints: Must be a value from `1150` to `65535`.
3728
+ #
3729
+ # Default: The default port for the engine.
3730
+ #
3731
+ # @option params [String] :db_subnet_group_name
3732
+ # The DB subnet group name to use for the new DB cluster.
3733
+ #
3734
+ # Constraints: If provided, must match the name of an existing
3735
+ # `DBSubnetGroup`.
3736
+ #
3737
+ # Example: `mySubnetgroup`
3738
+ #
3739
+ # @option params [Array<String>] :vpc_security_group_ids
3740
+ # A list of VPC security groups that the new DB cluster belongs to.
3741
+ #
3742
+ # @option params [Array<Types::Tag>] :tags
3743
+ # The tags to be assigned to the restored DB cluster.
3744
+ #
3745
+ # @option params [String] :kms_key_id
3746
+ # The AWS KMS key identifier to use when restoring an encrypted DB
3747
+ # cluster from an encrypted DB cluster.
3748
+ #
3749
+ # The AWS KMS key identifier is the Amazon Resource Name (ARN) for the
3750
+ # AWS KMS encryption key. If you are restoring a DB cluster with the
3751
+ # same AWS account that owns the AWS KMS encryption key used to encrypt
3752
+ # the new DB cluster, then you can use the AWS KMS key alias instead of
3753
+ # the ARN for the AWS KMS encryption key.
3754
+ #
3755
+ # You can restore to a new DB cluster and encrypt the new DB cluster
3756
+ # with an AWS KMS key that is different from the AWS KMS key used to
3757
+ # encrypt the source DB cluster. The new DB cluster is encrypted with
3758
+ # the AWS KMS key identified by the `KmsKeyId` parameter.
3759
+ #
3760
+ # If you do not specify a value for the `KmsKeyId` parameter, then the
3761
+ # following occurs:
3762
+ #
3763
+ # * If the DB cluster is encrypted, then the restored DB cluster is
3764
+ # encrypted using the AWS KMS key that was used to encrypt the source
3765
+ # DB cluster.
3766
+ #
3767
+ # * If the DB cluster is not encrypted, then the restored DB cluster is
3768
+ # not encrypted.
3769
+ #
3770
+ # If `DBClusterIdentifier` refers to a DB cluster that is not encrypted,
3771
+ # then the restore request is rejected.
3772
+ #
3773
+ # @option params [Array<String>] :enable_cloudwatch_logs_exports
3774
+ # A list of log types that must be enabled for exporting to Amazon
3775
+ # CloudWatch Logs.
3776
+ #
3777
+ # @return [Types::RestoreDBClusterToPointInTimeResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3778
+ #
3779
+ # * {Types::RestoreDBClusterToPointInTimeResult#db_cluster #db_cluster} => Types::DBCluster
3780
+ #
3781
+ # @example Request syntax with placeholder values
3782
+ #
3783
+ # resp = client.restore_db_cluster_to_point_in_time({
3784
+ # db_cluster_identifier: "String", # required
3785
+ # source_db_cluster_identifier: "String", # required
3786
+ # restore_to_time: Time.now,
3787
+ # use_latest_restorable_time: false,
3788
+ # port: 1,
3789
+ # db_subnet_group_name: "String",
3790
+ # vpc_security_group_ids: ["String"],
3791
+ # tags: [
3792
+ # {
3793
+ # key: "String",
3794
+ # value: "String",
3795
+ # },
3796
+ # ],
3797
+ # kms_key_id: "String",
3798
+ # enable_cloudwatch_logs_exports: ["String"],
3799
+ # })
3800
+ #
3801
+ # @example Response structure
3802
+ #
3803
+ # resp.db_cluster.availability_zones #=> Array
3804
+ # resp.db_cluster.availability_zones[0] #=> String
3805
+ # resp.db_cluster.backup_retention_period #=> Integer
3806
+ # resp.db_cluster.db_cluster_identifier #=> String
3807
+ # resp.db_cluster.db_cluster_parameter_group #=> String
3808
+ # resp.db_cluster.db_subnet_group #=> String
3809
+ # resp.db_cluster.status #=> String
3810
+ # resp.db_cluster.percent_progress #=> String
3811
+ # resp.db_cluster.earliest_restorable_time #=> Time
3812
+ # resp.db_cluster.endpoint #=> String
3813
+ # resp.db_cluster.reader_endpoint #=> String
3814
+ # resp.db_cluster.multi_az #=> Boolean
3815
+ # resp.db_cluster.engine #=> String
3816
+ # resp.db_cluster.engine_version #=> String
3817
+ # resp.db_cluster.latest_restorable_time #=> Time
3818
+ # resp.db_cluster.port #=> Integer
3819
+ # resp.db_cluster.master_username #=> String
3820
+ # resp.db_cluster.preferred_backup_window #=> String
3821
+ # resp.db_cluster.preferred_maintenance_window #=> String
3822
+ # resp.db_cluster.db_cluster_members #=> Array
3823
+ # resp.db_cluster.db_cluster_members[0].db_instance_identifier #=> String
3824
+ # resp.db_cluster.db_cluster_members[0].is_cluster_writer #=> Boolean
3825
+ # resp.db_cluster.db_cluster_members[0].db_cluster_parameter_group_status #=> String
3826
+ # resp.db_cluster.db_cluster_members[0].promotion_tier #=> Integer
3827
+ # resp.db_cluster.vpc_security_groups #=> Array
3828
+ # resp.db_cluster.vpc_security_groups[0].vpc_security_group_id #=> String
3829
+ # resp.db_cluster.vpc_security_groups[0].status #=> String
3830
+ # resp.db_cluster.hosted_zone_id #=> String
3831
+ # resp.db_cluster.storage_encrypted #=> Boolean
3832
+ # resp.db_cluster.kms_key_id #=> String
3833
+ # resp.db_cluster.db_cluster_resource_id #=> String
3834
+ # resp.db_cluster.db_cluster_arn #=> String
3835
+ # resp.db_cluster.associated_roles #=> Array
3836
+ # resp.db_cluster.associated_roles[0].role_arn #=> String
3837
+ # resp.db_cluster.associated_roles[0].status #=> String
3838
+ # resp.db_cluster.cluster_create_time #=> Time
3839
+ # resp.db_cluster.enabled_cloudwatch_logs_exports #=> Array
3840
+ # resp.db_cluster.enabled_cloudwatch_logs_exports[0] #=> String
3841
+ #
3842
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/RestoreDBClusterToPointInTime AWS API Documentation
3843
+ #
3844
+ # @overload restore_db_cluster_to_point_in_time(params = {})
3845
+ # @param [Hash] params ({})
3846
+ def restore_db_cluster_to_point_in_time(params = {}, options = {})
3847
+ req = build_request(:restore_db_cluster_to_point_in_time, params)
3848
+ req.send_request(options)
3849
+ end
3850
+
3851
+ # @!endgroup
3852
+
3853
+ # @param params ({})
3854
+ # @api private
3855
+ def build_request(operation_name, params = {})
3856
+ handlers = @handlers.for(operation_name)
3857
+ context = Seahorse::Client::RequestContext.new(
3858
+ operation_name: operation_name,
3859
+ operation: config.api.operation(operation_name),
3860
+ client: self,
3861
+ params: params,
3862
+ config: config)
3863
+ context[:gem_name] = 'aws-sdk-docdb'
3864
+ context[:gem_version] = '1.0.0'
3865
+ Seahorse::Client::Request.new(handlers, context)
3866
+ end
3867
+
3868
+ # Polls an API operation until a resource enters a desired state.
3869
+ #
3870
+ # ## Basic Usage
3871
+ #
3872
+ # A waiter will call an API operation until:
3873
+ #
3874
+ # * It is successful
3875
+ # * It enters a terminal state
3876
+ # * It makes the maximum number of attempts
3877
+ #
3878
+ # In between attempts, the waiter will sleep.
3879
+ #
3880
+ # # polls in a loop, sleeping between attempts
3881
+ # client.waiter_until(waiter_name, params)
3882
+ #
3883
+ # ## Configuration
3884
+ #
3885
+ # You can configure the maximum number of polling attempts, and the
3886
+ # delay (in seconds) between each polling attempt. You can pass
3887
+ # configuration as the final arguments hash.
3888
+ #
3889
+ # # poll for ~25 seconds
3890
+ # client.wait_until(waiter_name, params, {
3891
+ # max_attempts: 5,
3892
+ # delay: 5,
3893
+ # })
3894
+ #
3895
+ # ## Callbacks
3896
+ #
3897
+ # You can be notified before each polling attempt and before each
3898
+ # delay. If you throw `:success` or `:failure` from these callbacks,
3899
+ # it will terminate the waiter.
3900
+ #
3901
+ # started_at = Time.now
3902
+ # client.wait_until(waiter_name, params, {
3903
+ #
3904
+ # # disable max attempts
3905
+ # max_attempts: nil,
3906
+ #
3907
+ # # poll for 1 hour, instead of a number of attempts
3908
+ # before_wait: -> (attempts, response) do
3909
+ # throw :failure if Time.now - started_at > 3600
3910
+ # end
3911
+ # })
3912
+ #
3913
+ # ## Handling Errors
3914
+ #
3915
+ # When a waiter is unsuccessful, it will raise an error.
3916
+ # All of the failure errors extend from
3917
+ # {Aws::Waiters::Errors::WaiterFailed}.
3918
+ #
3919
+ # begin
3920
+ # client.wait_until(...)
3921
+ # rescue Aws::Waiters::Errors::WaiterFailed
3922
+ # # resource did not enter the desired state in time
3923
+ # end
3924
+ #
3925
+ # ## Valid Waiters
3926
+ #
3927
+ # The following table lists the valid waiter names, the operations they call,
3928
+ # and the default `:delay` and `:max_attempts` values.
3929
+ #
3930
+ # | waiter_name | params | :delay | :max_attempts |
3931
+ # | --------------------- | ------------------------ | -------- | ------------- |
3932
+ # | db_instance_available | {#describe_db_instances} | 30 | 60 |
3933
+ # | db_instance_deleted | {#describe_db_instances} | 30 | 60 |
3934
+ #
3935
+ # @raise [Errors::FailureStateError] Raised when the waiter terminates
3936
+ # because the waiter has entered a state that it will not transition
3937
+ # out of, preventing success.
3938
+ #
3939
+ # @raise [Errors::TooManyAttemptsError] Raised when the configured
3940
+ # maximum number of attempts have been made, and the waiter is not
3941
+ # yet successful.
3942
+ #
3943
+ # @raise [Errors::UnexpectedError] Raised when an error is encounted
3944
+ # while polling for a resource that is not expected.
3945
+ #
3946
+ # @raise [Errors::NoSuchWaiterError] Raised when you request to wait
3947
+ # for an unknown state.
3948
+ #
3949
+ # @return [Boolean] Returns `true` if the waiter was successful.
3950
+ # @param [Symbol] waiter_name
3951
+ # @param [Hash] params ({})
3952
+ # @param [Hash] options ({})
3953
+ # @option options [Integer] :max_attempts
3954
+ # @option options [Integer] :delay
3955
+ # @option options [Proc] :before_attempt
3956
+ # @option options [Proc] :before_wait
3957
+ def wait_until(waiter_name, params = {}, options = {})
3958
+ w = waiter(waiter_name, options)
3959
+ yield(w.waiter) if block_given? # deprecated
3960
+ w.wait(params)
3961
+ end
3962
+
3963
+ # @api private
3964
+ # @deprecated
3965
+ def waiter_names
3966
+ waiters.keys
3967
+ end
3968
+
3969
+ private
3970
+
3971
+ # @param [Symbol] waiter_name
3972
+ # @param [Hash] options ({})
3973
+ def waiter(waiter_name, options = {})
3974
+ waiter_class = waiters[waiter_name]
3975
+ if waiter_class
3976
+ waiter_class.new(options.merge(client: self))
3977
+ else
3978
+ raise Aws::Waiters::Errors::NoSuchWaiterError.new(waiter_name, waiters.keys)
3979
+ end
3980
+ end
3981
+
3982
+ def waiters
3983
+ {
3984
+ db_instance_available: Waiters::DBInstanceAvailable,
3985
+ db_instance_deleted: Waiters::DBInstanceDeleted
3986
+ }
3987
+ end
3988
+
3989
+ class << self
3990
+
3991
+ # @api private
3992
+ attr_reader :identifier
3993
+
3994
+ # @api private
3995
+ def errors_module
3996
+ Errors
3997
+ end
3998
+
3999
+ end
4000
+ end
4001
+ end