aws-sdk-redshift 1.55.0 → 1.60.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -27,6 +27,7 @@ module Aws::Redshift
27
27
  # See {Seahorse::Client::RequestContext} for more information.
28
28
  #
29
29
  # ## Error Classes
30
+ # * {AccessToClusterDeniedFault}
30
31
  # * {AccessToSnapshotDeniedFault}
31
32
  # * {AuthorizationAlreadyExistsFault}
32
33
  # * {AuthorizationNotFoundFault}
@@ -54,6 +55,13 @@ module Aws::Redshift
54
55
  # * {CopyToRegionDisabledFault}
55
56
  # * {DependentServiceRequestThrottlingFault}
56
57
  # * {DependentServiceUnavailableFault}
58
+ # * {EndpointAlreadyExistsFault}
59
+ # * {EndpointAuthorizationAlreadyExistsFault}
60
+ # * {EndpointAuthorizationNotFoundFault}
61
+ # * {EndpointAuthorizationsPerClusterLimitExceededFault}
62
+ # * {EndpointNotFoundFault}
63
+ # * {EndpointsPerAuthorizationLimitExceededFault}
64
+ # * {EndpointsPerClusterLimitExceededFault}
57
65
  # * {EventSubscriptionQuotaExceededFault}
58
66
  # * {HsmClientCertificateAlreadyExistsFault}
59
67
  # * {HsmClientCertificateNotFoundFault}
@@ -65,6 +73,7 @@ module Aws::Redshift
65
73
  # * {IncompatibleOrderableOptions}
66
74
  # * {InsufficientClusterCapacityFault}
67
75
  # * {InsufficientS3BucketPolicyFault}
76
+ # * {InvalidAuthorizationStateFault}
68
77
  # * {InvalidClusterParameterGroupStateFault}
69
78
  # * {InvalidClusterSecurityGroupStateFault}
70
79
  # * {InvalidClusterSnapshotScheduleStateFault}
@@ -74,6 +83,7 @@ module Aws::Redshift
74
83
  # * {InvalidClusterSubnetStateFault}
75
84
  # * {InvalidClusterTrackFault}
76
85
  # * {InvalidElasticIpFault}
86
+ # * {InvalidEndpointStateFault}
77
87
  # * {InvalidHsmClientCertificateStateFault}
78
88
  # * {InvalidHsmConfigurationStateFault}
79
89
  # * {InvalidReservedNodeStateFault}
@@ -141,6 +151,16 @@ module Aws::Redshift
141
151
 
142
152
  extend Aws::Errors::DynamicErrors
143
153
 
154
+ class AccessToClusterDeniedFault < ServiceError
155
+
156
+ # @param [Seahorse::Client::RequestContext] context
157
+ # @param [String] message
158
+ # @param [Aws::Redshift::Types::AccessToClusterDeniedFault] data
159
+ def initialize(context, message, data = Aws::EmptyStructure.new)
160
+ super(context, message, data)
161
+ end
162
+ end
163
+
144
164
  class AccessToSnapshotDeniedFault < ServiceError
145
165
 
146
166
  # @param [Seahorse::Client::RequestContext] context
@@ -411,6 +431,76 @@ module Aws::Redshift
411
431
  end
412
432
  end
413
433
 
