aws-sdk-globalaccelerator 1.25.0 → 1.30.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.
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -33,8 +33,11 @@ module Aws::GlobalAccelerator
33
33
  # * {AssociatedEndpointGroupFoundException}
34
34
  # * {AssociatedListenerFoundException}
35
35
  # * {ByoipCidrNotFoundException}
36
+ # * {ConflictException}
37
+ # * {EndpointAlreadyExistsException}
36
38
  # * {EndpointGroupAlreadyExistsException}
37
39
  # * {EndpointGroupNotFoundException}
40
+ # * {EndpointNotFoundException}
38
41
  # * {IncorrectCidrStateException}
39
42
  # * {InternalServiceErrorException}
40
43
  # * {InvalidArgumentException}
@@ -139,6 +142,36 @@ module Aws::GlobalAccelerator
139
142
  end
140
143
  end
141
144
 
145
+ class ConflictException < ServiceError
146
+
147
+ # @param [Seahorse::Client::RequestContext] context
148
+ # @param [String] message
149
+ # @param [Aws::GlobalAccelerator::Types::ConflictException] data
150
+ def initialize(context, message, data = Aws::EmptyStructure.new)
151
+ super(context, message, data)
152
+ end
153
+
154
+ # @return [String]
155
+ def message
156
+ @message || @data[:message]
157
+ end
158
+ end
159
+
160
+ class EndpointAlreadyExistsException < ServiceError
161
+
162
+ # @param [Seahorse::Client::RequestContext] context
163
+ # @param [String] message
164
+ # @param [Aws::GlobalAccelerator::Types::EndpointAlreadyExistsException] data
165
+ def initialize(context, message, data = Aws::EmptyStructure.new)
166
+ super(context, message, data)
167
+ end
168
+
169
+ # @return [String]
170
+ def message
171
+ @message || @data[:message]
172
+ end
173
+ end
174
+
142
175
  class EndpointGroupAlreadyExistsException < ServiceError
143
176
 
144
177
  # @param [Seahorse::Client::RequestContext] context
@@ -169,6 +202,21 @@ module Aws::GlobalAccelerator
169
202
  end
170
203
  end
171
204
 
205
+ class EndpointNotFoundException < ServiceError
206
+
207
+ # @param [Seahorse::Client::RequestContext] context
208
+ # @param [String] message
209
+ # @param [Aws::GlobalAccelerator::Types::EndpointNotFoundException] data
210
+ def initialize(context, message, data = Aws::EmptyStructure.new)
211
+ super(context, message, data)
212
+ end
213
+
214
+ # @return [String]
215
+ def message
216
+ @message || @data[:message]
217
+ end
218
+ end
219
+
172
220
  class IncorrectCidrStateException < ServiceError
173
221
 
174
222
  # @param [Seahorse::Client::RequestContext] context
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -170,6 +170,54 @@ module Aws::GlobalAccelerator
170
170
  include Aws::Structure
171
171
  end
172
172
 
173
+ # @note When making an API call, you may pass AddCustomRoutingEndpointsRequest
174
+ # data as a hash:
175
+ #
176
+ # {
177
+ # endpoint_configurations: [ # required
178
+ # {
179
+ # endpoint_id: "GenericString",
180
+ # },
181
+ # ],
182
+ # endpoint_group_arn: "GenericString", # required
183
+ # }
184
+ #
185
+ # @!attribute [rw] endpoint_configurations
186
+ # The list of endpoint objects to add to a custom routing accelerator.
187
+ # @return [Array<Types::CustomRoutingEndpointConfiguration>]
188
+ #
189
+ # @!attribute [rw] endpoint_group_arn
190
+ # The Amazon Resource Name (ARN) of the endpoint group for the custom
191
+ # routing endpoint.
192
+ # @return [String]
193
+ #
194
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/AddCustomRoutingEndpointsRequest AWS API Documentation
195
+ #
196
+ class AddCustomRoutingEndpointsRequest < Struct.new(
197
+ :endpoint_configurations,
198
+ :endpoint_group_arn)
199
+ SENSITIVE = []
200
+ include Aws::Structure
201
+ end
202
+
203
+ # @!attribute [rw] endpoint_descriptions
204
+ # The endpoint objects added to the custom routing accelerator.
205
+ # @return [Array<Types::CustomRoutingEndpointDescription>]
206
+ #
207
+ # @!attribute [rw] endpoint_group_arn
208
+ # The Amazon Resource Name (ARN) of the endpoint group for the custom
209
+ # routing endpoint.
210
+ # @return [String]
211
+ #
212
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/AddCustomRoutingEndpointsResponse AWS API Documentation
213
+ #
214
+ class AddCustomRoutingEndpointsResponse < Struct.new(
215
+ :endpoint_descriptions,
216
+ :endpoint_group_arn)
217
+ SENSITIVE = []
218
+ include Aws::Structure
219
+ end
220
+
173
221
  # @note When making an API call, you may pass AdvertiseByoipCidrRequest
174
222
  # data as a hash:
175
223
  #
@@ -203,6 +251,71 @@ module Aws::GlobalAccelerator
203
251
  include Aws::Structure
204
252
  end
205
253
 
254
+ # @note When making an API call, you may pass AllowCustomRoutingTrafficRequest
255
+ # data as a hash:
256
+ #
257
+ # {
258
+ # endpoint_group_arn: "GenericString", # required
259
+ # endpoint_id: "GenericString", # required
260
+ # destination_addresses: ["IpAddress"],
261
+ # destination_ports: [1],
262
+ # allow_all_traffic_to_endpoint: false,
263
+ # }
264
+ #
265
+ # @!attribute [rw] endpoint_group_arn
266
+ # The Amazon Resource Name (ARN) of the endpoint group.
267
+ # @return [String]
268
+ #
269
+ # @!attribute [rw] endpoint_id
270
+ # An ID for the endpoint. For custom routing accelerators, this is the
271
+ # virtual private cloud (VPC) subnet ID.
272
+ # @return [String]
273
+ #
274
+ # @!attribute [rw] destination_addresses
275
+ # A list of specific Amazon EC2 instance IP addresses (destination
276
+ # addresses) in a subnet that you want to allow to receive traffic.
277
+ # The IP addresses must be a subset of the IP addresses that you
278
+ # specified for the endpoint group.
279
+ #
280
+ # `DestinationAddresses` is required if `AllowAllTrafficToEndpoint` is
281
+ # `FALSE` or is not specified.
282
+ # @return [Array<String>]
283
+ #
284
+ # @!attribute [rw] destination_ports
285
+ # A list of specific Amazon EC2 instance ports (destination ports)
286
+ # that you want to allow to receive traffic.
287
+ # @return [Array<Integer>]
288
+ #
289
+ # @!attribute [rw] allow_all_traffic_to_endpoint
290
+ # Indicates whether all destination IP addresses and ports for a
291
+ # specified VPC subnet endpoint can receive traffic from a custom
292
+ # routing accelerator. The value is TRUE or FALSE.
293
+ #
294
+ # When set to TRUE, *all* destinations in the custom routing VPC
295
+ # subnet can receive traffic. Note that you cannot specify destination
296
+ # IP addresses and ports when the value is set to TRUE.
297
+ #
298
+ # When set to FALSE (or not specified), you *must* specify a list of
299
+ # destination IP addresses that are allowed to receive traffic. A list
300
+ # of ports is optional. If you don't specify a list of ports, the
301
+ # ports that can accept traffic is the same as the ports configured
302
+ # for the endpoint group.
303
+ #
304
+ # The default value is FALSE.
305
+ # @return [Boolean]
306
+ #
307
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/AllowCustomRoutingTrafficRequest AWS API Documentation
308
+ #
309
+ class AllowCustomRoutingTrafficRequest < Struct.new(
310
+ :endpoint_group_arn,
311
+ :endpoint_id,
312
+ :destination_addresses,
313
+ :destination_ports,
314
+ :allow_all_traffic_to_endpoint)
315
+ SENSITIVE = []
316
+ include Aws::Structure
317
+ end
318
+
206
319
  # The listener that you specified has an endpoint group associated with
207
320
  # it. You must remove all dependent resources from a listener before you
208
321
  # can delete it.
@@ -381,6 +494,19 @@ module Aws::GlobalAccelerator
381
494
  include Aws::Structure
382
495
  end
383
496
 
497
+ # You can't use both of those options.
498
+ #
499
+ # @!attribute [rw] message
500
+ # @return [String]
501
+ #
502
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ConflictException AWS API Documentation
503
+ #
504
+ class ConflictException < Struct.new(
505
+ :message)
506
+ SENSITIVE = []
507
+ include Aws::Structure
508
+ end
509
+
384
510
  # @note When making an API call, you may pass CreateAcceleratorRequest
385
511
  # data as a hash:
386
512
  #
@@ -413,7 +539,7 @@ module Aws::GlobalAccelerator
413
539
  # Accelerator (BYOIP), you can choose IP addresses from your own pool
414
540
  # to use for the accelerator's static IP addresses when you create an
415
541
  # accelerator. You can specify one or two addresses, separated by a
416
- # comma. Do not include the /32 suffix.
542
+ # space. Do not include the /32 suffix.
417
543
  #
418
544
  # Only one IP address from each of your IP address ranges can be used
419
545
  # for each accelerator. If you specify only one IP address from your
@@ -485,6 +611,234 @@ module Aws::GlobalAccelerator
485
611
  include Aws::Structure
486
612
  end
487
613
 
614
+ # @note When making an API call, you may pass CreateCustomRoutingAcceleratorRequest
615
+ # data as a hash:
616
+ #
617
+ # {
618
+ # name: "GenericString", # required
619
+ # ip_address_type: "IPV4", # accepts IPV4
620
+ # ip_addresses: ["IpAddress"],
621
+ # enabled: false,
622
+ # idempotency_token: "IdempotencyToken", # required
623
+ # tags: [
624
+ # {
625
+ # key: "TagKey", # required
626
+ # value: "TagValue", # required
627
+ # },
628
+ # ],
629
+ # }
630
+ #
631
+ # @!attribute [rw] name
632
+ # The name of a custom routing accelerator. The name can have a
633
+ # maximum of 64 characters, must contain only alphanumeric characters
634
+ # or hyphens (-), and must not begin or end with a hyphen.
635
+ # @return [String]
636
+ #
637
+ # @!attribute [rw] ip_address_type
638
+ # The value for the address type must be IPv4.
639
+ # @return [String]
640
+ #
641
+ # @!attribute [rw] ip_addresses
642
+ # Optionally, if you've added your own IP address pool to Global
643
+ # Accelerator (BYOIP), you can choose IP addresses from your own pool
644
+ # to use for the accelerator's static IP addresses when you create an
645
+ # accelerator. You can specify one or two addresses, separated by a
646
+ # space. Do not include the /32 suffix.
647
+ #
648
+ # Only one IP address from each of your IP address ranges can be used
649
+ # for each accelerator. If you specify only one IP address from your
650
+ # IP address range, Global Accelerator assigns a second static IP
651
+ # address for the accelerator from the AWS IP address pool.
652
+ #
653
+ # Note that you can't update IP addresses for an existing
654
+ # accelerator. To change them, you must create a new accelerator with
655
+ # the new addresses.
656
+ #
657
+ # For more information, see [Bring your own IP addresses (BYOIP)][1]
658
+ # in the *AWS Global Accelerator Developer Guide*.
659
+ #
660
+ #
661
+ #
662
+ # [1]: https://docs.aws.amazon.com/global-accelerator/latest/dg/using-byoip.html
663
+ # @return [Array<String>]
664
+ #
665
+ # @!attribute [rw] enabled
666
+ # Indicates whether an accelerator is enabled. The value is true or
667
+ # false. The default value is true.
668
+ #
669
+ # If the value is set to true, an accelerator cannot be deleted. If
670
+ # set to false, the accelerator can be deleted.
671
+ # @return [Boolean]
672
+ #
673
+ # @!attribute [rw] idempotency_token
674
+ # A unique, case-sensitive identifier that you provide to ensure the
675
+ # idempotency—that is, the uniqueness—of the request.
676
+ #
677
+ # **A suitable default value is auto-generated.** You should normally
678
+ # not need to pass this option.
679
+ # @return [String]
680
+ #
681
+ # @!attribute [rw] tags
682
+ # Create tags for an accelerator.
683
+ #
684
+ # For more information, see [Tagging in AWS Global Accelerator][1] in
685
+ # the *AWS Global Accelerator Developer Guide*.
686
+ #
687
+ #
688
+ #
689
+ # [1]: https://docs.aws.amazon.com/global-accelerator/latest/dg/tagging-in-global-accelerator.html
690
+ # @return [Array<Types::Tag>]
691
+ #
692
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/CreateCustomRoutingAcceleratorRequest AWS API Documentation
693
+ #
694
+ class CreateCustomRoutingAcceleratorRequest < Struct.new(
695
+ :name,
696
+ :ip_address_type,
697
+ :ip_addresses,
698
+ :enabled,
699
+ :idempotency_token,
700
+ :tags)
701
+ SENSITIVE = []
702
+ include Aws::Structure
703
+ end
704
+
705
+ # @!attribute [rw] accelerator
706
+ # The accelerator that is created.
707
+ # @return [Types::CustomRoutingAccelerator]
708
+ #
709
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/CreateCustomRoutingAcceleratorResponse AWS API Documentation
710
+ #
711
+ class CreateCustomRoutingAcceleratorResponse < Struct.new(
712
+ :accelerator)
713
+ SENSITIVE = []
714
+ include Aws::Structure
715
+ end
716
+
717
+ # @note When making an API call, you may pass CreateCustomRoutingEndpointGroupRequest
718
+ # data as a hash:
719
+ #
720
+ # {
721
+ # listener_arn: "GenericString", # required
722
+ # endpoint_group_region: "GenericString", # required
723
+ # destination_configurations: [ # required
724
+ # {
725
+ # from_port: 1, # required
726
+ # to_port: 1, # required
727
+ # protocols: ["TCP"], # required, accepts TCP, UDP
728
+ # },
729
+ # ],
730
+ # idempotency_token: "IdempotencyToken", # required
731
+ # }
732
+ #
733
+ # @!attribute [rw] listener_arn
734
+ # The Amazon Resource Name (ARN) of the listener for a custom routing
735
+ # endpoint.
736
+ # @return [String]
737
+ #
738
+ # @!attribute [rw] endpoint_group_region
739
+ # The AWS Region where the endpoint group is located. A listener can
740
+ # have only one endpoint group in a specific Region.
741
+ # @return [String]
742
+ #
743
+ # @!attribute [rw] destination_configurations
744
+ # Sets the port range and protocol for all endpoints (virtual private
745
+ # cloud subnets) in a custom routing endpoint group to accept client
746
+ # traffic on.
747
+ # @return [Array<Types::CustomRoutingDestinationConfiguration>]
748
+ #
749
+ # @!attribute [rw] idempotency_token
750
+ # A unique, case-sensitive identifier that you provide to ensure the
751
+ # idempotency—that is, the uniqueness—of the request.
752
+ #
753
+ # **A suitable default value is auto-generated.** You should normally
754
+ # not need to pass this option.
755
+ # @return [String]
756
+ #
757
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/CreateCustomRoutingEndpointGroupRequest AWS API Documentation
758
+ #
759
+ class CreateCustomRoutingEndpointGroupRequest < Struct.new(
760
+ :listener_arn,
761
+ :endpoint_group_region,
762
+ :destination_configurations,
763
+ :idempotency_token)
764
+ SENSITIVE = []
765
+ include Aws::Structure
766
+ end
767
+
768
+ # @!attribute [rw] endpoint_group
769
+ # The information about the endpoint group created for a custom
770
+ # routing accelerator.
771
+ # @return [Types::CustomRoutingEndpointGroup]
772
+ #
773
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/CreateCustomRoutingEndpointGroupResponse AWS API Documentation
774
+ #
775
+ class CreateCustomRoutingEndpointGroupResponse < Struct.new(
776
+ :endpoint_group)
777
+ SENSITIVE = []
778
+ include Aws::Structure
779
+ end
780
+
781
+ # @note When making an API call, you may pass CreateCustomRoutingListenerRequest
782
+ # data as a hash:
783
+ #
784
+ # {
785
+ # accelerator_arn: "GenericString", # required
786
+ # port_ranges: [ # required
787
+ # {
788
+ # from_port: 1,
789
+ # to_port: 1,
790
+ # },
791
+ # ],
792
+ # idempotency_token: "IdempotencyToken", # required
793
+ # }
794
+ #
795
+ # @!attribute [rw] accelerator_arn
796
+ # The Amazon Resource Name (ARN) of the accelerator for a custom
797
+ # routing listener.
798
+ # @return [String]
799
+ #
800
+ # @!attribute [rw] port_ranges
801
+ # The port range to support for connections from clients to your
802
+ # accelerator.
803
+ #
804
+ # Separately, you set port ranges for endpoints. For more information,
805
+ # see [About endpoints for custom routing accelerators][1].
806
+ #
807
+ #
808
+ #
809
+ # [1]: https://docs.aws.amazon.com/global-accelerator/latest/dg/about-custom-routing-endpoints.html
810
+ # @return [Array<Types::PortRange>]
811
+ #
812
+ # @!attribute [rw] idempotency_token
813
+ # A unique, case-sensitive identifier that you provide to ensure the
814
+ # idempotency—that is, the uniqueness—of the request.
815
+ #
816
+ # **A suitable default value is auto-generated.** You should normally
817
+ # not need to pass this option.
818
+ # @return [String]
819
+ #
820
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/CreateCustomRoutingListenerRequest AWS API Documentation
821
+ #
822
+ class CreateCustomRoutingListenerRequest < Struct.new(
823
+ :accelerator_arn,
824
+ :port_ranges,
825
+ :idempotency_token)
826
+ SENSITIVE = []
827
+ include Aws::Structure
828
+ end
829
+
830
+ # @!attribute [rw] listener
831
+ # The listener that you've created for a custom routing accelerator.
832
+ # @return [Types::CustomRoutingListener]
833
+ #
834
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/CreateCustomRoutingListenerResponse AWS API Documentation
835
+ #
836
+ class CreateCustomRoutingListenerResponse < Struct.new(
837
+ :listener)
838
+ SENSITIVE = []
839
+ include Aws::Structure
840
+ end
841
+
488
842
  # @note When making an API call, you may pass CreateEndpointGroupRequest
489
843
  # data as a hash:
490
844
  #
@@ -501,7 +855,7 @@ module Aws::GlobalAccelerator
501
855
  # traffic_dial_percentage: 1.0,
502
856
  # health_check_port: 1,
503
857
  # health_check_protocol: "TCP", # accepts TCP, HTTP, HTTPS
504
- # health_check_path: "GenericString",
858
+ # health_check_path: "HealthCheckPath",
505
859
  # health_check_interval_seconds: 1,
506
860
  # threshold_count: 1,
507
861
  # idempotency_token: "IdempotencyToken", # required
@@ -709,6 +1063,293 @@ module Aws::GlobalAccelerator
709
1063
  include Aws::Structure
710
1064
  end
711
1065
 