434
+ class EndpointAlreadyExistsFault < ServiceError
435
+
436
+ # @param [Seahorse::Client::RequestContext] context
437
+ # @param [String] message
438
+ # @param [Aws::Redshift::Types::EndpointAlreadyExistsFault] data
439
+ def initialize(context, message, data = Aws::EmptyStructure.new)
440
+ super(context, message, data)
441
+ end
442
+ end
443
+
444
+ class EndpointAuthorizationAlreadyExistsFault < ServiceError
445
+
446
+ # @param [Seahorse::Client::RequestContext] context
447
+ # @param [String] message
448
+ # @param [Aws::Redshift::Types::EndpointAuthorizationAlreadyExistsFault] data
449
+ def initialize(context, message, data = Aws::EmptyStructure.new)
450
+ super(context, message, data)
451
+ end
452
+ end
453
+
454
+ class EndpointAuthorizationNotFoundFault < ServiceError
455
+
456
+ # @param [Seahorse::Client::RequestContext] context
457
+ # @param [String] message
458
+ # @param [Aws::Redshift::Types::EndpointAuthorizationNotFoundFault] data
459
+ def initialize(context, message, data = Aws::EmptyStructure.new)
460
+ super(context, message, data)
461
+ end
462
+ end
463
+
464
+ class EndpointAuthorizationsPerClusterLimitExceededFault < ServiceError
465
+
466
+ # @param [Seahorse::Client::RequestContext] context
467
+ # @param [String] message
468
+ # @param [Aws::Redshift::Types::EndpointAuthorizationsPerClusterLimitExceededFault] data
469
+ def initialize(context, message, data = Aws::EmptyStructure.new)
470
+ super(context, message, data)
471
+ end
472
+ end
473
+
474
+ class EndpointNotFoundFault < ServiceError
475
+
476
+ # @param [Seahorse::Client::RequestContext] context
477
+ # @param [String] message
478
+ # @param [Aws::Redshift::Types::EndpointNotFoundFault] data
479
+ def initialize(context, message, data = Aws::EmptyStructure.new)
480
+ super(context, message, data)
481
+ end
482
+ end
483
+
484
+ class EndpointsPerAuthorizationLimitExceededFault < ServiceError
485
+
486
+ # @param [Seahorse::Client::RequestContext] context
487
+ # @param [String] message
488
+ # @param [Aws::Redshift::Types::EndpointsPerAuthorizationLimitExceededFault] data
489
+ def initialize(context, message, data = Aws::EmptyStructure.new)
490
+ super(context, message, data)
491
+ end
492
+ end
493
+
494
+ class EndpointsPerClusterLimitExceededFault < ServiceError
495
+
496
+ # @param [Seahorse::Client::RequestContext] context
497
+ # @param [String] message
498
+ # @param [Aws::Redshift::Types::EndpointsPerClusterLimitExceededFault] data
499
+ def initialize(context, message, data = Aws::EmptyStructure.new)
500
+ super(context, message, data)
501
+ end
502
+ end
503
+
414
504
  class EventSubscriptionQuotaExceededFault < ServiceError
415
505
 
416
506
  # @param [Seahorse::Client::RequestContext] context
@@ -521,6 +611,16 @@ module Aws::Redshift
521
611
  end
522
612
  end
523
613
 
614
+ class InvalidAuthorizationStateFault < ServiceError
615
+
616
+ # @param [Seahorse::Client::RequestContext] context
617
+ # @param [String] message
618
+ # @param [Aws::Redshift::Types::InvalidAuthorizationStateFault] data
619
+ def initialize(context, message, data = Aws::EmptyStructure.new)
620
+ super(context, message, data)
621
+ end
622
+ end
623
+
524
624
  class InvalidClusterParameterGroupStateFault < ServiceError
525
625
 
526
626
  # @param [Seahorse::Client::RequestContext] context
@@ -611,6 +711,16 @@ module Aws::Redshift
611
711
  end
612
712
  end
613
713
 
714
+ class InvalidEndpointStateFault < ServiceError
715
+
716
+ # @param [Seahorse::Client::RequestContext] context
717
+ # @param [String] message
718
+ # @param [Aws::Redshift::Types::InvalidEndpointStateFault] data
719
+ def initialize(context, message, data = Aws::EmptyStructure.new)
720
+ super(context, message, data)
721
+ end
722
+ end
723
+
614
724
  class InvalidHsmClientCertificateStateFault < ServiceError
615
725
 
616
726
  # @param [Seahorse::Client::RequestContext] context
@@ -49,6 +49,12 @@ module Aws::Redshift
49
49
  include Aws::Structure
50
50
  end
51
51
 
52
+ # You are not authorized to access the cluster.
53
+ #
54
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/AccessToClusterDeniedFault AWS API Documentation
55
+ #
56
+ class AccessToClusterDeniedFault < Aws::EmptyStructure; end
57
+
52
58
  # The owner of the specified snapshot has not authorized your account to
53
59
  # access the snapshot.
54
60
  #
@@ -198,6 +204,37 @@ module Aws::Redshift
198
204
  include Aws::Structure
199
205
  end
200
206
 
207
+ # @note When making an API call, you may pass AuthorizeEndpointAccessMessage
208
+ # data as a hash:
209
+ #
210
+ # {
211
+ # cluster_identifier: "String",
212
+ # account: "String", # required
213
+ # vpc_ids: ["String"],
214
+ # }
215
+ #
216
+ # @!attribute [rw] cluster_identifier
217
+ # The cluster identifier of the cluster to grant access to.
218
+ # @return [String]
219
+ #
220
+ # @!attribute [rw] account
221
+ # The AWS account ID to grant access to.
222
+ # @return [String]
223
+ #
224
+ # @!attribute [rw] vpc_ids
225
+ # The virtual private cloud (VPC) identifiers to grant access to.
226
+ # @return [Array<String>]
227
+ #
228
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/AuthorizeEndpointAccessMessage AWS API Documentation
229
+ #
230
+ class AuthorizeEndpointAccessMessage < Struct.new(
231
+ :cluster_identifier,
232
+ :account,
233
+ :vpc_ids)
234
+ SENSITIVE = []
235
+ include Aws::Structure
236
+ end
237
+
201
238
  # @note When making an API call, you may pass AuthorizeSnapshotAccessMessage