1066
+ # Attributes of a custom routing accelerator.
1067
+ #
1068
+ # @!attribute [rw] accelerator_arn
1069
+ # The Amazon Resource Name (ARN) of the custom routing accelerator.
1070
+ # @return [String]
1071
+ #
1072
+ # @!attribute [rw] name
1073
+ # The name of the accelerator. The name must contain only alphanumeric
1074
+ # characters or hyphens (-), and must not begin or end with a hyphen.
1075
+ # @return [String]
1076
+ #
1077
+ # @!attribute [rw] ip_address_type
1078
+ # The value for the address type must be IPv4.
1079
+ # @return [String]
1080
+ #
1081
+ # @!attribute [rw] enabled
1082
+ # Indicates whether the accelerator is enabled. The value is true or
1083
+ # false. The default value is true.
1084
+ #
1085
+ # If the value is set to true, the accelerator cannot be deleted. If
1086
+ # set to false, accelerator can be deleted.
1087
+ # @return [Boolean]
1088
+ #
1089
+ # @!attribute [rw] ip_sets
1090
+ # The static IP addresses that Global Accelerator associates with the
1091
+ # accelerator.
1092
+ # @return [Array<Types::IpSet>]
1093
+ #
1094
+ # @!attribute [rw] dns_name
1095
+ # The Domain Name System (DNS) name that Global Accelerator creates
1096
+ # that points to your accelerator's static IP addresses.
1097
+ #
1098
+ # The naming convention for the DNS name is the following: A lowercase
1099
+ # letter a, followed by a 16-bit random hex string, followed by
1100
+ # .awsglobalaccelerator.com. For example:
1101
+ # a1234567890abcdef.awsglobalaccelerator.com.
1102
+ #
1103
+ # For more information about the default DNS name, see [ Support for
1104
+ # DNS Addressing in Global Accelerator][1] in the *AWS Global
1105
+ # Accelerator Developer Guide*.
1106
+ #
1107
+ #
1108
+ #
1109
+ # [1]: https://docs.aws.amazon.com/global-accelerator/latest/dg/about-accelerators.html#about-accelerators.dns-addressing
1110
+ # @return [String]
1111
+ #
1112
+ # @!attribute [rw] status
1113
+ # Describes the deployment status of the accelerator.
1114
+ # @return [String]
1115
+ #
1116
+ # @!attribute [rw] created_time
1117
+ # The date and time that the accelerator was created.
1118
+ # @return [Time]
1119
+ #
1120
+ # @!attribute [rw] last_modified_time
1121
+ # The date and time that the accelerator was last modified.
1122
+ # @return [Time]
1123
+ #
1124
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/CustomRoutingAccelerator AWS API Documentation
1125
+ #
1126
+ class CustomRoutingAccelerator < Struct.new(
1127
+ :accelerator_arn,
1128
+ :name,
1129
+ :ip_address_type,
1130
+ :enabled,
1131
+ :ip_sets,
1132
+ :dns_name,
1133
+ :status,
1134
+ :created_time,
1135
+ :last_modified_time)
1136
+ SENSITIVE = []
1137
+ include Aws::Structure
1138
+ end
1139
+
1140
+ # Attributes of a custom routing accelerator.
1141
+ #
1142
+ # @!attribute [rw] flow_logs_enabled
1143
+ # Indicates whether flow logs are enabled. The default value is false.
1144
+ # If the value is true, `FlowLogsS3Bucket` and `FlowLogsS3Prefix` must
1145
+ # be specified.
1146
+ #
1147
+ # For more information, see [Flow Logs][1] in the *AWS Global
1148
+ # Accelerator Developer Guide*.
1149
+ #
1150
+ #
1151
+ #
1152
+ # [1]: https://docs.aws.amazon.com/global-accelerator/latest/dg/monitoring-global-accelerator.flow-logs.html
1153
+ # @return [Boolean]
1154
+ #
1155
+ # @!attribute [rw] flow_logs_s3_bucket
1156
+ # The name of the Amazon S3 bucket for the flow logs. Attribute is
1157
+ # required if `FlowLogsEnabled` is `true`. The bucket must exist and
1158
+ # have a bucket policy that grants AWS Global Accelerator permission
1159
+ # to write to the bucket.
1160
+ # @return [String]
1161
+ #
1162
+ # @!attribute [rw] flow_logs_s3_prefix
1163
+ # The prefix for the location in the Amazon S3 bucket for the flow
1164
+ # logs. Attribute is required if `FlowLogsEnabled` is `true`.
1165
+ #
1166
+ # If you don’t specify a prefix, the flow logs are stored in the root
1167
+ # of the bucket. If you specify slash (/) for the S3 bucket prefix,
1168
+ # the log file bucket folder structure will include a double slash
1169
+ # (//), like the following:
1170
+ #
1171
+ # DOC-EXAMPLE-BUCKET//AWSLogs/aws\_account\_id
1172
+ # @return [String]
1173
+ #
1174
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/CustomRoutingAcceleratorAttributes AWS API Documentation
1175
+ #
1176
+ class CustomRoutingAcceleratorAttributes < Struct.new(
1177
+ :flow_logs_enabled,
1178
+ :flow_logs_s3_bucket,
1179
+ :flow_logs_s3_prefix)
1180
+ SENSITIVE = []
1181
+ include Aws::Structure
1182
+ end
1183
+
1184
+ # For a custom routing accelerator, sets the port range and protocol for
1185
+ # all endpoints (virtual private cloud subnets) in an endpoint group to
1186
+ # accept client traffic on.
1187
+ #
1188
+ # @note When making an API call, you may pass CustomRoutingDestinationConfiguration
1189
+ # data as a hash:
1190
+ #
1191
+ # {
1192
+ # from_port: 1, # required
1193
+ # to_port: 1, # required
1194
+ # protocols: ["TCP"], # required, accepts TCP, UDP
1195
+ # }
1196
+ #
1197
+ # @!attribute [rw] from_port
1198
+ # The first port, inclusive, in the range of ports for the endpoint
1199
+ # group that is associated with a custom routing accelerator.
1200
+ # @return [Integer]
1201
+ #
1202
+ # @!attribute [rw] to_port
1203
+ # The last port, inclusive, in the range of ports for the endpoint
1204
+ # group that is associated with a custom routing accelerator.
1205
+ # @return [Integer]
1206
+ #
1207
+ # @!attribute [rw] protocols
1208
+ # The protocol for the endpoint group that is associated with a custom
1209
+ # routing accelerator. The protocol can be either TCP or UDP.
1210
+ # @return [Array<String>]
1211
+ #
1212
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/CustomRoutingDestinationConfiguration AWS API Documentation
1213
+ #
1214
+ class CustomRoutingDestinationConfiguration < Struct.new(
1215
+ :from_port,
1216
+ :to_port,
1217
+ :protocols)
1218
+ SENSITIVE = []
1219
+ include Aws::Structure
1220
+ end
1221
+
1222
+ # For a custom routing accelerator, describes the port range and
1223
+ # protocol for all endpoints (virtual private cloud subnets) in an
1224
+ # endpoint group to accept client traffic on.
1225
+ #
1226
+ # @!attribute [rw] from_port
1227
+ # The first port, inclusive, in the range of ports for the endpoint
1228
+ # group that is associated with a custom routing accelerator.
1229
+ # @return [Integer]
1230
+ #
1231
+ # @!attribute [rw] to_port
1232
+ # The last port, inclusive, in the range of ports for the endpoint
1233
+ # group that is associated with a custom routing accelerator.
1234
+ # @return [Integer]
1235
+ #
1236
+ # @!attribute [rw] protocols
1237
+ # The protocol for the endpoint group that is associated with a custom
1238
+ # routing accelerator. The protocol can be either TCP or UDP.
1239
+ # @return [Array<String>]
1240
+ #
1241
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/CustomRoutingDestinationDescription AWS API Documentation
1242
+ #
1243
+ class CustomRoutingDestinationDescription < Struct.new(
1244
+ :from_port,
1245
+ :to_port,
1246
+ :protocols)
1247
+ SENSITIVE = []
1248
+ include Aws::Structure
1249
+ end
1250
+
1251
+ # The list of endpoint objects. For custom routing, this is a list of
1252
+ # virtual private cloud (VPC) subnet IDs.
1253
+ #
1254
+ # @note When making an API call, you may pass CustomRoutingEndpointConfiguration
1255
+ # data as a hash:
1256
+ #
1257
+ # {
1258
+ # endpoint_id: "GenericString",
1259
+ # }
1260
+ #
1261
+ # @!attribute [rw] endpoint_id
1262
+ # An ID for the endpoint. For custom routing accelerators, this is the
1263
+ # virtual private cloud (VPC) subnet ID.
1264
+ # @return [String]
1265
+ #
1266
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/CustomRoutingEndpointConfiguration AWS API Documentation
1267
+ #
1268
+ class CustomRoutingEndpointConfiguration < Struct.new(
1269
+ :endpoint_id)
1270
+ SENSITIVE = []
1271
+ include Aws::Structure
1272
+ end
1273
+
1274
+ # A complex type for an endpoint for a custom routing accelerator. Each
1275
+ # endpoint group can include one or more endpoints, which are virtual
1276
+ # private cloud (VPC) subnets.
1277
+ #
1278
+ # @!attribute [rw] endpoint_id
1279
+ # An ID for the endpoint. For custom routing accelerators, this is the
1280
+ # virtual private cloud (VPC) subnet ID.
1281
+ # @return [String]
1282
+ #
1283
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/CustomRoutingEndpointDescription AWS API Documentation
1284
+ #
1285
+ class CustomRoutingEndpointDescription < Struct.new(
1286
+ :endpoint_id)
1287
+ SENSITIVE = []
1288
+ include Aws::Structure
1289
+ end
1290
+
1291
+ # A complex type for the endpoint group for a custom routing
1292
+ # accelerator. An AWS Region can have only one endpoint group for a
1293
+ # specific listener.
1294
+ #
1295
+ # @!attribute [rw] endpoint_group_arn
1296
+ # The Amazon Resource Name (ARN) of the endpoint group.
1297
+ # @return [String]
1298
+ #
1299
+ # @!attribute [rw] endpoint_group_region
1300
+ # The AWS Region where the endpoint group is located.
1301
+ # @return [String]
1302
+ #
1303
+ # @!attribute [rw] destination_descriptions
1304
+ # For a custom routing accelerator, describes the port range and
1305
+ # protocol for all endpoints (virtual private cloud subnets) in an
1306
+ # endpoint group to accept client traffic on.
1307
+ # @return [Array<Types::CustomRoutingDestinationDescription>]
1308
+ #
1309
+ # @!attribute [rw] endpoint_descriptions
1310
+ # For a custom routing accelerator, describes the endpoints (virtual
1311
+ # private cloud subnets) in an endpoint group to accept client traffic
1312
+ # on.
1313
+ # @return [Array<Types::CustomRoutingEndpointDescription>]
1314
+ #
1315
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/CustomRoutingEndpointGroup AWS API Documentation
1316
+ #
1317
+ class CustomRoutingEndpointGroup < Struct.new(
1318
+ :endpoint_group_arn,
1319
+ :endpoint_group_region,
1320
+ :destination_descriptions,
1321
+ :endpoint_descriptions)
1322
+ SENSITIVE = []
1323
+ include Aws::Structure
1324
+ end
1325
+
1326
+ # A complex type for a listener for a custom routing accelerator.
1327
+ #
1328
+ # @!attribute [rw] listener_arn
1329
+ # The Amazon Resource Name (ARN) of the listener.
1330
+ # @return [String]
1331
+ #
1332
+ # @!attribute [rw] port_ranges
1333
+ # The port range to support for connections from clients to your
1334
+ # accelerator.
1335
+ #
1336
+ # Separately, you set port ranges for endpoints. For more information,
1337
+ # see [About endpoints for custom routing accelerators][1].
1338
+ #
1339
+ #
1340
+ #
1341
+ # [1]: https://docs.aws.amazon.com/global-accelerator/latest/dg/about-custom-routing-endpoints.html
1342
+ # @return [Array<Types::PortRange>]
1343
+ #
1344
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/CustomRoutingListener AWS API Documentation
1345
+ #
1346
+ class CustomRoutingListener < Struct.new(
1347
+ :listener_arn,
1348
+ :port_ranges)
1349
+ SENSITIVE = []
1350
+ include Aws::Structure
1351
+ end
1352
+
712
1353
  # @note When making an API call, you may pass DeleteAcceleratorRequest
713
1354
  # data as a hash:
714
1355
  #
@@ -728,6 +1369,64 @@ module Aws::GlobalAccelerator
728
1369
  include Aws::Structure
729
1370
  end
730
1371
 
1372
+ # @note When making an API call, you may pass DeleteCustomRoutingAcceleratorRequest
1373
+ # data as a hash:
1374
+ #
1375
+ # {
1376
+ # accelerator_arn: "GenericString", # required
1377
+ # }
1378
+ #
1379
+ # @!attribute [rw] accelerator_arn
1380
+ # The Amazon Resource Name (ARN) of the custom routing accelerator to
1381
+ # delete.
1382
+ # @return [String]
1383
+ #
1384
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DeleteCustomRoutingAcceleratorRequest AWS API Documentation
1385
+ #
1386
+ class DeleteCustomRoutingAcceleratorRequest < Struct.new(
1387
+ :accelerator_arn)
1388
+ SENSITIVE = []
1389
+ include Aws::Structure
1390
+ end
1391
+
1392
+ # @note When making an API call, you may pass DeleteCustomRoutingEndpointGroupRequest
1393
+ # data as a hash:
1394
+ #
1395
+ # {
1396
+ # endpoint_group_arn: "GenericString", # required
1397
+ # }
1398
+ #
1399
+ # @!attribute [rw] endpoint_group_arn
1400
+ # The Amazon Resource Name (ARN) of the endpoint group to delete.
1401
+ # @return [String]
1402
+ #
1403
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DeleteCustomRoutingEndpointGroupRequest AWS API Documentation
1404
+ #
1405
+ class DeleteCustomRoutingEndpointGroupRequest < Struct.new(
1406
+ :endpoint_group_arn)
1407
+ SENSITIVE = []
1408
+ include Aws::Structure
1409
+ end
1410
+
1411
+ # @note When making an API call, you may pass DeleteCustomRoutingListenerRequest
1412
+ # data as a hash:
1413
+ #
1414
+ # {
1415
+ # listener_arn: "GenericString", # required
1416
+ # }
1417
+ #
1418
+ # @!attribute [rw] listener_arn
1419
+ # The Amazon Resource Name (ARN) of the listener to delete.
1420
+ # @return [String]
1421
+ #
1422
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DeleteCustomRoutingListenerRequest AWS API Documentation
1423
+ #
1424
+ class DeleteCustomRoutingListenerRequest < Struct.new(
1425
+ :listener_arn)
1426
+ SENSITIVE = []
1427
+ include Aws::Structure
1428
+ end
1429
+
731
1430
  # @note When making an API call, you may pass DeleteEndpointGroupRequest
732
1431
  # data as a hash:
733
1432
  #
@@ -766,6 +1465,68 @@ module Aws::GlobalAccelerator
766
1465
  include Aws::Structure
767
1466
  end
768
1467
 
1468
+ # @note When making an API call, you may pass DenyCustomRoutingTrafficRequest
1469
+ # data as a hash:
1470
+ #
1471
+ # {
1472
+ # endpoint_group_arn: "GenericString", # required
1473
+ # endpoint_id: "GenericString", # required
1474
+ # destination_addresses: ["IpAddress"],
1475
+ # destination_ports: [1],
1476
+ # deny_all_traffic_to_endpoint: false,
1477
+ # }
1478
+ #
1479
+ # @!attribute [rw] endpoint_group_arn
1480
+ # The Amazon Resource Name (ARN) of the endpoint group.
1481
+ # @return [String]
1482
+ #
1483
+ # @!attribute [rw] endpoint_id
1484
+ # An ID for the endpoint. For custom routing accelerators, this is the
1485
+ # virtual private cloud (VPC) subnet ID.
1486
+ # @return [String]
1487
+ #
1488
+ # @!attribute [rw] destination_addresses
1489
+ # A list of specific Amazon EC2 instance IP addresses (destination
1490
+ # addresses) in a subnet that you want to prevent from receiving
1491
+ # traffic. The IP addresses must be a subset of the IP addresses
1492
+ # allowed for the VPC subnet associated with the endpoint group.
1493
+ # @return [Array<String>]
1494
+ #
1495
+ # @!attribute [rw] destination_ports
1496
+ # A list of specific Amazon EC2 instance ports (destination ports) in
1497
+ # a subnet endpoint that you want to prevent from receiving traffic.
1498
+ # @return [Array<Integer>]
1499
+ #
1500
+ # @!attribute [rw] deny_all_traffic_to_endpoint
1501
+ # Indicates whether all destination IP addresses and ports for a
1502
+ # specified VPC subnet endpoint *cannot* receive traffic from a custom
1503
+ # routing accelerator. The value is TRUE or FALSE.
1504
+ #
1505
+ # When set to TRUE, *no* destinations in the custom routing VPC subnet
1506
+ # can receive traffic. Note that you cannot specify destination IP
1507
+ # addresses and ports when the value is set to TRUE.
1508
+ #
1509
+ # When set to FALSE (or not specified), you *must* specify a list of
1510
+ # destination IP addresses that cannot receive traffic. A list of
1511
+ # ports is optional. If you don't specify a list of ports, the ports
1512
+ # that can accept traffic is the same as the ports configured for the
1513
+ # endpoint group.
1514
+ #
1515
+ # The default value is FALSE.
1516
+ # @return [Boolean]
1517
+ #
1518
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DenyCustomRoutingTrafficRequest AWS API Documentation
1519
+ #
1520
+ class DenyCustomRoutingTrafficRequest < Struct.new(
1521
+ :endpoint_group_arn,
1522
+ :endpoint_id,
1523
+ :destination_addresses,
1524
+ :destination_ports,
1525
+ :deny_all_traffic_to_endpoint)
1526
+ SENSITIVE = []
1527
+ include Aws::Structure
1528
+ end
1529
+
769
1530
  # @note When making an API call, you may pass DeprovisionByoipCidrRequest
770
1531
  # data as a hash:
771
1532
  #
@@ -861,6 +1622,132 @@ module Aws::GlobalAccelerator
861
1622
  include Aws::Structure
862
1623
  end
863
1624
 