202
239
  # data as a hash:
203
240
  #
@@ -713,6 +750,10 @@ module Aws::Redshift
713
750
  # The namespace Amazon Resource Name (ARN) of the cluster.
714
751
  # @return [String]
715
752
  #
753
+ # @!attribute [rw] total_storage_capacity_in_mega_bytes
754
+ # The total storage capacity of the cluster in megabytes.
755
+ # @return [Integer]
756
+ #
716
757
  # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/Cluster AWS API Documentation
717
758
  #
718
759
  class Cluster < Struct.new(
@@ -763,7 +804,8 @@ module Aws::Redshift
763
804
  :next_maintenance_window_start_time,
764
805
  :resize_info,
765
806
  :availability_zone_relocation_status,
766
- :cluster_namespace_arn)
807
+ :cluster_namespace_arn,
808
+ :total_storage_capacity_in_mega_bytes)
767
809
  SENSITIVE = []
768
810
  include Aws::Structure
769
811
  end
@@ -1825,6 +1867,9 @@ module Aws::Redshift
1825
1867
  # snapshots are disabled, you can still create manual snapshots when
1826
1868
  # you want with CreateClusterSnapshot.
1827
1869
  #
1870
+ # You can't disable automated snapshots for RA3 node types. Set the
1871
+ # automated retention period from 1-35 days.
1872
+ #
1828
1873
  # Default: `1`
1829
1874
  #
1830
1875
  # Constraints: Must be a value from 0 to 35.
@@ -2312,6 +2357,57 @@ module Aws::Redshift
2312
2357
  include Aws::Structure
2313
2358
  end
2314
2359
 
2360
+ # @note When making an API call, you may pass CreateEndpointAccessMessage
2361
+ # data as a hash:
2362
+ #
2363
+ # {
2364
+ # cluster_identifier: "String",
2365
+ # resource_owner: "String",
2366
+ # endpoint_name: "String", # required
2367
+ # subnet_group_name: "String", # required
2368
+ # vpc_security_group_ids: ["String"],
2369
+ # }
2370
+ #
2371
+ # @!attribute [rw] cluster_identifier
2372
+ # The cluster identifier of the cluster to access.
2373
+ # @return [String]
2374
+ #
2375
+ # @!attribute [rw] resource_owner
2376
+ # The AWS account ID of the owner of the cluster. This is only
2377
+ # required if the cluster is in another AWS account.
2378
+ # @return [String]
2379
+ #
2380
+ # @!attribute [rw] endpoint_name
2381
+ # The Redshift-managed VPC endpoint name.
2382
+ #
2383
+ # An endpoint name must contain 1-30 characters. Valid characters are
2384
+ # A-Z, a-z, 0-9, and hyphen(-). The first character must be a letter.
2385
+ # The name can't contain two consecutive hyphens or end with a
2386
+ # hyphen.
2387
+ # @return [String]
2388
+ #
2389
+ # @!attribute [rw] subnet_group_name
2390
+ # The subnet group from which Amazon Redshift chooses the subnet to
2391
+ # deploy the endpoint.
2392
+ # @return [String]
2393
+ #
2394
+ # @!attribute [rw] vpc_security_group_ids
2395
+ # The security group that defines the ports, protocols, and sources
2396
+ # for inbound traffic that you are authorizing into your endpoint.
2397
+ # @return [Array<String>]
2398
+ #
2399
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateEndpointAccessMessage AWS API Documentation
2400
+ #
2401
+ class CreateEndpointAccessMessage < Struct.new(
2402
+ :cluster_identifier,
2403
+ :resource_owner,
2404
+ :endpoint_name,
2405
+ :subnet_group_name,
2406
+ :vpc_security_group_ids)
2407
+ SENSITIVE = []
2408
+ include Aws::Structure
2409
+ end
2410
+
2315
2411
  # @note When making an API call, you may pass CreateEventSubscriptionMessage
2316
2412
  # data as a hash:
2317
2413
  #
@@ -3185,6 +3281,25 @@ module Aws::Redshift
3185
3281
  include Aws::Structure
3186
3282
  end
3187
3283
 