1625
+ # @note When making an API call, you may pass DescribeCustomRoutingAcceleratorAttributesRequest
1626
+ # data as a hash:
1627
+ #
1628
+ # {
1629
+ # accelerator_arn: "GenericString", # required
1630
+ # }
1631
+ #
1632
+ # @!attribute [rw] accelerator_arn
1633
+ # The Amazon Resource Name (ARN) of the custom routing accelerator to
1634
+ # describe the attributes for.
1635
+ # @return [String]
1636
+ #
1637
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DescribeCustomRoutingAcceleratorAttributesRequest AWS API Documentation
1638
+ #
1639
+ class DescribeCustomRoutingAcceleratorAttributesRequest < Struct.new(
1640
+ :accelerator_arn)
1641
+ SENSITIVE = []
1642
+ include Aws::Structure
1643
+ end
1644
+
1645
+ # @!attribute [rw] accelerator_attributes
1646
+ # The attributes of the custom routing accelerator.
1647
+ # @return [Types::CustomRoutingAcceleratorAttributes]
1648
+ #
1649
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DescribeCustomRoutingAcceleratorAttributesResponse AWS API Documentation
1650
+ #
1651
+ class DescribeCustomRoutingAcceleratorAttributesResponse < Struct.new(
1652
+ :accelerator_attributes)
1653
+ SENSITIVE = []
1654
+ include Aws::Structure
1655
+ end
1656
+
1657
+ # @note When making an API call, you may pass DescribeCustomRoutingAcceleratorRequest
1658
+ # data as a hash:
1659
+ #
1660
+ # {
1661
+ # accelerator_arn: "GenericString", # required
1662
+ # }
1663
+ #
1664
+ # @!attribute [rw] accelerator_arn
1665
+ # The Amazon Resource Name (ARN) of the accelerator to describe.
1666
+ # @return [String]
1667
+ #
1668
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DescribeCustomRoutingAcceleratorRequest AWS API Documentation
1669
+ #
1670
+ class DescribeCustomRoutingAcceleratorRequest < Struct.new(
1671
+ :accelerator_arn)
1672
+ SENSITIVE = []
1673
+ include Aws::Structure
1674
+ end
1675
+
1676
+ # @!attribute [rw] accelerator
1677
+ # The description of the custom routing accelerator.
1678
+ # @return [Types::CustomRoutingAccelerator]
1679
+ #
1680
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DescribeCustomRoutingAcceleratorResponse AWS API Documentation
1681
+ #
1682
+ class DescribeCustomRoutingAcceleratorResponse < Struct.new(
1683
+ :accelerator)
1684
+ SENSITIVE = []
1685
+ include Aws::Structure
1686
+ end
1687
+
1688
+ # @note When making an API call, you may pass DescribeCustomRoutingEndpointGroupRequest
1689
+ # data as a hash:
1690
+ #
1691
+ # {
1692
+ # endpoint_group_arn: "GenericString", # required
1693
+ # }
1694
+ #
1695
+ # @!attribute [rw] endpoint_group_arn
1696
+ # The Amazon Resource Name (ARN) of the endpoint group to describe.
1697
+ # @return [String]
1698
+ #
1699
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DescribeCustomRoutingEndpointGroupRequest AWS API Documentation
1700
+ #
1701
+ class DescribeCustomRoutingEndpointGroupRequest < Struct.new(
1702
+ :endpoint_group_arn)
1703
+ SENSITIVE = []
1704
+ include Aws::Structure
1705
+ end
1706
+
1707
+ # @!attribute [rw] endpoint_group
1708
+ # The description of an endpoint group for a custom routing
1709
+ # accelerator.
1710
+ # @return [Types::CustomRoutingEndpointGroup]
1711
+ #
1712
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DescribeCustomRoutingEndpointGroupResponse AWS API Documentation
1713
+ #
1714
+ class DescribeCustomRoutingEndpointGroupResponse < Struct.new(
1715
+ :endpoint_group)
1716
+ SENSITIVE = []
1717
+ include Aws::Structure
1718
+ end
1719
+
1720
+ # @note When making an API call, you may pass DescribeCustomRoutingListenerRequest
1721
+ # data as a hash:
1722
+ #
1723
+ # {
1724
+ # listener_arn: "GenericString", # required
1725
+ # }
1726
+ #
1727
+ # @!attribute [rw] listener_arn
1728
+ # The Amazon Resource Name (ARN) of the listener to describe.
1729
+ # @return [String]
1730
+ #
1731
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DescribeCustomRoutingListenerRequest AWS API Documentation
1732
+ #
1733
+ class DescribeCustomRoutingListenerRequest < Struct.new(
1734
+ :listener_arn)
1735
+ SENSITIVE = []
1736
+ include Aws::Structure
1737
+ end
1738
+
1739
+ # @!attribute [rw] listener
1740
+ # The description of a listener for a custom routing accelerator.
1741
+ # @return [Types::CustomRoutingListener]
1742
+ #
1743
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DescribeCustomRoutingListenerResponse AWS API Documentation
1744
+ #
1745
+ class DescribeCustomRoutingListenerResponse < Struct.new(
1746
+ :listener)
1747
+ SENSITIVE = []
1748
+ include Aws::Structure
1749
+ end
1750
+
864
1751
  # @note When making an API call, you may pass DescribeEndpointGroupRequest
865
1752
  # data as a hash:
866
1753
  #
@@ -895,30 +1782,97 @@ module Aws::GlobalAccelerator
895
1782
  # @note When making an API call, you may pass DescribeListenerRequest
896
1783
  # data as a hash:
897
1784
  #
898
- # {
899
- # listener_arn: "GenericString", # required
900
- # }
1785
+ # {
1786
+ # listener_arn: "GenericString", # required
1787
+ # }
1788
+ #
1789
+ # @!attribute [rw] listener_arn
1790
+ # The Amazon Resource Name (ARN) of the listener to describe.
1791
+ # @return [String]
1792
+ #
1793
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DescribeListenerRequest AWS API Documentation
1794
+ #
1795
+ class DescribeListenerRequest < Struct.new(
1796
+ :listener_arn)
1797
+ SENSITIVE = []
1798
+ include Aws::Structure
1799
+ end
1800
+
1801
+ # @!attribute [rw] listener
1802
+ # The description of a listener.
1803
+ # @return [Types::Listener]
1804
+ #
1805
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DescribeListenerResponse AWS API Documentation
1806
+ #
1807
+ class DescribeListenerResponse < Struct.new(
1808
+ :listener)
1809
+ SENSITIVE = []
1810
+ include Aws::Structure
1811
+ end
1812
+
1813
+ # The port mappings for a specified endpoint IP address (destination).
1814
+ #
1815
+ # @!attribute [rw] accelerator_arn
1816
+ # The Amazon Resource Name (ARN) of the custom routing accelerator
1817
+ # that you have port mappings for.
1818
+ # @return [String]
1819
+ #
1820
+ # @!attribute [rw] accelerator_socket_addresses
1821
+ # The IP address/port combinations (sockets) that map to a given
1822
+ # destination socket address.
1823
+ # @return [Array<Types::SocketAddress>]
1824
+ #
1825
+ # @!attribute [rw] endpoint_group_arn
1826
+ # The Amazon Resource Name (ARN) of the endpoint group.
1827
+ # @return [String]
1828
+ #
1829
+ # @!attribute [rw] endpoint_id
1830
+ # The ID for the virtual private cloud (VPC) subnet.
1831
+ # @return [String]
1832
+ #
1833
+ # @!attribute [rw] endpoint_group_region
1834
+ # The AWS Region for the endpoint group.
1835
+ # @return [String]
901
1836
  #
902
- # @!attribute [rw] listener_arn
903
- # The Amazon Resource Name (ARN) of the listener to describe.
1837
+ # @!attribute [rw] destination_socket_address
1838
+ # The endpoint IP address/port combination for traffic received on the
1839
+ # accelerator socket address.
1840
+ # @return [Types::SocketAddress]
1841
+ #
1842
+ # @!attribute [rw] ip_address_type
1843
+ # The IP address type, which must be IPv4.
904
1844
  # @return [String]
905
1845
  #
906
- # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DescribeListenerRequest AWS API Documentation
1846
+ # @!attribute [rw] destination_traffic_state
1847
+ # Indicates whether or not a port mapping destination can receive
1848
+ # traffic. The value is either ALLOW, if traffic is allowed to the
1849
+ # destination, or DENY, if traffic is not allowed to the destination.
1850
+ # @return [String]
907
1851
  #
908
- class DescribeListenerRequest < Struct.new(
909
- :listener_arn)
1852
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DestinationPortMapping AWS API Documentation
1853
+ #
1854
+ class DestinationPortMapping < Struct.new(
1855
+ :accelerator_arn,
1856
+ :accelerator_socket_addresses,
1857
+ :endpoint_group_arn,
1858
+ :endpoint_id,
1859
+ :endpoint_group_region,
1860
+ :destination_socket_address,
1861
+ :ip_address_type,
1862
+ :destination_traffic_state)
910
1863
  SENSITIVE = []
911
1864
  include Aws::Structure
912
1865
  end
913
1866
 
914
- # @!attribute [rw] listener
915
- # The description of a listener.
916
- # @return [Types::Listener]
1867
+ # The endpoint that you specified doesn't exist.
917
1868
  #
918
- # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DescribeListenerResponse AWS API Documentation
1869
+ # @!attribute [rw] message
1870
+ # @return [String]
919
1871
  #
920
- class DescribeListenerResponse < Struct.new(
921
- :listener)
1872
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/EndpointAlreadyExistsException AWS API Documentation
1873
+ #
1874
+ class EndpointAlreadyExistsException < Struct.new(
1875
+ :message)
922
1876
  SENSITIVE = []
923
1877
  include Aws::Structure
924
1878
  end
@@ -999,8 +1953,8 @@ module Aws::GlobalAccelerator
999
1953
  # An ID for the endpoint. If the endpoint is a Network Load Balancer
1000
1954
  # or Application Load Balancer, this is the Amazon Resource Name (ARN)
1001
1955
  # of the resource. If the endpoint is an Elastic IP address, this is
1002
- # the Elastic IP address allocation ID. For EC2 instances, this is the
1003
- # EC2 instance ID.
1956
+ # the Elastic IP address allocation ID. For Amazon EC2 instances, this
1957
+ # is the EC2 instance ID.
1004
1958
  #
1005
1959
  # An Application Load Balancer can be either internal or
1006
1960
  # internet-facing.
@@ -1027,27 +1981,7 @@ module Aws::GlobalAccelerator
1027
1981
  # @return [String]
1028
1982
  #
1029
1983
  # @!attribute [rw] health_reason
1030
- # The reason code associated with why the endpoint is not healthy. If
1031
- # the endpoint state is healthy, a reason code is not provided.
1032
- #
1033
- # If the endpoint state is **unhealthy**, the reason code can be one
1034
- # of the following values:
1035
- #
1036
- # * **Timeout**\: The health check requests to the endpoint are timing
1037
- # out before returning a status.
1038
- #
1039
- # * **Failed**\: The health check failed, for example because the
1040
- # endpoint response was invalid (malformed).
1041
- #
1042
- # If the endpoint state is **initial**, the reason code can be one of
1043
- # the following values:
1044
- #
1045
- # * **ProvisioningInProgress**\: The endpoint is in the process of
1046
- # being provisioned.
1047
- #
1048
- # * **InitialHealthChecking**\: Global Accelerator is still setting up
1049
- # the minimum number of health checks for the endpoint that are
1050
- # required to determine its health status.
1984
+ # Returns a null result.
1051
1985
  # @return [String]
1052
1986
  #
1053
1987
  # @!attribute [rw] client_ip_preservation_enabled
@@ -1191,6 +2125,19 @@ module Aws::GlobalAccelerator
1191
2125
  include Aws::Structure
1192
2126
  end
1193
2127
 
2128
+ # The endpoint that you specified doesn't exist.
2129
+ #
2130
+ # @!attribute [rw] message
2131
+ # @return [String]
2132
+ #
2133
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/EndpointNotFoundException AWS API Documentation
2134
+ #
2135
+ class EndpointNotFoundException < Struct.new(
2136
+ :message)
2137
+ SENSITIVE = []
2138
+ include Aws::Structure
2139
+ end
2140
+
1194
2141
  # The CIDR that you specified is not valid for this action. For example,
1195
2142
  # the state of the CIDR might be incorrect for this action.
1196
2143
  #
@@ -1278,31 +2225,281 @@ module Aws::GlobalAccelerator
1278
2225
  include Aws::Structure
1279
2226
  end
1280
2227
 
1281
- # Processing your request would cause you to exceed an AWS Global
1282
- # Accelerator limit.
2228
+ # Processing your request would cause you to exceed an AWS Global
2229
+ # Accelerator limit.
2230
+ #
2231
+ # @!attribute [rw] message
2232
+ # @return [String]
2233
+ #
2234
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/LimitExceededException AWS API Documentation
2235
+ #
2236
+ class LimitExceededException < Struct.new(
2237
+ :message)
2238
+ SENSITIVE = []
2239
+ include Aws::Structure
2240
+ end
2241
+
2242
+ # @note When making an API call, you may pass ListAcceleratorsRequest
2243
+ # data as a hash:
2244
+ #
2245
+ # {
2246
+ # max_results: 1,
2247
+ # next_token: "GenericString",
2248
+ # }
2249
+ #
2250
+ # @!attribute [rw] max_results
2251
+ # The number of Global Accelerator objects that you want to return
2252
+ # with this call. The default value is 10.
2253
+ # @return [Integer]
2254
+ #
2255
+ # @!attribute [rw] next_token
2256
+ # The token for the next set of results. You receive this token from a
2257
+ # previous call.
2258
+ # @return [String]
2259
+ #
2260
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListAcceleratorsRequest AWS API Documentation
2261
+ #
2262
+ class ListAcceleratorsRequest < Struct.new(
2263
+ :max_results,
2264
+ :next_token)
2265
+ SENSITIVE = []
2266
+ include Aws::Structure
2267
+ end
2268
+
2269
+ # @!attribute [rw] accelerators
2270
+ # The list of accelerators for a customer account.
2271
+ # @return [Array<Types::Accelerator>]
2272
+ #
2273
+ # @!attribute [rw] next_token
2274
+ # The token for the next set of results. You receive this token from a
2275
+ # previous call.
2276
+ # @return [String]
2277
+ #
2278
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListAcceleratorsResponse AWS API Documentation
2279
+ #
2280
+ class ListAcceleratorsResponse < Struct.new(
2281
+ :accelerators,
2282
+ :next_token)
2283
+ SENSITIVE = []
2284
+ include Aws::Structure
2285
+ end
2286
+
2287
+ # @note When making an API call, you may pass ListByoipCidrsRequest
2288
+ # data as a hash:
2289
+ #
2290
+ # {
2291
+ # max_results: 1,
2292
+ # next_token: "GenericString",
2293
+ # }
2294
+ #
2295
+ # @!attribute [rw] max_results
2296
+ # The maximum number of results to return with a single call. To
2297
+ # retrieve the remaining results, make another call with the returned
2298
+ # `nextToken` value.
2299
+ # @return [Integer]
2300
+ #
2301
+ # @!attribute [rw] next_token
2302
+ # The token for the next page of results.
2303
+ # @return [String]
2304
+ #
2305
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListByoipCidrsRequest AWS API Documentation
2306
+ #
2307
+ class ListByoipCidrsRequest < Struct.new(
2308
+ :max_results,
2309
+ :next_token)
2310
+ SENSITIVE = []
2311
+ include Aws::Structure
2312
+ end
2313
+
2314
+ # @!attribute [rw] byoip_cidrs
2315
+ # Information about your address ranges.
2316
+ # @return [Array<Types::ByoipCidr>]
2317
+ #
2318
+ # @!attribute [rw] next_token
2319
+ # The token for the next page of results.
2320
+ # @return [String]
2321
+ #
2322
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListByoipCidrsResponse AWS API Documentation
2323
+ #
2324
+ class ListByoipCidrsResponse < Struct.new(
2325
+ :byoip_cidrs,
2326
+ :next_token)
2327
+ SENSITIVE = []
2328
+ include Aws::Structure
2329
+ end
2330
+
2331
+ # @note When making an API call, you may pass ListCustomRoutingAcceleratorsRequest
2332
+ # data as a hash:
2333
+ #
2334
+ # {
2335
+ # max_results: 1,
2336
+ # next_token: "GenericString",
2337
+ # }
2338
+ #
2339
+ # @!attribute [rw] max_results
2340
+ # The number of custom routing Global Accelerator objects that you
2341
+ # want to return with this call. The default value is 10.
2342
+ # @return [Integer]
2343
+ #
2344
+ # @!attribute [rw] next_token
2345
+ # The token for the next set of results. You receive this token from a
2346
+ # previous call.
2347
+ # @return [String]
2348
+ #
2349
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListCustomRoutingAcceleratorsRequest AWS API Documentation
2350
+ #
2351
+ class ListCustomRoutingAcceleratorsRequest < Struct.new(
2352
+ :max_results,
2353
+ :next_token)
2354
+ SENSITIVE = []
2355
+ include Aws::Structure
2356
+ end
2357
+
2358
+ # @!attribute [rw] accelerators
2359
+ # The list of custom routing accelerators for a customer account.
2360
+ # @return [Array<Types::CustomRoutingAccelerator>]
2361
+ #
2362
+ # @!attribute [rw] next_token
2363
+ # The token for the next set of results. You receive this token from a
2364
+ # previous call.
2365
+ # @return [String]
2366
+ #
2367
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListCustomRoutingAcceleratorsResponse AWS API Documentation
2368
+ #
2369
+ class ListCustomRoutingAcceleratorsResponse < Struct.new(
2370
+ :accelerators,
2371
+ :next_token)
2372
+ SENSITIVE = []
2373
+ include Aws::Structure
2374
+ end
2375
+
2376
+ # @note When making an API call, you may pass ListCustomRoutingEndpointGroupsRequest
2377
+ # data as a hash:
2378
+ #
2379
+ # {
2380
+ # listener_arn: "GenericString", # required
2381
+ # max_results: 1,
2382
+ # next_token: "GenericString",
2383
+ # }
2384
+ #
2385
+ # @!attribute [rw] listener_arn
2386
+ # The Amazon Resource Name (ARN) of the listener to list endpoint
2387
+ # groups for.
2388
+ # @return [String]
2389
+ #
2390
+ # @!attribute [rw] max_results
2391
+ # The number of endpoint group objects that you want to return with
2392
+ # this call. The default value is 10.
2393
+ # @return [Integer]
2394
+ #
2395
+ # @!attribute [rw] next_token
2396
+ # The token for the next set of results. You receive this token from a
2397
+ # previous call.
2398
+ # @return [String]
2399
+ #
2400
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListCustomRoutingEndpointGroupsRequest AWS API Documentation
2401
+ #
2402
+ class ListCustomRoutingEndpointGroupsRequest < Struct.new(
2403
+ :listener_arn,
2404
+ :max_results,
2405
+ :next_token)
2406
+ SENSITIVE = []
2407
+ include Aws::Structure
2408
+ end
2409
+
2410
+ # @!attribute [rw] endpoint_groups
2411
+ # The list of the endpoint groups associated with a listener for a
2412
+ # custom routing accelerator.
2413
+ # @return [Array<Types::CustomRoutingEndpointGroup>]
2414
+ #
2415
+ # @!attribute [rw] next_token
2416
+ # The token for the next set of results. You receive this token from a
2417
+ # previous call.
2418
+ # @return [String]
2419
+ #
2420
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListCustomRoutingEndpointGroupsResponse AWS API Documentation
2421
+ #
2422
+ class ListCustomRoutingEndpointGroupsResponse < Struct.new(
2423
+ :endpoint_groups,
2424
+ :next_token)
2425
+ SENSITIVE = []
2426
+ include Aws::Structure
2427
+ end
2428
+
2429
+ # @note When making an API call, you may pass ListCustomRoutingListenersRequest
2430
+ # data as a hash:
2431
+ #
2432
+ # {
2433
+ # accelerator_arn: "GenericString", # required
2434
+ # max_results: 1,
2435
+ # next_token: "GenericString",
2436
+ # }
2437
+ #
2438
+ # @!attribute [rw] accelerator_arn
2439
+ # The Amazon Resource Name (ARN) of the accelerator to list listeners
2440
+ # for.
2441
+ # @return [String]
2442
+ #
2443
+ # @!attribute [rw] max_results
2444
+ # The number of listener objects that you want to return with this
2445
+ # call. The default value is 10.
2446
+ # @return [Integer]
2447
+ #
2448
+ # @!attribute [rw] next_token
2449
+ # The token for the next set of results. You receive this token from a
2450
+ # previous call.
2451
+ # @return [String]
2452
+ #
2453
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListCustomRoutingListenersRequest AWS API Documentation
2454
+ #
2455
+ class ListCustomRoutingListenersRequest < Struct.new(
2456
+ :accelerator_arn,
2457
+ :max_results,
2458
+ :next_token)
2459
+ SENSITIVE = []
2460
+ include Aws::Structure
2461
+ end
2462
+
2463
+ # @!attribute [rw] listeners
2464
+ # The list of listeners for a custom routing accelerator.
2465
+ # @return [Array<Types::CustomRoutingListener>]
1283
2466
  #
1284
- # @!attribute [rw] message
2467
+ # @!attribute [rw] next_token
2468
+ # The token for the next set of results. You receive this token from a
2469
+ # previous call.
1285
2470
  # @return [String]
1286
2471
  #
1287
- # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/LimitExceededException AWS API Documentation
2472
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListCustomRoutingListenersResponse AWS API Documentation
1288
2473
  #