3284
+ # @note When making an API call, you may pass DeleteEndpointAccessMessage
3285
+ # data as a hash:
3286
+ #
3287
+ # {
3288
+ # endpoint_name: "String", # required
3289
+ # }
3290
+ #
3291
+ # @!attribute [rw] endpoint_name
3292
+ # The Redshift-managed VPC endpoint to delete.
3293
+ # @return [String]
3294
+ #
3295
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteEndpointAccessMessage AWS API Documentation
3296
+ #
3297
+ class DeleteEndpointAccessMessage < Struct.new(
3298
+ :endpoint_name)
3299
+ SENSITIVE = []
3300
+ include Aws::Structure
3301
+ end
3302
+
3188
3303
  # @note When making an API call, you may pass DeleteEventSubscriptionMessage
3189
3304
  # data as a hash:
3190
3305
  #
@@ -4101,6 +4216,104 @@ module Aws::Redshift
4101
4216
  include Aws::Structure
4102
4217
  end
4103
4218
 
4219
+ # @note When making an API call, you may pass DescribeEndpointAccessMessage
4220
+ # data as a hash:
4221
+ #
4222
+ # {
4223
+ # cluster_identifier: "String",
4224
+ # resource_owner: "String",
4225
+ # endpoint_name: "String",
4226
+ # vpc_id: "String",
4227
+ # max_records: 1,
4228
+ # marker: "String",
4229
+ # }
4230
+ #
4231
+ # @!attribute [rw] cluster_identifier
4232
+ # The cluster identifier associated with the described endpoint.
4233
+ # @return [String]
4234
+ #
4235
+ # @!attribute [rw] resource_owner
4236
+ # The AWS account ID of the owner of the cluster.
4237
+ # @return [String]
4238
+ #
4239
+ # @!attribute [rw] endpoint_name
4240
+ # The name of the endpoint to be described.
4241
+ # @return [String]
4242
+ #
4243
+ # @!attribute [rw] vpc_id
4244
+ # The virtual private cloud (VPC) identifier with access to the
4245
+ # cluster.
4246
+ # @return [String]
4247
+ #
4248
+ # @!attribute [rw] max_records
4249
+ # Reserved for Amazon Redshift internal use.
4250
+ # @return [Integer]
4251
+ #
4252
+ # @!attribute [rw] marker
4253
+ # Reserved for Amazon Redshift internal use.
4254
+ # @return [String]
4255
+ #
4256
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeEndpointAccessMessage AWS API Documentation
4257
+ #
4258
+ class DescribeEndpointAccessMessage < Struct.new(
4259
+ :cluster_identifier,
4260
+ :resource_owner,
4261
+ :endpoint_name,
4262
+ :vpc_id,
4263
+ :max_records,
4264
+ :marker)
4265
+ SENSITIVE = []
4266
+ include Aws::Structure
4267
+ end
4268
+
4269
+ # @note When making an API call, you may pass DescribeEndpointAuthorizationMessage
4270
+ # data as a hash:
4271
+ #
4272
+ # {
4273
+ # cluster_identifier: "String",
4274
+ # account: "String",
4275
+ # grantee: false,
4276
+ # max_records: 1,
4277
+ # marker: "String",
4278
+ # }
4279
+ #
4280
+ # @!attribute [rw] cluster_identifier
4281
+ # The cluster identifier of the cluster to access.
4282
+ # @return [String]
4283
+ #
4284
+ # @!attribute [rw] account
4285
+ # The AWS account ID of either the cluster owner (grantor) or grantee.
4286
+ # If `Grantee` parameter is true, then the `Account` value is of the
4287
+ # grantor.
4288
+ # @return [String]
4289
+ #
4290
+ # @!attribute [rw] grantee
4291
+ # Indicates whether to check authorization from a grantor or grantee
4292
+ # point of view. If true, Amazon Redshift returns endpoint
4293
+ # authorizations that you've been granted. If false (default), checks
4294
+ # authorization from a grantor point of view.
4295
+ # @return [Boolean]
4296
+ #
4297
+ # @!attribute [rw] max_records
4298
+ # Reserved for Amazon Redshift internal use.
4299
+ # @return [Integer]
4300
+ #
4301
+ # @!attribute [rw] marker
4302
+ # Reserved for Amazon Redshift internal use.
4303
+ # @return [String]
4304
+ #
4305
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeEndpointAuthorizationMessage AWS API Documentation
4306
+ #
4307
+ class DescribeEndpointAuthorizationMessage < Struct.new(
4308
+ :cluster_identifier,
4309
+ :account,
4310
+ :grantee,
4311
+ :max_records,
4312
+ :marker)
4313
+ SENSITIVE = []
4314
+ include Aws::Structure
4315
+ end
4316
+
4104
4317
  # @note When making an API call, you may pass DescribeEventCategoriesMessage
4105
4318
  # data as a hash:
4106
4319
  #
@@ -5467,6 +5680,204 @@ module Aws::Redshift
5467
5680
  include Aws::Structure
5468
5681
  end
5469
5682
 
5683
+ # Describes a Redshift-managed VPC endpoint.
5684
+ #
5685
+ # @!attribute [rw] cluster_identifier
5686
+ # The cluster identifier of the cluster associated with the endpoint.
5687
+ # @return [String]
5688
+ #
5689
+ # @!attribute [rw] resource_owner
5690
+ # The AWS account ID of the owner of the cluster.
5691
+ # @return [String]
5692
+ #
5693
+ # @!attribute [rw] subnet_group_name
5694
+ # The subnet group name where Amazon Redshift chooses to deploy the
5695
+ # endpoint.
5696
+ # @return [String]
5697
+ #
5698
+ # @!attribute [rw] endpoint_status
5699
+ # The status of the endpoint.
5700
+ # @return [String]
5701
+ #
5702
+ # @!attribute [rw] endpoint_name
5703
+ # The name of the endpoint.
5704
+ # @return [String]
5705
+ #
5706
+ # @!attribute [rw] endpoint_create_time
5707
+ # The time (UTC) that the endpoint was created.
5708
+ # @return [Time]
5709
+ #
5710
+ # @!attribute [rw] port
5711
+ # The port number on which the cluster accepts incoming connections.
5712
+ # @return [Integer]
5713
+ #
5714
+ # @!attribute [rw] address
5715
+ # The DNS address of the endpoint.
5716
+ # @return [String]
5717
+ #
5718
+ # @!attribute [rw] vpc_security_groups
5719
+ # The security groups associated with the endpoint.
5720
+ # @return [Array<Types::VpcSecurityGroupMembership>]
5721
+ #
5722
+ # @!attribute [rw] vpc_endpoint
5723
+ # The connection endpoint for connecting to an Amazon Redshift cluster
5724
+ # through the proxy.
5725
+ # @return [Types::VpcEndpoint]
5726
+ #
5727
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/EndpointAccess AWS API Documentation
5728
+ #
5729
+ class EndpointAccess < Struct.new(
5730
+ :cluster_identifier,
5731
+ :resource_owner,
5732
+ :subnet_group_name,
5733
+ :endpoint_status,
5734
+ :endpoint_name,
5735
+ :endpoint_create_time,
5736
+ :port,
5737
+ :address,
5738
+ :vpc_security_groups,
5739
+ :vpc_endpoint)
5740
+ SENSITIVE = []
5741
+ include Aws::Structure
5742
+ end
5743
+
5744
+ # @!attribute [rw] endpoint_access_list
5745
+ # The list of endpoints with access to the cluster.
5746
+ # @return [Array<Types::EndpointAccess>]
5747
+ #
5748
+ # @!attribute [rw] marker
5749
+ # Reserved for Amazon Redshift internal use.
5750
+ # @return [String]
5751
+ #
5752
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/EndpointAccessList AWS API Documentation
5753
+ #
5754
+ class EndpointAccessList < Struct.new(
5755
+ :endpoint_access_list,
5756
+ :marker)
5757
+ SENSITIVE = []
5758
+ include Aws::Structure
5759
+ end
5760
+
5761
+ # The account already has a Redshift-managed VPC endpoint with the given
5762
+ # identifier.
5763
+ #
5764
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/EndpointAlreadyExistsFault AWS API Documentation
5765
+ #
5766
+ class EndpointAlreadyExistsFault < Aws::EmptyStructure; end
5767
+
5768
+ # Describes an endpoint authorization for authorizing Redshift-managed
5769
+ # VPC endpoint access to a cluster across AWS accounts.
5770
+ #
5771
+ # @!attribute [rw] grantor
5772
+ # The AWS account ID of the cluster owner.
5773
+ # @return [String]
5774
+ #
5775
+ # @!attribute [rw] grantee
5776
+ # The AWS account ID of the grantee of the cluster.
5777
+ # @return [String]
5778
+ #
5779
+ # @!attribute [rw] cluster_identifier
5780
+ # The cluster identifier.
5781
+ # @return [String]
5782
+ #
5783
+ # @!attribute [rw] authorize_time
5784
+ # The time (UTC) when the authorization was created.
5785
+ # @return [Time]
5786
+ #
5787
+ # @!attribute [rw] cluster_status
5788
+ # The status of the cluster.
5789
+ # @return [String]
5790
+ #
5791
+ # @!attribute [rw] status
5792
+ # The status of the authorization action.
5793
+ # @return [String]
5794
+ #
5795
+ # @!attribute [rw] allowed_all_vp_cs
5796
+ # Indicates whether all VPCs in the grantee account are allowed access
5797
+ # to the cluster.
5798
+ # @return [Boolean]
5799
+ #
5800
+ # @!attribute [rw] allowed_vp_cs
5801
+ # The VPCs allowed access to the cluster.
5802
+ # @return [Array<String>]
5803
+ #
5804
+ # @!attribute [rw] endpoint_count
5805
+ # The number of Redshift-managed VPC endpoints created for the
5806
+ # authorization.
5807
+ # @return [Integer]
5808
+ #
5809
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/EndpointAuthorization AWS API Documentation
5810
+ #
5811
+ class EndpointAuthorization < Struct.new(
5812
+ :grantor,
5813
+ :grantee,
5814
+ :cluster_identifier,
5815
+ :authorize_time,
5816
+ :cluster_status,
5817
+ :status,
5818
+ :allowed_all_vp_cs,
5819
+ :allowed_vp_cs,
5820
+ :endpoint_count)
5821
+ SENSITIVE = []
5822
+ include Aws::Structure
5823
+ end
5824
+
5825
+ # The authorization already exists for this endpoint.
5826
+ #
5827
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/EndpointAuthorizationAlreadyExistsFault AWS API Documentation
5828
+ #
5829
+ class EndpointAuthorizationAlreadyExistsFault < Aws::EmptyStructure; end
5830
+
5831
+ # @!attribute [rw] endpoint_authorization_list
5832
+ # The authorizations to an endpoint.
5833
+ # @return [Array<Types::EndpointAuthorization>]
5834
+ #
5835
+ # @!attribute [rw] marker
5836
+ # Reserved for Amazon Redshift internal use.
5837
+ # @return [String]
5838
+ #
5839
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/EndpointAuthorizationList AWS API Documentation
5840
+ #
5841
+ class EndpointAuthorizationList < Struct.new(
5842
+ :endpoint_authorization_list,
5843
+ :marker)
5844
+ SENSITIVE = []
5845
+ include Aws::Structure
5846
+ end
5847
+
5848
+ # The authorization for this endpoint can't be found.
5849
+ #
5850
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/EndpointAuthorizationNotFoundFault AWS API Documentation
5851
+ #
5852
+ class EndpointAuthorizationNotFoundFault < Aws::EmptyStructure; end
5853
+
5854
+ # The number of endpoint authorizations per cluster has exceeded its
5855
+ # limit.
5856
+ #
5857
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/EndpointAuthorizationsPerClusterLimitExceededFault AWS API Documentation
5858
+ #
5859
+ class EndpointAuthorizationsPerClusterLimitExceededFault < Aws::EmptyStructure; end
5860
+
5861
+ # The endpoint name doesn't refer to an existing endpoint.
5862
+ #
5863
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/EndpointNotFoundFault AWS API Documentation
5864
+ #
5865
+ class EndpointNotFoundFault < Aws::EmptyStructure; end
5866
+
5867
+ # The number of Redshift-managed VPC endpoints per authorization has
5868
+ # exceeded its limit.
5869
+ #
5870
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/EndpointsPerAuthorizationLimitExceededFault AWS API Documentation
5871
+ #
5872
+ class EndpointsPerAuthorizationLimitExceededFault < Aws::EmptyStructure; end
5873
+
5874
+ # The number of Redshift-managed VPC endpoints per cluster has exceeded
5875
+ # its limit.
5876
+ #
5877
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/EndpointsPerClusterLimitExceededFault AWS API Documentation
5878
+ #
5879
+ class EndpointsPerClusterLimitExceededFault < Aws::EmptyStructure; end
5880
+
5470
5881
  # Describes an event.