1289
- class LimitExceededException < Struct.new(
1290
- :message)
2474
+ class ListCustomRoutingListenersResponse < Struct.new(
2475
+ :listeners,
2476
+ :next_token)
1291
2477
  SENSITIVE = []
1292
2478
  include Aws::Structure
1293
2479
  end
1294
2480
 
1295
- # @note When making an API call, you may pass ListAcceleratorsRequest
2481
+ # @note When making an API call, you may pass ListCustomRoutingPortMappingsByDestinationRequest
1296
2482
  # data as a hash:
1297
2483
  #
1298
2484
  # {
2485
+ # endpoint_id: "GenericString", # required
2486
+ # destination_address: "GenericString", # required
1299
2487
  # max_results: 1,
1300
2488
  # next_token: "GenericString",
1301
2489
  # }
1302
2490
  #
2491
+ # @!attribute [rw] endpoint_id
2492
+ # The ID for the virtual private cloud (VPC) subnet.
2493
+ # @return [String]
2494
+ #
2495
+ # @!attribute [rw] destination_address
2496
+ # The endpoint IP address in a virtual private cloud (VPC) subnet for
2497
+ # which you want to receive back port mappings.
2498
+ # @return [String]
2499
+ #
1303
2500
  # @!attribute [rw] max_results
1304
- # The number of Global Accelerator objects that you want to return
1305
- # with this call. The default value is 10.
2501
+ # The number of destination port mappings that you want to return with
2502
+ # this call. The default value is 10.
1306
2503
  # @return [Integer]
1307
2504
  #
1308
2505
  # @!attribute [rw] next_token
@@ -1310,72 +2507,90 @@ module Aws::GlobalAccelerator
1310
2507
  # previous call.
1311
2508
  # @return [String]
1312
2509
  #
1313
- # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListAcceleratorsRequest AWS API Documentation
2510
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListCustomRoutingPortMappingsByDestinationRequest AWS API Documentation
1314
2511
  #