5471
5882
  #
5472
5883
  # @!attribute [rw] source_identifier
@@ -6158,6 +6569,12 @@ module Aws::Redshift
6158
6569
  #
6159
6570
  class InsufficientS3BucketPolicyFault < Aws::EmptyStructure; end
6160
6571
 
6572
+ # The status of the authorization is not valid.
6573
+ #
6574
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/InvalidAuthorizationStateFault AWS API Documentation
6575
+ #
6576
+ class InvalidAuthorizationStateFault < Aws::EmptyStructure; end
6577
+
6161
6578
  # The cluster parameter group action can not be completed because
6162
6579
  # another task is in progress that involves the parameter group. Wait a
6163
6580
  # few moments and try the operation again.
@@ -6215,6 +6632,12 @@ module Aws::Redshift
6215
6632
  #
6216
6633
  class InvalidElasticIpFault < Aws::EmptyStructure; end
6217
6634
 
6635
+ # The status of the endpoint is not valid.
6636
+ #
6637
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/InvalidEndpointStateFault AWS API Documentation
6638
+ #
6639
+ class InvalidEndpointStateFault < Aws::EmptyStructure; end
6640
+
6218
6641
  # The specified HSM client certificate is not in the `available` state,
6219
6642
  # or it is still in use by one or more Amazon Redshift clusters.
6220
6643
  #
@@ -6714,6 +7137,9 @@ module Aws::Redshift
6714
7137
  # current value, existing automated snapshots that fall outside of the
6715
7138
  # new retention period will be immediately deleted.
6716
7139
  #
7140
+ # You can't disable automated snapshots for RA3 node types. Set the
7141
+ # automated retention period from 1-35 days.
7142
+ #
6717
7143
  # Default: Uses existing setting.
6718
7144
  #
6719
7145
  # Constraints: Must be a value from 0 to 35.
@@ -7097,6 +7523,32 @@ module Aws::Redshift
7097
7523
  include Aws::Structure
7098
7524
  end
7099
7525
 
7526
+ # @note When making an API call, you may pass ModifyEndpointAccessMessage
7527
+ # data as a hash:
7528
+ #
7529
+ # {
7530
+ # endpoint_name: "String", # required
7531
+ # vpc_security_group_ids: ["String"],
7532
+ # }
7533
+ #
7534
+ # @!attribute [rw] endpoint_name
7535
+ # The endpoint to be modified.
7536
+ # @return [String]
7537
+ #
7538
+ # @!attribute [rw] vpc_security_group_ids
7539
+ # The complete list of VPC security groups associated with the
7540
+ # endpoint after the endpoint is modified.
7541
+ # @return [Array<String>]
7542
+ #
7543
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyEndpointAccessMessage AWS API Documentation
7544
+ #
7545
+ class ModifyEndpointAccessMessage < Struct.new(
7546
+ :endpoint_name,
7547
+ :vpc_security_group_ids)
7548
+ SENSITIVE = []
7549
+ include Aws::Structure
7550
+ end
7551
+
7100
7552
  # @note When making an API call, you may pass ModifyEventSubscriptionMessage
7101
7553
  # data as a hash:
7102
7554
  #
@@ -7402,6 +7854,35 @@ module Aws::Redshift
7402
7854
  include Aws::Structure
7403
7855
  end
7404
7856
 
7857
+ # Describes a network interface.
7858
+ #
7859
+ # @!attribute [rw] network_interface_id
7860
+ # The network interface identifier.
7861
+ # @return [String]
7862
+ #
7863
+ # @!attribute [rw] subnet_id
7864
+ # The subnet identifier.
7865
+ # @return [String]
7866
+ #
7867
+ # @!attribute [rw] private_ip_address
7868
+ # The IPv4 address of the network interface within the subnet.
7869
+ # @return [String]
7870
+ #
7871
+ # @!attribute [rw] availability_zone
7872
+ # The Availability Zone.
7873
+ # @return [String]
7874
+ #
7875
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/NetworkInterface AWS API Documentation
7876
+ #
7877
+ class NetworkInterface < Struct.new(
7878
+ :network_interface_id,
7879
+ :subnet_id,
7880
+ :private_ip_address,
7881
+ :availability_zone)
7882
+ SENSITIVE = []
7883
+ include Aws::Structure
7884
+ end
7885
+
7405
7886
  # A list of node configurations.
7406
7887
  #
7407
7888
  # @!attribute [rw] node_type
@@ -7587,7 +8068,9 @@ module Aws::Redshift
7587
8068
  # @return [String]
7588
8069
  #
7589
8070
  # @!attribute [rw] parameter_value
7590
- # The value of the parameter.
8071
+ # The value of the parameter. If `ParameterName` is
8072
+ # `wlm_json_configuration`, then the maximum size of `ParameterValue`
8073
+ # is 8000 characters.
7591
8074
  # @return [String]
7592
8075
  #
7593
8076
  # @!attribute [rw] description
@@ -8540,6 +9023,9 @@ module Aws::Redshift
8540
9023
  # snapshots are disabled, you can still create manual snapshots when
8541
9024
  # you want with CreateClusterSnapshot.
8542
9025
  #
9026
+ # You can't disable automated snapshots for RA3 node types. Set the
9027
+ # automated retention period from 1-35 days.
9028
+ #
8543
9029
  # Default: The value selected for the cluster from which the snapshot
8544
9030
  # was taken.
8545
9031
  #
@@ -8744,6 +9230,7 @@ module Aws::Redshift
8744
9230
  # target_database_name: "String",
8745
9231
  # target_schema_name: "String",