1315
- class ListAcceleratorsRequest < Struct.new(
2512
+ class ListCustomRoutingPortMappingsByDestinationRequest < Struct.new(
2513
+ :endpoint_id,
2514
+ :destination_address,
1316
2515
  :max_results,
1317
2516
  :next_token)
1318
2517
  SENSITIVE = []
1319
2518
  include Aws::Structure
1320
2519
  end
1321
2520
 
1322
- # @!attribute [rw] accelerators
1323
- # The list of accelerators for a customer account.
1324
- # @return [Array<Types::Accelerator>]
2521
+ # @!attribute [rw] destination_port_mappings
2522
+ # The port mappings for the endpoint IP address that you specified in
2523
+ # the request.
2524
+ # @return [Array<Types::DestinationPortMapping>]
1325
2525
  #
1326
2526
  # @!attribute [rw] next_token
1327
2527
  # The token for the next set of results. You receive this token from a
1328
2528
  # previous call.
1329
2529
  # @return [String]
1330
2530
  #
1331
- # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListAcceleratorsResponse AWS API Documentation
2531
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListCustomRoutingPortMappingsByDestinationResponse AWS API Documentation
1332
2532
  #
1333
- class ListAcceleratorsResponse < Struct.new(
1334
- :accelerators,
2533
+ class ListCustomRoutingPortMappingsByDestinationResponse < Struct.new(
2534
+ :destination_port_mappings,
1335
2535
  :next_token)
1336
2536
  SENSITIVE = []
1337
2537
  include Aws::Structure
1338
2538
  end
1339
2539
 
1340
- # @note When making an API call, you may pass ListByoipCidrsRequest
2540
+ # @note When making an API call, you may pass ListCustomRoutingPortMappingsRequest
1341
2541
  # data as a hash:
1342
2542
  #
1343
2543
  # {
2544
+ # accelerator_arn: "GenericString", # required
2545
+ # endpoint_group_arn: "GenericString",
1344
2546
  # max_results: 1,
1345
2547
  # next_token: "GenericString",
1346
2548
  # }
1347
2549
  #
2550
+ # @!attribute [rw] accelerator_arn
2551
+ # The Amazon Resource Name (ARN) of the accelerator to list the custom
2552
+ # routing port mappings for.
2553
+ # @return [String]
2554
+ #
2555
+ # @!attribute [rw] endpoint_group_arn
2556
+ # The Amazon Resource Name (ARN) of the endpoint group to list the
2557
+ # custom routing port mappings for.
2558
+ # @return [String]
2559
+ #
1348
2560
  # @!attribute [rw] max_results
1349
- # The maximum number of results to return with a single call. To
1350
- # retrieve the remaining results, make another call with the returned
1351
- # `nextToken` value.
2561
+ # The number of destination port mappings that you want to return with
2562
+ # this call. The default value is 10.
1352
2563
  # @return [Integer]
1353
2564
  #
1354
2565
  # @!attribute [rw] next_token
1355
- # The token for the next page of results.
2566
+ # The token for the next set of results. You receive this token from a
2567
+ # previous call.
1356
2568
  # @return [String]
1357
2569
  #
1358
- # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListByoipCidrsRequest AWS API Documentation
2570
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListCustomRoutingPortMappingsRequest AWS API Documentation
1359
2571
  #
1360
- class ListByoipCidrsRequest < Struct.new(
2572
+ class ListCustomRoutingPortMappingsRequest < Struct.new(
2573
+ :accelerator_arn,
2574
+ :endpoint_group_arn,
1361
2575
  :max_results,
1362
2576
  :next_token)
1363
2577
  SENSITIVE = []
1364
2578
  include Aws::Structure
1365
2579
  end
1366
2580
 
1367
- # @!attribute [rw] byoip_cidrs
1368
- # Information about your address ranges.
1369
- # @return [Array<Types::ByoipCidr>]
2581
+ # @!attribute [rw] port_mappings
2582
+ # The port mappings for a custom routing accelerator.
2583
+ # @return [Array<Types::PortMapping>]
1370
2584
  #
1371
2585
  # @!attribute [rw] next_token
1372
- # The token for the next page of results.
2586
+ # The token for the next set of results. You receive this token from a
2587
+ # previous call.
1373
2588
  # @return [String]
1374
2589
  #
1375
- # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListByoipCidrsResponse AWS API Documentation
2590
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListCustomRoutingPortMappingsResponse AWS API Documentation
1376
2591
  #
1377
- class ListByoipCidrsResponse < Struct.new(
1378
- :byoip_cidrs,
2592
+ class ListCustomRoutingPortMappingsResponse < Struct.new(
2593
+ :port_mappings,
1379
2594
  :next_token)
1380
2595
  SENSITIVE = []
1381
2596
  include Aws::Structure
@@ -1581,6 +2796,53 @@ module Aws::GlobalAccelerator
1581
2796
  include Aws::Structure
1582
2797
  end
1583
2798
 
2799
+ # Returns the ports and associated IP addresses and ports of Amazon EC2
2800
+ # instances in your virtual private cloud (VPC) subnets. Custom routing
2801
+ # is a port mapping protocol in AWS Global Accelerator that statically
2802
+ # associates port ranges with VPC subnets, which allows Global
2803
+ # Accelerator to route to specific instances and ports within one or
2804
+ # more subnets.
2805
+ #
2806
+ # @!attribute [rw] accelerator_port
2807
+ # The accelerator port.
2808
+ # @return [Integer]
2809
+ #
2810
+ # @!attribute [rw] endpoint_group_arn
2811
+ # The Amazon Resource Name (ARN) of the endpoint group.
2812
+ # @return [String]
2813
+ #
2814
+ # @!attribute [rw] endpoint_id
2815
+ # The IP address of the VPC subnet (the subnet ID).
2816
+ # @return [String]
2817
+ #
2818
+ # @!attribute [rw] destination_socket_address
2819
+ # The EC2 instance IP address and port number in the virtual private
2820
+ # cloud (VPC) subnet.
2821
+ # @return [Types::SocketAddress]
2822
+ #
2823
+ # @!attribute [rw] protocols
2824
+ # The protocols supported by the endpoint group.
2825
+ # @return [Array<String>]
2826
+ #
2827
+ # @!attribute [rw] destination_traffic_state
2828
+ # Indicates whether or not a port mapping destination can receive
2829
+ # traffic. The value is either ALLOW, if traffic is allowed to the
2830
+ # destination, or DENY, if traffic is not allowed to the destination.
2831
+ # @return [String]
2832
+ #
2833
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/PortMapping AWS API Documentation
2834
+ #
2835
+ class PortMapping < Struct.new(
2836
+ :accelerator_port,
2837
+ :endpoint_group_arn,
2838
+ :endpoint_id,
2839
+ :destination_socket_address,
2840
+ :protocols,
2841
+ :destination_traffic_state)
2842
+ SENSITIVE = []
2843
+ include Aws::Structure
2844
+ end
2845
+
1584
2846
  # Override specific listener ports used to route traffic to endpoints
1585
2847
  # that are part of an endpoint group. For example, you can create a port
1586
2848
  # override in which the listener receives user traffic on ports 80 and
@@ -1694,6 +2956,52 @@ module Aws::GlobalAccelerator
1694
2956
  include Aws::Structure
1695
2957
  end
1696
2958
 
2959
+ # @note When making an API call, you may pass RemoveCustomRoutingEndpointsRequest
2960
+ # data as a hash:
2961
+ #
2962
+ # {
2963
+ # endpoint_ids: ["GenericString"], # required
2964
+ # endpoint_group_arn: "GenericString", # required
2965
+ # }
2966
+ #
2967
+ # @!attribute [rw] endpoint_ids
2968
+ # The IDs for the endpoints. For custom routing accelerators, endpoint
2969
+ # IDs are the virtual private cloud (VPC) subnet IDs.
2970
+ # @return [Array<String>]
2971
+ #
2972
+ # @!attribute [rw] endpoint_group_arn
2973
+ # The Amazon Resource Name (ARN) of the endpoint group to remove
2974
+ # endpoints from.
2975
+ # @return [String]
2976
+ #
2977
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/RemoveCustomRoutingEndpointsRequest AWS API Documentation
2978
+ #
2979
+ class RemoveCustomRoutingEndpointsRequest < Struct.new(
2980
+ :endpoint_ids,
2981
+ :endpoint_group_arn)
2982
+ SENSITIVE = []
2983
+ include Aws::Structure
2984
+ end
2985
+
2986
+ # An IP address/port combination.
2987
+ #
2988
+ # @!attribute [rw] ip_address
2989
+ # The IP address for the socket address.
2990
+ # @return [String]
2991
+ #
2992
+ # @!attribute [rw] port
2993
+ # The port for the socket address.
2994
+ # @return [Integer]
2995
+ #
2996
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/SocketAddress AWS API Documentation
2997
+ #
2998
+ class SocketAddress < Struct.new(
2999
+ :ip_address,
3000
+ :port)
3001
+ SENSITIVE = []
3002
+ include Aws::Structure
3003
+ end
3004
+
1697
3005
  # A complex type that contains a `Tag` key and `Tag` value.
1698
3006
  #
1699
3007
  # @note When making an API call, you may pass Tag
@@ -1879,7 +3187,7 @@ module Aws::GlobalAccelerator
1879
3187
  # @return [String]
1880
3188
  #
1881
3189
  # @!attribute [rw] ip_address_type
1882
- # The value for the address type must be IPv4.
3190
+ # The IP address type, which must be IPv4.
1883
3191
  # @return [String]
1884
3192
  #
1885
3193
  # @!attribute [rw] enabled
@@ -1913,6 +3221,183 @@ module Aws::GlobalAccelerator
1913
3221
  include Aws::Structure
1914
3222
  end
1915
3223
 
3224
+ # @note When making an API call, you may pass UpdateCustomRoutingAcceleratorAttributesRequest
3225
+ # data as a hash:
3226
+ #
3227
+ # {
3228
+ # accelerator_arn: "GenericString", # required
3229
+ # flow_logs_enabled: false,
3230
+ # flow_logs_s3_bucket: "GenericString",
3231
+ # flow_logs_s3_prefix: "GenericString",
3232
+ # }
3233
+ #
3234
+ # @!attribute [rw] accelerator_arn
3235
+ # The Amazon Resource Name (ARN) of the custom routing accelerator to
3236
+ # update attributes for.
3237
+ # @return [String]
3238
+ #
3239
+ # @!attribute [rw] flow_logs_enabled
3240
+ # Update whether flow logs are enabled. The default value is false. If
3241
+ # the value is true, `FlowLogsS3Bucket` and `FlowLogsS3Prefix` must be
3242
+ # specified.
3243
+ #
3244
+ # For more information, see [Flow Logs][1] in the *AWS Global
3245
+ # Accelerator Developer Guide*.
3246
+ #
3247
+ #
3248
+ #
3249
+ # [1]: https://docs.aws.amazon.com/global-accelerator/latest/dg/monitoring-global-accelerator.flow-logs.html
3250
+ # @return [Boolean]
3251
+ #
3252
+ # @!attribute [rw] flow_logs_s3_bucket
3253
+ # The name of the Amazon S3 bucket for the flow logs. Attribute is
3254
+ # required if `FlowLogsEnabled` is `true`. The bucket must exist and
3255
+ # have a bucket policy that grants AWS Global Accelerator permission
3256
+ # to write to the bucket.
3257
+ # @return [String]
3258
+ #
3259
+ # @!attribute [rw] flow_logs_s3_prefix
3260
+ # Update the prefix for the location in the Amazon S3 bucket for the
3261
+ # flow logs. Attribute is required if `FlowLogsEnabled` is `true`.
3262
+ #
3263
+ # If you don’t specify a prefix, the flow logs are stored in the root
3264
+ # of the bucket. If you specify slash (/) for the S3 bucket prefix,
3265
+ # the log file bucket folder structure will include a double slash
3266
+ # (//), like the following:
3267
+ #
3268
+ # DOC-EXAMPLE-BUCKET//AWSLogs/aws\_account\_id
3269
+ # @return [String]
3270
+ #
3271
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/UpdateCustomRoutingAcceleratorAttributesRequest AWS API Documentation
3272
+ #
3273
+ class UpdateCustomRoutingAcceleratorAttributesRequest < Struct.new(
3274
+ :accelerator_arn,
3275
+ :flow_logs_enabled,
3276
+ :flow_logs_s3_bucket,
3277
+ :flow_logs_s3_prefix)
3278
+ SENSITIVE = []
3279
+ include Aws::Structure
3280
+ end
3281
+
3282
+ # @!attribute [rw] accelerator_attributes
3283
+ # Updated custom routing accelerator.
3284
+ # @return [Types::CustomRoutingAcceleratorAttributes]
3285
+ #
3286
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/UpdateCustomRoutingAcceleratorAttributesResponse AWS API Documentation
3287
+ #
3288
+ class UpdateCustomRoutingAcceleratorAttributesResponse < Struct.new(
3289
+ :accelerator_attributes)
3290
+ SENSITIVE = []
3291
+ include Aws::Structure
3292
+ end
3293
+
3294
+ # @note When making an API call, you may pass UpdateCustomRoutingAcceleratorRequest
3295
+ # data as a hash:
3296
+ #
3297
+ # {
3298
+ # accelerator_arn: "GenericString", # required
3299
+ # name: "GenericString",
3300
+ # ip_address_type: "IPV4", # accepts IPV4
3301
+ # enabled: false,
3302
+ # }
3303
+ #
3304
+ # @!attribute [rw] accelerator_arn
3305
+ # The Amazon Resource Name (ARN) of the accelerator to update.
3306
+ # @return [String]
3307
+ #
3308
+ # @!attribute [rw] name
3309
+ # The name of the accelerator. The name can have a maximum of 32
3310
+ # characters, must contain only alphanumeric characters or hyphens
3311
+ # (-), and must not begin or end with a hyphen.
3312
+ # @return [String]
3313
+ #
3314
+ # @!attribute [rw] ip_address_type
3315
+ # The value for the address type must be IPv4.
3316
+ # @return [String]
3317
+ #
3318
+ # @!attribute [rw] enabled
3319
+ # Indicates whether an accelerator is enabled. The value is true or
3320
+ # false. The default value is true.
3321
+ #
3322
+ # If the value is set to true, the accelerator cannot be deleted. If
3323
+ # set to false, the accelerator can be deleted.
3324
+ # @return [Boolean]
3325
+ #
3326
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/UpdateCustomRoutingAcceleratorRequest AWS API Documentation
3327
+ #
3328
+ class UpdateCustomRoutingAcceleratorRequest < Struct.new(
3329
+ :accelerator_arn,
3330
+ :name,
3331
+ :ip_address_type,
3332
+ :enabled)
3333
+ SENSITIVE = []
3334
+ include Aws::Structure
3335
+ end
3336
+
3337
+ # @!attribute [rw] accelerator
3338
+ # Information about the updated custom routing accelerator.
3339
+ # @return [Types::CustomRoutingAccelerator]
3340
+ #
3341
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/UpdateCustomRoutingAcceleratorResponse AWS API Documentation
3342
+ #
3343
+ class UpdateCustomRoutingAcceleratorResponse < Struct.new(
3344
+ :accelerator)
3345
+ SENSITIVE = []
3346
+ include Aws::Structure
3347
+ end
3348
+
3349
+ # @note When making an API call, you may pass UpdateCustomRoutingListenerRequest
3350
+ # data as a hash:
3351
+ #
3352
+ # {
3353
+ # listener_arn: "GenericString", # required
3354
+ # port_ranges: [ # required
3355
+ # {
3356
+ # from_port: 1,
3357
+ # to_port: 1,
3358
+ # },
3359
+ # ],
3360
+ # }
3361
+ #
3362
+ # @!attribute [rw] listener_arn
3363
+ # The Amazon Resource Name (ARN) of the listener to update.
3364
+ # @return [String]
3365
+ #
3366
+ # @!attribute [rw] port_ranges
3367
+ # The updated port range to support for connections from clients to
3368
+ # your accelerator. If you remove ports that are currently being used
3369
+ # by a subnet endpoint, the call fails.
3370
+ #
3371
+ # Separately, you set port ranges for endpoints. For more information,
3372
+ # see [About endpoints for custom routing accelerators][1].
3373
+ #
3374
+ #
3375
+ #
3376
+ # [1]: https://docs.aws.amazon.com/global-accelerator/latest/dg/about-custom-routing-endpoints.html
3377
+ # @return [Array<Types::PortRange>]
3378
+ #
3379
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/UpdateCustomRoutingListenerRequest AWS API Documentation
3380
+ #
3381
+ class UpdateCustomRoutingListenerRequest < Struct.new(
3382
+ :listener_arn,
3383
+ :port_ranges)
3384
+ SENSITIVE = []
3385
+ include Aws::Structure
3386
+ end
3387
+
3388
+ # @!attribute [rw] listener
3389
+ # Information for the updated listener for a custom routing
3390
+ # accelerator.
3391
+ # @return [Types::CustomRoutingListener]
3392
+ #
3393
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/UpdateCustomRoutingListenerResponse AWS API Documentation
3394
+ #
3395
+ class UpdateCustomRoutingListenerResponse < Struct.new(
3396
+ :listener)
3397
+ SENSITIVE = []
3398
+ include Aws::Structure
3399
+ end
3400
+
1916
3401
  # @note When making an API call, you may pass UpdateEndpointGroupRequest
1917
3402
  # data as a hash:
1918
3403
  #
@@ -1928,7 +3413,7 @@ module Aws::GlobalAccelerator
1928
3413
  # traffic_dial_percentage: 1.0,
1929
3414
  # health_check_port: 1,
1930
3415
  # health_check_protocol: "TCP", # accepts TCP, HTTP, HTTPS
1931
- # health_check_path: "GenericString",
3416
+ # health_check_path: "HealthCheckPath",
1932
3417
  # health_check_interval_seconds: 1,
1933
3418
  # threshold_count: 1,
1934
3419
  # port_overrides: [