8746
9232
  # new_table_name: "String", # required
9233
+ # enable_case_sensitive_identifier: false,
8747
9234
  # }
8748
9235
  #
8749
9236
  # @!attribute [rw] cluster_identifier
@@ -8784,6 +9271,12 @@ module Aws::Redshift
8784
9271
  # The name of the table to create as a result of the current request.
8785
9272
  # @return [String]
8786
9273
  #
9274
+ # @!attribute [rw] enable_case_sensitive_identifier
9275
+ # Indicates whether name identifiers for database, schema, and table
9276
+ # are case sensitive. If `true`, the names are case sensitive. If
9277
+ # `false` (default), the names are not case sensitive.
9278
+ # @return [Boolean]
9279
+ #
8787
9280
  # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/RestoreTableFromClusterSnapshotMessage AWS API Documentation
8788
9281
  #
8789
9282
  class RestoreTableFromClusterSnapshotMessage < Struct.new(
@@ -8794,7 +9287,8 @@ module Aws::Redshift
8794
9287
  :source_table_name,
8795
9288
  :target_database_name,
8796
9289
  :target_schema_name,
8797
- :new_table_name)
9290
+ :new_table_name,
9291
+ :enable_case_sensitive_identifier)
8798
9292
  SENSITIVE = []
8799
9293
  include Aws::Structure
8800
9294
  end
@@ -8933,6 +9427,46 @@ module Aws::Redshift
8933
9427
  include Aws::Structure
8934
9428
  end
8935
9429
 
9430
+ # @note When making an API call, you may pass RevokeEndpointAccessMessage
9431
+ # data as a hash:
9432
+ #
9433
+ # {
9434
+ # cluster_identifier: "String",
9435
+ # account: "String",
9436
+ # vpc_ids: ["String"],
9437
+ # force: false,
9438
+ # }
9439
+ #
9440
+ # @!attribute [rw] cluster_identifier
9441
+ # The cluster to revoke access from.
9442
+ # @return [String]
9443
+ #
9444
+ # @!attribute [rw] account
9445
+ # The AWS account ID whose access is to be revoked.
9446
+ # @return [String]
9447
+ #
9448
+ # @!attribute [rw] vpc_ids
9449
+ # The virtual private cloud (VPC) identifiers for which access is to
9450
+ # be revoked.
9451
+ # @return [Array<String>]
9452
+ #
9453
+ # @!attribute [rw] force
9454
+ # Indicates whether to force the revoke action. If true, the
9455
+ # Redshift-managed VPC endpoints associated with the endpoint
9456
+ # authorization are also deleted.
9457
+ # @return [Boolean]
9458
+ #
9459
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/RevokeEndpointAccessMessage AWS API Documentation
9460
+ #
9461
+ class RevokeEndpointAccessMessage < Struct.new(
9462
+ :cluster_identifier,
9463
+ :account,
9464
+ :vpc_ids,
9465
+ :force)
9466
+ SENSITIVE = []
9467
+ include Aws::Structure
9468
+ end
9469
+
8936
9470
  # @note When making an API call, you may pass RevokeSnapshotAccessMessage
8937
9471
  # data as a hash:
8938
9472
  #
@@ -10221,7 +10755,7 @@ module Aws::Redshift
10221
10755
  #
10222
10756
  class UsageLimitNotFoundFault < Aws::EmptyStructure; end
10223
10757
 
10224
- # The connection endpoint for connecting an Amazon Redshift cluster
10758
+ # The connection endpoint for connecting to an Amazon Redshift cluster
10225
10759
  # through the proxy.
10226
10760
  #
10227
10761
  # @!attribute [rw] vpc_endpoint_id
@@ -10229,10 +10763,21 @@ module Aws::Redshift
10229
10763
  # through the proxy.
10230
10764
  # @return [String]
10231
10765
  #
10766
+ # @!attribute [rw] vpc_id
10767
+ # The VPC identifier that the endpoint is associated.
10768
+ # @return [String]
10769
+ #
10770
+ # @!attribute [rw] network_interfaces
10771
+ # One or more network interfaces of the endpoint. Also known as an
10772
+ # interface endpoint.
10773
+ # @return [Array<Types::NetworkInterface>]
10774
+ #
10232
10775
  # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/VpcEndpoint AWS API Documentation
10233
10776
  #
10234
10777
  class VpcEndpoint < Struct.new(
10235
- :vpc_endpoint_id)
10778
+ :vpc_endpoint_id,
10779
+ :vpc_id,
10780
+ :network_interfaces)
10236
10781
  SENSITIVE = []
10237
10782
  include Aws::Structure
10238
10783
  end