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

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d284ba09e2e346c424fc4891f2e7d6d1902006ad
4
- data.tar.gz: 14b2ff883608a3610741841468488f3cf70803b3
3
+ metadata.gz: 01eb78fa83b94f03f1d6331891276f4e670d0053
4
+ data.tar.gz: de50d9f7d2113ca3720a4668123d6a929b08ab6e
5
5
  SHA512:
6
- metadata.gz: a3cbf3fbab5aa016701e562e9b441d7ef4b7ee9db58446d47732eb50789142f5ab9f99c164710ebc075eb82c1ccced242ba39c35b304634cec16ff49c917303b
7
- data.tar.gz: b7fcb86ac3508f049bf720fddd37b587658619d59a474190adf0d66b2ab00b7eb3b9150fb542e10045a733e1cfc3276bcee58e71c065f7d2be3a18736ba96fb1
6
+ metadata.gz: 16d7956a69a80bed959aca14e2d053ec26db6493ad1ed535a2fb7e06ecf5b362546e72c08a62125ed52221ed9bc67a234aa23b683ded62bb974b229d3c54c1be
7
+ data.tar.gz: 32af7e7793c82117becd2813d494d0da744582ada5bd677b38791ee1fe4f9a5c1b76059cfd3460537c3ca36fd0b2e19c41d2faf47b7fada5439707281f1cf890
@@ -1,6 +1,6 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
@@ -42,6 +42,6 @@ require_relative 'aws-sdk-directconnect/customizations'
42
42
  # @service
43
43
  module Aws::DirectConnect
44
44
 
45
- GEM_VERSION = '1.0.0.rc2'
45
+ GEM_VERSION = '1.0.0.rc3'
46
46
 
47
47
  end
@@ -1,6 +1,6 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
@@ -23,1481 +23,2631 @@ require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
23
23
 
24
24
  Aws::Plugins::GlobalConfiguration.add_identifier(:directconnect)
25
25
 
26
- module Aws
27
- module DirectConnect
28
- class Client < Seahorse::Client::Base
26
+ module Aws::DirectConnect
27
+ class Client < Seahorse::Client::Base
29
28
 
30
- include Aws::ClientStubs
29
+ include Aws::ClientStubs
31
30
 
32
- @identifier = :directconnect
31
+ @identifier = :directconnect
33
32
 
34
- set_api(ClientApi::API)
33
+ set_api(ClientApi::API)
35
34
 
36
- add_plugin(Seahorse::Client::Plugins::ContentLength)
37
- add_plugin(Aws::Plugins::CredentialsConfiguration)
38
- add_plugin(Aws::Plugins::Logging)
39
- add_plugin(Aws::Plugins::ParamConverter)
40
- add_plugin(Aws::Plugins::ParamValidator)
41
- add_plugin(Aws::Plugins::UserAgent)
42
- add_plugin(Aws::Plugins::HelpfulSocketErrors)
43
- add_plugin(Aws::Plugins::RetryErrors)
44
- add_plugin(Aws::Plugins::GlobalConfiguration)
45
- add_plugin(Aws::Plugins::RegionalEndpoint)
46
- add_plugin(Aws::Plugins::ResponsePaging)
47
- add_plugin(Aws::Plugins::StubResponses)
48
- add_plugin(Aws::Plugins::IdempotencyToken)
49
- add_plugin(Aws::Plugins::SignatureV4)
50
- add_plugin(Aws::Plugins::Protocols::JsonRpc)
35
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
36
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
37
+ add_plugin(Aws::Plugins::Logging)
38
+ add_plugin(Aws::Plugins::ParamConverter)
39
+ add_plugin(Aws::Plugins::ParamValidator)
40
+ add_plugin(Aws::Plugins::UserAgent)
41
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
42
+ add_plugin(Aws::Plugins::RetryErrors)
43
+ add_plugin(Aws::Plugins::GlobalConfiguration)
44
+ add_plugin(Aws::Plugins::RegionalEndpoint)
45
+ add_plugin(Aws::Plugins::ResponsePaging)
46
+ add_plugin(Aws::Plugins::StubResponses)
47
+ add_plugin(Aws::Plugins::IdempotencyToken)
48
+ add_plugin(Aws::Plugins::SignatureV4)
49
+ add_plugin(Aws::Plugins::Protocols::JsonRpc)
51
50
 
52
- # @option options [required, Aws::CredentialProvider] :credentials
53
- # Your AWS credentials. This can be an instance of any one of the
54
- # following classes:
55
- #
56
- # * `Aws::Credentials` - Used for configuring static, non-refreshing
57
- # credentials.
58
- #
59
- # * `Aws::InstanceProfileCredentials` - Used for loading credentials
60
- # from an EC2 IMDS on an EC2 instance.
61
- #
62
- # * `Aws::SharedCredentials` - Used for loading credentials from a
63
- # shared file, such as `~/.aws/config`.
64
- #
65
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
66
- #
67
- # When `:credentials` are not configured directly, the following
68
- # locations will be searched for credentials:
69
- #
70
- # * `Aws.config[:credentials]`
71
- # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
72
- # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
73
- # * `~/.aws/credentials`
74
- # * `~/.aws/config`
75
- # * EC2 IMDS instance profile - When used by default, the timeouts are
76
- # very aggressive. Construct and pass an instance of
77
- # `Aws::InstanceProfileCredentails` to enable retries and extended
78
- # timeouts.
79
- # @option options [required, String] :region
80
- # The AWS region to connect to. The configured `:region` is
81
- # used to determine the service `:endpoint`. When not passed,
82
- # a default `:region` is search for in the following locations:
83
- #
84
- # * `Aws.config[:region]`
85
- # * `ENV['AWS_REGION']`
86
- # * `ENV['AMAZON_REGION']`
87
- # * `ENV['AWS_DEFAULT_REGION']`
88
- # * `~/.aws/credentials`
89
- # * `~/.aws/config`
90
- # @option options [String] :access_key_id
91
- # @option options [Boolean] :convert_params (true)
92
- # When `true`, an attempt is made to coerce request parameters into
93
- # the required types.
94
- # @option options [String] :endpoint
95
- # The client endpoint is normally constructed from the `:region`
96
- # option. You should only configure an `:endpoint` when connecting
97
- # to test endpoints. This should be avalid HTTP(S) URI.
98
- # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
99
- # The log formatter.
100
- # @option options [Symbol] :log_level (:info)
101
- # The log level to send messages to the `:logger` at.
102
- # @option options [Logger] :logger
103
- # The Logger instance to send log messages to. If this option
104
- # is not set, logging will be disabled.
105
- # @option options [String] :profile ("default")
106
- # Used when loading credentials from the shared credentials file
107
- # at HOME/.aws/credentials. When not specified, 'default' is used.
108
- # @option options [Integer] :retry_limit (3)
109
- # The maximum number of times to retry failed requests. Only
110
- # ~ 500 level server errors and certain ~ 400 level client errors
111
- # are retried. Generally, these are throttling errors, data
112
- # checksum errors, networking errors, timeout errors and auth
113
- # errors from expired credentials.
114
- # @option options [String] :secret_access_key
115
- # @option options [String] :session_token
116
- # @option options [Boolean] :simple_json (false)
117
- # Disables request parameter conversion, validation, and formatting.
118
- # Also disable response data type conversions. This option is useful
119
- # when you want to ensure the highest level of performance by
120
- # avoiding overhead of walking request parameters and response data
121
- # structures.
122
- #
123
- # When `:simple_json` is enabled, the request parameters hash must
124
- # be formatted exactly as the DynamoDB API expects.
125
- # @option options [Boolean] :stub_responses (false)
126
- # Causes the client to return stubbed responses. By default
127
- # fake responses are generated and returned. You can specify
128
- # the response data to return or errors to raise by calling
129
- # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
130
- #
131
- # ** Please note ** When response stubbing is enabled, no HTTP
132
- # requests are made, and retries are disabled.
133
- # @option options [Boolean] :validate_params (true)
134
- # When `true`, request parameters are validated before
135
- # sending the request.
136
- def initialize(*args)
137
- super
138
- end
51
+ # @option options [required, Aws::CredentialProvider] :credentials
52
+ # Your AWS credentials. This can be an instance of any one of the
53
+ # following classes:
54
+ #
55
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
56
+ # credentials.
57
+ #
58
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
59
+ # from an EC2 IMDS on an EC2 instance.
60
+ #
61
+ # * `Aws::SharedCredentials` - Used for loading credentials from a
62
+ # shared file, such as `~/.aws/config`.
63
+ #
64
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
65
+ #
66
+ # When `:credentials` are not configured directly, the following
67
+ # locations will be searched for credentials:
68
+ #
69
+ # * `Aws.config[:credentials]`
70
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
71
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
72
+ # * `~/.aws/credentials`
73
+ # * `~/.aws/config`
74
+ # * EC2 IMDS instance profile - When used by default, the timeouts are
75
+ # very aggressive. Construct and pass an instance of
76
+ # `Aws::InstanceProfileCredentails` to enable retries and extended
77
+ # timeouts.
78
+ #
79
+ # @option options [required, String] :region
80
+ # The AWS region to connect to. The configured `:region` is
81
+ # used to determine the service `:endpoint`. When not passed,
82
+ # a default `:region` is search for in the following locations:
83
+ #
84
+ # * `Aws.config[:region]`
85
+ # * `ENV['AWS_REGION']`
86
+ # * `ENV['AMAZON_REGION']`
87
+ # * `ENV['AWS_DEFAULT_REGION']`
88
+ # * `~/.aws/credentials`
89
+ # * `~/.aws/config`
90
+ #
91
+ # @option options [String] :access_key_id
92
+ #
93
+ # @option options [Boolean] :convert_params (true)
94
+ # When `true`, an attempt is made to coerce request parameters into
95
+ # the required types.
96
+ #
97
+ # @option options [String] :endpoint
98
+ # The client endpoint is normally constructed from the `:region`
99
+ # option. You should only configure an `:endpoint` when connecting
100
+ # to test endpoints. This should be avalid HTTP(S) URI.
101
+ #
102
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
103
+ # The log formatter.
104
+ #
105
+ # @option options [Symbol] :log_level (:info)
106
+ # The log level to send messages to the `:logger` at.
107
+ #
108
+ # @option options [Logger] :logger
109
+ # The Logger instance to send log messages to. If this option
110
+ # is not set, logging will be disabled.
111
+ #
112
+ # @option options [String] :profile ("default")
113
+ # Used when loading credentials from the shared credentials file
114
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
115
+ #
116
+ # @option options [Integer] :retry_limit (3)
117
+ # The maximum number of times to retry failed requests. Only
118
+ # ~ 500 level server errors and certain ~ 400 level client errors
119
+ # are retried. Generally, these are throttling errors, data
120
+ # checksum errors, networking errors, timeout errors and auth
121
+ # errors from expired credentials.
122
+ #
123
+ # @option options [String] :secret_access_key
124
+ #
125
+ # @option options [String] :session_token
126
+ #
127
+ # @option options [Boolean] :simple_json (false)
128
+ # Disables request parameter conversion, validation, and formatting.
129
+ # Also disable response data type conversions. This option is useful
130
+ # when you want to ensure the highest level of performance by
131
+ # avoiding overhead of walking request parameters and response data
132
+ # structures.
133
+ #
134
+ # When `:simple_json` is enabled, the request parameters hash must
135
+ # be formatted exactly as the DynamoDB API expects.
136
+ #
137
+ # @option options [Boolean] :stub_responses (false)
138
+ # Causes the client to return stubbed responses. By default
139
+ # fake responses are generated and returned. You can specify
140
+ # the response data to return or errors to raise by calling
141
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
142
+ #
143
+ # ** Please note ** When response stubbing is enabled, no HTTP
144
+ # requests are made, and retries are disabled.
145
+ #
146
+ # @option options [Boolean] :validate_params (true)
147
+ # When `true`, request parameters are validated before
148
+ # sending the request.
149
+ #
150
+ def initialize(*args)
151
+ super
152
+ end
139
153
 
140
- # @!group API Operations
154
+ # @!group API Operations
141
155
 
142
- # Creates a hosted connection on an interconnect.
143
- #
144
- # Allocates a VLAN number and a specified amount of bandwidth for use by
145
- # a hosted connection on the given interconnect.
146
- #
147
- # <note markdown="1"> This is intended for use by AWS Direct Connect partners only.
148
- #
149
- # </note>
150
- # @option params [required, String] :bandwidth
151
- # Bandwidth of the connection.
152
- #
153
- # Example: "*500Mbps*"
154
- #
155
- # Default: None
156
- #
157
- # Values: 50M, 100M, 200M, 300M, 400M, or 500M
158
- # @option params [required, String] :connection_name
159
- # Name of the provisioned connection.
160
- #
161
- # Example: "*500M Connection to AWS*"
162
- #
163
- # Default: None
164
- # @option params [required, String] :owner_account
165
- # Numeric account Id of the customer for whom the connection will be
166
- # provisioned.
167
- #
168
- # Example: 123443215678
169
- #
170
- # Default: None
171
- # @option params [required, String] :interconnect_id
172
- # ID of the interconnect on which the connection will be provisioned.
173
- #
174
- # Example: dxcon-456abc78
175
- #
176
- # Default: None
177
- # @option params [required, Integer] :vlan
178
- # The dedicated VLAN provisioned to the connection.
179
- #
180
- # Example: 101
181
- #
182
- # Default: None
183
- # @return [Types::Connection] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
184
- #
185
- # * {Types::Connection#owner_account #ownerAccount} => String
186
- # * {Types::Connection#connection_id #connectionId} => String
187
- # * {Types::Connection#connection_name #connectionName} => String
188
- # * {Types::Connection#connection_state #connectionState} => String
189
- # * {Types::Connection#region #region} => String
190
- # * {Types::Connection#location #location} => String
191
- # * {Types::Connection#bandwidth #bandwidth} => String
192
- # * {Types::Connection#vlan #vlan} => Integer
193
- # * {Types::Connection#partner_name #partnerName} => String
194
- # * {Types::Connection#loa_issue_time #loaIssueTime} => Time
195
- #
196
- # @example Request syntax with placeholder values
197
- # resp = client.allocate_connection_on_interconnect({
198
- # bandwidth: "Bandwidth", # required
199
- # connection_name: "ConnectionName", # required
200
- # owner_account: "OwnerAccount", # required
201
- # interconnect_id: "InterconnectId", # required
202
- # vlan: 1, # required
203
- # })
204
- #
205
- # @example Response structure
206
- # resp.owner_account #=> String
207
- # resp.connection_id #=> String
208
- # resp.connection_name #=> String
209
- # resp.connection_state #=> String, one of "ordering", "requested", "pending", "available", "down", "deleting", "deleted", "rejected"
210
- # resp.region #=> String
211
- # resp.location #=> String
212
- # resp.bandwidth #=> String
213
- # resp.vlan #=> Integer
214
- # resp.partner_name #=> String
215
- # resp.loa_issue_time #=> Time
216
- # @overload allocate_connection_on_interconnect(params = {})
217
- # @param [Hash] params ({})
218
- def allocate_connection_on_interconnect(params = {}, options = {})
219
- req = build_request(:allocate_connection_on_interconnect, params)
220
- req.send_request(options)
221
- end
156
+ # Deprecated in favor of AllocateHostedConnection.
157
+ #
158
+ # Creates a hosted connection on an interconnect.
159
+ #
160
+ # Allocates a VLAN number and a specified amount of bandwidth for use by
161
+ # a hosted connection on the given interconnect.
162
+ #
163
+ # <note markdown="1"> This is intended for use by AWS Direct Connect partners only.
164
+ #
165
+ # </note>
166
+ #
167
+ # @option params [required, String] :bandwidth
168
+ # Bandwidth of the connection.
169
+ #
170
+ # Example: "*500Mbps*"
171
+ #
172
+ # Default: None
173
+ #
174
+ # Values: 50Mbps, 100Mbps, 200Mbps, 300Mbps, 400Mbps, or 500Mbps
175
+ #
176
+ # @option params [required, String] :connection_name
177
+ # Name of the provisioned connection.
178
+ #
179
+ # Example: "*500M Connection to AWS*"
180
+ #
181
+ # Default: None
182
+ #
183
+ # @option params [required, String] :owner_account
184
+ # Numeric account Id of the customer for whom the connection will be
185
+ # provisioned.
186
+ #
187
+ # Example: 123443215678
188
+ #
189
+ # Default: None
190
+ #
191
+ # @option params [required, String] :interconnect_id
192
+ # ID of the interconnect on which the connection will be provisioned.
193
+ #
194
+ # Example: dxcon-456abc78
195
+ #
196
+ # Default: None
197
+ #
198
+ # @option params [required, Integer] :vlan
199
+ # The dedicated VLAN provisioned to the connection.
200
+ #
201
+ # Example: 101
202
+ #
203
+ # Default: None
204
+ #
205
+ # @return [Types::Connection] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
206
+ #
207
+ # * {Types::Connection#owner_account #owner_account} => String
208
+ # * {Types::Connection#connection_id #connection_id} => String
209
+ # * {Types::Connection#connection_name #connection_name} => String
210
+ # * {Types::Connection#connection_state #connection_state} => String
211
+ # * {Types::Connection#region #region} => String
212
+ # * {Types::Connection#location #location} => String
213
+ # * {Types::Connection#bandwidth #bandwidth} => String
214
+ # * {Types::Connection#vlan #vlan} => Integer
215
+ # * {Types::Connection#partner_name #partner_name} => String
216
+ # * {Types::Connection#loa_issue_time #loa_issue_time} => Time
217
+ # * {Types::Connection#lag_id #lag_id} => String
218
+ # * {Types::Connection#aws_device #aws_device} => String
219
+ #
220
+ # @example Request syntax with placeholder values
221
+ #
222
+ # resp = client.allocate_connection_on_interconnect({
223
+ # bandwidth: "Bandwidth", # required
224
+ # connection_name: "ConnectionName", # required
225
+ # owner_account: "OwnerAccount", # required
226
+ # interconnect_id: "InterconnectId", # required
227
+ # vlan: 1, # required
228
+ # })
229
+ #
230
+ # @example Response structure
231
+ #
232
+ # resp.owner_account #=> String
233
+ # resp.connection_id #=> String
234
+ # resp.connection_name #=> String
235
+ # resp.connection_state #=> String, one of "ordering", "requested", "pending", "available", "down", "deleting", "deleted", "rejected"
236
+ # resp.region #=> String
237
+ # resp.location #=> String
238
+ # resp.bandwidth #=> String
239
+ # resp.vlan #=> Integer
240
+ # resp.partner_name #=> String
241
+ # resp.loa_issue_time #=> Time
242
+ # resp.lag_id #=> String
243
+ # resp.aws_device #=> String
244
+ #
245
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/AllocateConnectionOnInterconnect AWS API Documentation
246
+ #
247
+ # @overload allocate_connection_on_interconnect(params = {})
248
+ # @param [Hash] params ({})
249
+ def allocate_connection_on_interconnect(params = {}, options = {})
250
+ req = build_request(:allocate_connection_on_interconnect, params)
251
+ req.send_request(options)
252
+ end
222
253
 
223
- # Provisions a private virtual interface to be owned by a different
224
- # customer.
225
- #
226
- # The owner of a connection calls this function to provision a private
227
- # virtual interface which will be owned by another AWS customer.
228
- #
229
- # Virtual interfaces created using this function must be confirmed by
230
- # the virtual interface owner by calling ConfirmPrivateVirtualInterface.
231
- # Until this step has been completed, the virtual interface will be in
232
- # 'Confirming' state, and will not be available for handling traffic.
233
- # @option params [required, String] :connection_id
234
- # The connection ID on which the private virtual interface is
235
- # provisioned.
236
- #
237
- # Default: None
238
- # @option params [required, String] :owner_account
239
- # The AWS account that will own the new private virtual interface.
240
- #
241
- # Default: None
242
- # @option params [required, Types::NewPrivateVirtualInterfaceAllocation] :new_private_virtual_interface_allocation
243
- # Detailed information for the private virtual interface to be
244
- # provisioned.
245
- #
246
- # Default: None
247
- # @return [Types::VirtualInterface] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
248
- #
249
- # * {Types::VirtualInterface#owner_account #ownerAccount} => String
250
- # * {Types::VirtualInterface#virtual_interface_id #virtualInterfaceId} => String
251
- # * {Types::VirtualInterface#location #location} => String
252
- # * {Types::VirtualInterface#connection_id #connectionId} => String
253
- # * {Types::VirtualInterface#virtual_interface_type #virtualInterfaceType} => String
254
- # * {Types::VirtualInterface#virtual_interface_name #virtualInterfaceName} => String
255
- # * {Types::VirtualInterface#vlan #vlan} => Integer
256
- # * {Types::VirtualInterface#asn #asn} => Integer
257
- # * {Types::VirtualInterface#auth_key #authKey} => String
258
- # * {Types::VirtualInterface#amazon_address #amazonAddress} => String
259
- # * {Types::VirtualInterface#customer_address #customerAddress} => String
260
- # * {Types::VirtualInterface#address_family #addressFamily} => String
261
- # * {Types::VirtualInterface#virtual_interface_state #virtualInterfaceState} => String
262
- # * {Types::VirtualInterface#customer_router_config #customerRouterConfig} => String
263
- # * {Types::VirtualInterface#virtual_gateway_id #virtualGatewayId} => String
264
- # * {Types::VirtualInterface#route_filter_prefixes #routeFilterPrefixes} => Array&lt;Types::RouteFilterPrefix&gt;
265
- # * {Types::VirtualInterface#bgp_peers #bgpPeers} => Array&lt;Types::BGPPeer&gt;
266
- #
267
- # @example Request syntax with placeholder values
268
- # resp = client.allocate_private_virtual_interface({
269
- # connection_id: "ConnectionId", # required
270
- # owner_account: "OwnerAccount", # required
271
- # new_private_virtual_interface_allocation: { # required
272
- # virtual_interface_name: "VirtualInterfaceName", # required
273
- # vlan: 1, # required
274
- # asn: 1, # required
275
- # auth_key: "BGPAuthKey",
276
- # amazon_address: "AmazonAddress",
277
- # address_family: "ipv4", # accepts ipv4, ipv6
278
- # customer_address: "CustomerAddress",
279
- # },
280
- # })
281
- #
282
- # @example Response structure
283
- # resp.owner_account #=> String
284
- # resp.virtual_interface_id #=> String
285
- # resp.location #=> String
286
- # resp.connection_id #=> String
287
- # resp.virtual_interface_type #=> String
288
- # resp.virtual_interface_name #=> String
289
- # resp.vlan #=> Integer
290
- # resp.asn #=> Integer
291
- # resp.auth_key #=> String
292
- # resp.amazon_address #=> String
293
- # resp.customer_address #=> String
294
- # resp.address_family #=> String, one of "ipv4", "ipv6"
295
- # resp.virtual_interface_state #=> String, one of "confirming", "verifying", "pending", "available", "down", "deleting", "deleted", "rejected"
296
- # resp.customer_router_config #=> String
297
- # resp.virtual_gateway_id #=> String
298
- # resp.route_filter_prefixes #=> Array
299
- # resp.route_filter_prefixes[0].cidr #=> String
300
- # resp.bgp_peers #=> Array
301
- # resp.bgp_peers[0].asn #=> Integer
302
- # resp.bgp_peers[0].auth_key #=> String
303
- # resp.bgp_peers[0].address_family #=> String, one of "ipv4", "ipv6"
304
- # resp.bgp_peers[0].amazon_address #=> String
305
- # resp.bgp_peers[0].customer_address #=> String
306
- # resp.bgp_peers[0].bgp_peer_state #=> String, one of "verifying", "pending", "available", "deleting", "deleted"
307
- # resp.bgp_peers[0].bgp_status #=> String, one of "up", "down"
308
- # @overload allocate_private_virtual_interface(params = {})
309
- # @param [Hash] params ({})
310
- def allocate_private_virtual_interface(params = {}, options = {})
311
- req = build_request(:allocate_private_virtual_interface, params)
312
- req.send_request(options)
313
- end
254
+ # Creates a hosted connection on an interconnect or a link aggregation
255
+ # group (LAG).
256
+ #
257
+ # Allocates a VLAN number and a specified amount of bandwidth for use by
258
+ # a hosted connection on the given interconnect or LAG.
259
+ #
260
+ # <note markdown="1"> This is intended for use by AWS Direct Connect partners only.
261
+ #
262
+ # </note>
263
+ #
264
+ # @option params [required, String] :connection_id
265
+ # The ID of the interconnect or LAG on which the connection will be
266
+ # provisioned.
267
+ #
268
+ # Example: dxcon-456abc78 or dxlag-abc123
269
+ #
270
+ # Default: None
271
+ #
272
+ # @option params [required, String] :owner_account
273
+ # The numeric account ID of the customer for whom the connection will be
274
+ # provisioned.
275
+ #
276
+ # Example: 123443215678
277
+ #
278
+ # Default: None
279
+ #
280
+ # @option params [required, String] :bandwidth
281
+ # The bandwidth of the connection.
282
+ #
283
+ # Example: `500Mbps`
284
+ #
285
+ # Default: None
286
+ #
287
+ # Values: 50Mbps, 100Mbps, 200Mbps, 300Mbps, 400Mbps, or 500Mbps
288
+ #
289
+ # @option params [required, String] :connection_name
290
+ # The name of the provisioned connection.
291
+ #
292
+ # Example: "`500M Connection to AWS`"
293
+ #
294
+ # Default: None
295
+ #
296
+ # @option params [required, Integer] :vlan
297
+ # The dedicated VLAN provisioned to the hosted connection.
298
+ #
299
+ # Example: 101
300
+ #
301
+ # Default: None
302
+ #
303
+ # @return [Types::Connection] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
304
+ #
305
+ # * {Types::Connection#owner_account #owner_account} => String
306
+ # * {Types::Connection#connection_id #connection_id} => String
307
+ # * {Types::Connection#connection_name #connection_name} => String
308
+ # * {Types::Connection#connection_state #connection_state} => String
309
+ # * {Types::Connection#region #region} => String
310
+ # * {Types::Connection#location #location} => String
311
+ # * {Types::Connection#bandwidth #bandwidth} => String
312
+ # * {Types::Connection#vlan #vlan} => Integer
313
+ # * {Types::Connection#partner_name #partner_name} => String
314
+ # * {Types::Connection#loa_issue_time #loa_issue_time} => Time
315
+ # * {Types::Connection#lag_id #lag_id} => String
316
+ # * {Types::Connection#aws_device #aws_device} => String
317
+ #
318
+ # @example Request syntax with placeholder values
319
+ #
320
+ # resp = client.allocate_hosted_connection({
321
+ # connection_id: "ConnectionId", # required
322
+ # owner_account: "OwnerAccount", # required
323
+ # bandwidth: "Bandwidth", # required
324
+ # connection_name: "ConnectionName", # required
325
+ # vlan: 1, # required
326
+ # })
327
+ #
328
+ # @example Response structure
329
+ #
330
+ # resp.owner_account #=> String
331
+ # resp.connection_id #=> String
332
+ # resp.connection_name #=> String
333
+ # resp.connection_state #=> String, one of "ordering", "requested", "pending", "available", "down", "deleting", "deleted", "rejected"
334
+ # resp.region #=> String
335
+ # resp.location #=> String
336
+ # resp.bandwidth #=> String
337
+ # resp.vlan #=> Integer
338
+ # resp.partner_name #=> String
339
+ # resp.loa_issue_time #=> Time
340
+ # resp.lag_id #=> String
341
+ # resp.aws_device #=> String
342
+ #
343
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/AllocateHostedConnection AWS API Documentation
344
+ #
345
+ # @overload allocate_hosted_connection(params = {})
346
+ # @param [Hash] params ({})
347
+ def allocate_hosted_connection(params = {}, options = {})
348
+ req = build_request(:allocate_hosted_connection, params)
349
+ req.send_request(options)
350
+ end
314
351
 
315
- # Provisions a public virtual interface to be owned by a different
316
- # customer.
317
- #
318
- # The owner of a connection calls this function to provision a public
319
- # virtual interface which will be owned by another AWS customer.
320
- #
321
- # Virtual interfaces created using this function must be confirmed by
322
- # the virtual interface owner by calling ConfirmPublicVirtualInterface.
323
- # Until this step has been completed, the virtual interface will be in
324
- # 'Confirming' state, and will not be available for handling traffic.
325
- #
326
- # When creating an IPv6 public virtual interface (addressFamily is
327
- # 'ipv6'), the customer and amazon address fields should be left blank
328
- # to use auto-assigned IPv6 space. Custom IPv6 Addresses are currently
329
- # not supported.
330
- # @option params [required, String] :connection_id
331
- # The connection ID on which the public virtual interface is
332
- # provisioned.
333
- #
334
- # Default: None
335
- # @option params [required, String] :owner_account
336
- # The AWS account that will own the new public virtual interface.
337
- #
338
- # Default: None
339
- # @option params [required, Types::NewPublicVirtualInterfaceAllocation] :new_public_virtual_interface_allocation
340
- # Detailed information for the public virtual interface to be
341
- # provisioned.
342
- #
343
- # Default: None
344
- # @return [Types::VirtualInterface] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
345
- #
346
- # * {Types::VirtualInterface#owner_account #ownerAccount} => String
347
- # * {Types::VirtualInterface#virtual_interface_id #virtualInterfaceId} => String
348
- # * {Types::VirtualInterface#location #location} => String
349
- # * {Types::VirtualInterface#connection_id #connectionId} => String
350
- # * {Types::VirtualInterface#virtual_interface_type #virtualInterfaceType} => String
351
- # * {Types::VirtualInterface#virtual_interface_name #virtualInterfaceName} => String
352
- # * {Types::VirtualInterface#vlan #vlan} => Integer
353
- # * {Types::VirtualInterface#asn #asn} => Integer
354
- # * {Types::VirtualInterface#auth_key #authKey} => String
355
- # * {Types::VirtualInterface#amazon_address #amazonAddress} => String
356
- # * {Types::VirtualInterface#customer_address #customerAddress} => String
357
- # * {Types::VirtualInterface#address_family #addressFamily} => String
358
- # * {Types::VirtualInterface#virtual_interface_state #virtualInterfaceState} => String
359
- # * {Types::VirtualInterface#customer_router_config #customerRouterConfig} => String
360
- # * {Types::VirtualInterface#virtual_gateway_id #virtualGatewayId} => String
361
- # * {Types::VirtualInterface#route_filter_prefixes #routeFilterPrefixes} => Array&lt;Types::RouteFilterPrefix&gt;
362
- # * {Types::VirtualInterface#bgp_peers #bgpPeers} => Array&lt;Types::BGPPeer&gt;
363
- #
364
- # @example Request syntax with placeholder values
365
- # resp = client.allocate_public_virtual_interface({
366
- # connection_id: "ConnectionId", # required
367
- # owner_account: "OwnerAccount", # required
368
- # new_public_virtual_interface_allocation: { # required
369
- # virtual_interface_name: "VirtualInterfaceName", # required
370
- # vlan: 1, # required
371
- # asn: 1, # required
372
- # auth_key: "BGPAuthKey",
373
- # amazon_address: "AmazonAddress",
374
- # customer_address: "CustomerAddress",
375
- # address_family: "ipv4", # accepts ipv4, ipv6
376
- # route_filter_prefixes: [
377
- # {
378
- # cidr: "CIDR",
379
- # },
380
- # ],
381
- # },
382
- # })
383
- #
384
- # @example Response structure
385
- # resp.owner_account #=> String
386
- # resp.virtual_interface_id #=> String
387
- # resp.location #=> String
388
- # resp.connection_id #=> String
389
- # resp.virtual_interface_type #=> String
390
- # resp.virtual_interface_name #=> String
391
- # resp.vlan #=> Integer
392
- # resp.asn #=> Integer
393
- # resp.auth_key #=> String
394
- # resp.amazon_address #=> String
395
- # resp.customer_address #=> String
396
- # resp.address_family #=> String, one of "ipv4", "ipv6"
397
- # resp.virtual_interface_state #=> String, one of "confirming", "verifying", "pending", "available", "down", "deleting", "deleted", "rejected"
398
- # resp.customer_router_config #=> String
399
- # resp.virtual_gateway_id #=> String
400
- # resp.route_filter_prefixes #=> Array
401
- # resp.route_filter_prefixes[0].cidr #=> String
402
- # resp.bgp_peers #=> Array
403
- # resp.bgp_peers[0].asn #=> Integer
404
- # resp.bgp_peers[0].auth_key #=> String
405
- # resp.bgp_peers[0].address_family #=> String, one of "ipv4", "ipv6"
406
- # resp.bgp_peers[0].amazon_address #=> String
407
- # resp.bgp_peers[0].customer_address #=> String
408
- # resp.bgp_peers[0].bgp_peer_state #=> String, one of "verifying", "pending", "available", "deleting", "deleted"
409
- # resp.bgp_peers[0].bgp_status #=> String, one of "up", "down"
410
- # @overload allocate_public_virtual_interface(params = {})
411
- # @param [Hash] params ({})
412
- def allocate_public_virtual_interface(params = {}, options = {})
413
- req = build_request(:allocate_public_virtual_interface, params)
414
- req.send_request(options)
415
- end
352
+ # Provisions a private virtual interface to be owned by another AWS
353
+ # customer.
354
+ #
355
+ # Virtual interfaces created using this action must be confirmed by the
356
+ # virtual interface owner by using the ConfirmPrivateVirtualInterface
357
+ # action. Until then, the virtual interface will be in 'Confirming'
358
+ # state, and will not be available for handling traffic.
359
+ #
360
+ # @option params [required, String] :connection_id
361
+ # The connection ID on which the private virtual interface is
362
+ # provisioned.
363
+ #
364
+ # Default: None
365
+ #
366
+ # @option params [required, String] :owner_account
367
+ # The AWS account that will own the new private virtual interface.
368
+ #
369
+ # Default: None
370
+ #
371
+ # @option params [required, Types::NewPrivateVirtualInterfaceAllocation] :new_private_virtual_interface_allocation
372
+ # Detailed information for the private virtual interface to be
373
+ # provisioned.
374
+ #
375
+ # Default: None
376
+ #
377
+ # @return [Types::VirtualInterface] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
378
+ #
379
+ # * {Types::VirtualInterface#owner_account #owner_account} => String
380
+ # * {Types::VirtualInterface#virtual_interface_id #virtual_interface_id} => String
381
+ # * {Types::VirtualInterface#location #location} => String
382
+ # * {Types::VirtualInterface#connection_id #connection_id} => String
383
+ # * {Types::VirtualInterface#virtual_interface_type #virtual_interface_type} => String
384
+ # * {Types::VirtualInterface#virtual_interface_name #virtual_interface_name} => String
385
+ # * {Types::VirtualInterface#vlan #vlan} => Integer
386
+ # * {Types::VirtualInterface#asn #asn} => Integer
387
+ # * {Types::VirtualInterface#auth_key #auth_key} => String
388
+ # * {Types::VirtualInterface#amazon_address #amazon_address} => String
389
+ # * {Types::VirtualInterface#customer_address #customer_address} => String
390
+ # * {Types::VirtualInterface#address_family #address_family} => String
391
+ # * {Types::VirtualInterface#virtual_interface_state #virtual_interface_state} => String
392
+ # * {Types::VirtualInterface#customer_router_config #customer_router_config} => String
393
+ # * {Types::VirtualInterface#virtual_gateway_id #virtual_gateway_id} => String
394
+ # * {Types::VirtualInterface#route_filter_prefixes #route_filter_prefixes} => Array&lt;Types::RouteFilterPrefix&gt;
395
+ # * {Types::VirtualInterface#bgp_peers #bgp_peers} => Array&lt;Types::BGPPeer&gt;
396
+ #
397
+ # @example Request syntax with placeholder values
398
+ #
399
+ # resp = client.allocate_private_virtual_interface({
400
+ # connection_id: "ConnectionId", # required
401
+ # owner_account: "OwnerAccount", # required
402
+ # new_private_virtual_interface_allocation: { # required
403
+ # virtual_interface_name: "VirtualInterfaceName", # required
404
+ # vlan: 1, # required
405
+ # asn: 1, # required
406
+ # auth_key: "BGPAuthKey",
407
+ # amazon_address: "AmazonAddress",
408
+ # address_family: "ipv4", # accepts ipv4, ipv6
409
+ # customer_address: "CustomerAddress",
410
+ # },
411
+ # })
412
+ #
413
+ # @example Response structure
414
+ #
415
+ # resp.owner_account #=> String
416
+ # resp.virtual_interface_id #=> String
417
+ # resp.location #=> String
418
+ # resp.connection_id #=> String
419
+ # resp.virtual_interface_type #=> String
420
+ # resp.virtual_interface_name #=> String
421
+ # resp.vlan #=> Integer
422
+ # resp.asn #=> Integer
423
+ # resp.auth_key #=> String
424
+ # resp.amazon_address #=> String
425
+ # resp.customer_address #=> String
426
+ # resp.address_family #=> String, one of "ipv4", "ipv6"
427
+ # resp.virtual_interface_state #=> String, one of "confirming", "verifying", "pending", "available", "down", "deleting", "deleted", "rejected"
428
+ # resp.customer_router_config #=> String
429
+ # resp.virtual_gateway_id #=> String
430
+ # resp.route_filter_prefixes #=> Array
431
+ # resp.route_filter_prefixes[0].cidr #=> String
432
+ # resp.bgp_peers #=> Array
433
+ # resp.bgp_peers[0].asn #=> Integer
434
+ # resp.bgp_peers[0].auth_key #=> String
435
+ # resp.bgp_peers[0].address_family #=> String, one of "ipv4", "ipv6"
436
+ # resp.bgp_peers[0].amazon_address #=> String
437
+ # resp.bgp_peers[0].customer_address #=> String
438
+ # resp.bgp_peers[0].bgp_peer_state #=> String, one of "verifying", "pending", "available", "deleting", "deleted"
439
+ # resp.bgp_peers[0].bgp_status #=> String, one of "up", "down"
440
+ #
441
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/AllocatePrivateVirtualInterface AWS API Documentation
442
+ #
443
+ # @overload allocate_private_virtual_interface(params = {})
444
+ # @param [Hash] params ({})
445
+ def allocate_private_virtual_interface(params = {}, options = {})
446
+ req = build_request(:allocate_private_virtual_interface, params)
447
+ req.send_request(options)
448
+ end
416
449
 
417
- # Confirm the creation of a hosted connection on an interconnect.
418
- #
419
- # Upon creation, the hosted connection is initially in the 'Ordering'
420
- # state, and will remain in this state until the owner calls
421
- # ConfirmConnection to confirm creation of the hosted connection.
422
- # @option params [required, String] :connection_id
423
- # ID of the connection.
424
- #
425
- # Example: dxcon-fg5678gh
426
- #
427
- # Default: None
428
- # @return [Types::ConfirmConnectionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
429
- #
430
- # * {Types::ConfirmConnectionResponse#connection_state #connectionState} => String
431
- #
432
- # @example Request syntax with placeholder values
433
- # resp = client.confirm_connection({
434
- # connection_id: "ConnectionId", # required
435
- # })
436
- #
437
- # @example Response structure
438
- # resp.connection_state #=> String, one of "ordering", "requested", "pending", "available", "down", "deleting", "deleted", "rejected"
439
- # @overload confirm_connection(params = {})
440
- # @param [Hash] params ({})
441
- def confirm_connection(params = {}, options = {})
442
- req = build_request(:confirm_connection, params)
443
- req.send_request(options)
444
- end
450
+ # Provisions a public virtual interface to be owned by a different
451
+ # customer.
452
+ #
453
+ # The owner of a connection calls this function to provision a public
454
+ # virtual interface which will be owned by another AWS customer.
455
+ #
456
+ # Virtual interfaces created using this function must be confirmed by
457
+ # the virtual interface owner by calling ConfirmPublicVirtualInterface.
458
+ # Until this step has been completed, the virtual interface will be in
459
+ # 'Confirming' state, and will not be available for handling traffic.
460
+ #
461
+ # When creating an IPv6 public virtual interface (addressFamily is
462
+ # 'ipv6'), the customer and amazon address fields should be left blank
463
+ # to use auto-assigned IPv6 space. Custom IPv6 Addresses are currently
464
+ # not supported.
465
+ #
466
+ # @option params [required, String] :connection_id
467
+ # The connection ID on which the public virtual interface is
468
+ # provisioned.
469
+ #
470
+ # Default: None
471
+ #
472
+ # @option params [required, String] :owner_account
473
+ # The AWS account that will own the new public virtual interface.
474
+ #
475
+ # Default: None
476
+ #
477
+ # @option params [required, Types::NewPublicVirtualInterfaceAllocation] :new_public_virtual_interface_allocation
478
+ # Detailed information for the public virtual interface to be
479
+ # provisioned.
480
+ #
481
+ # Default: None
482
+ #
483
+ # @return [Types::VirtualInterface] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
484
+ #
485
+ # * {Types::VirtualInterface#owner_account #owner_account} => String
486
+ # * {Types::VirtualInterface#virtual_interface_id #virtual_interface_id} => String
487
+ # * {Types::VirtualInterface#location #location} => String
488
+ # * {Types::VirtualInterface#connection_id #connection_id} => String
489
+ # * {Types::VirtualInterface#virtual_interface_type #virtual_interface_type} => String
490
+ # * {Types::VirtualInterface#virtual_interface_name #virtual_interface_name} => String
491
+ # * {Types::VirtualInterface#vlan #vlan} => Integer
492
+ # * {Types::VirtualInterface#asn #asn} => Integer
493
+ # * {Types::VirtualInterface#auth_key #auth_key} => String
494
+ # * {Types::VirtualInterface#amazon_address #amazon_address} => String
495
+ # * {Types::VirtualInterface#customer_address #customer_address} => String
496
+ # * {Types::VirtualInterface#address_family #address_family} => String
497
+ # * {Types::VirtualInterface#virtual_interface_state #virtual_interface_state} => String
498
+ # * {Types::VirtualInterface#customer_router_config #customer_router_config} => String
499
+ # * {Types::VirtualInterface#virtual_gateway_id #virtual_gateway_id} => String
500
+ # * {Types::VirtualInterface#route_filter_prefixes #route_filter_prefixes} => Array&lt;Types::RouteFilterPrefix&gt;
501
+ # * {Types::VirtualInterface#bgp_peers #bgp_peers} => Array&lt;Types::BGPPeer&gt;
502
+ #
503
+ # @example Request syntax with placeholder values
504
+ #
505
+ # resp = client.allocate_public_virtual_interface({
506
+ # connection_id: "ConnectionId", # required
507
+ # owner_account: "OwnerAccount", # required
508
+ # new_public_virtual_interface_allocation: { # required
509
+ # virtual_interface_name: "VirtualInterfaceName", # required
510
+ # vlan: 1, # required
511
+ # asn: 1, # required
512
+ # auth_key: "BGPAuthKey",
513
+ # amazon_address: "AmazonAddress",
514
+ # customer_address: "CustomerAddress",
515
+ # address_family: "ipv4", # accepts ipv4, ipv6
516
+ # route_filter_prefixes: [
517
+ # {
518
+ # cidr: "CIDR",
519
+ # },
520
+ # ],
521
+ # },
522
+ # })
523
+ #
524
+ # @example Response structure
525
+ #
526
+ # resp.owner_account #=> String
527
+ # resp.virtual_interface_id #=> String
528
+ # resp.location #=> String
529
+ # resp.connection_id #=> String
530
+ # resp.virtual_interface_type #=> String
531
+ # resp.virtual_interface_name #=> String
532
+ # resp.vlan #=> Integer
533
+ # resp.asn #=> Integer
534
+ # resp.auth_key #=> String
535
+ # resp.amazon_address #=> String
536
+ # resp.customer_address #=> String
537
+ # resp.address_family #=> String, one of "ipv4", "ipv6"
538
+ # resp.virtual_interface_state #=> String, one of "confirming", "verifying", "pending", "available", "down", "deleting", "deleted", "rejected"
539
+ # resp.customer_router_config #=> String
540
+ # resp.virtual_gateway_id #=> String
541
+ # resp.route_filter_prefixes #=> Array
542
+ # resp.route_filter_prefixes[0].cidr #=> String
543
+ # resp.bgp_peers #=> Array
544
+ # resp.bgp_peers[0].asn #=> Integer
545
+ # resp.bgp_peers[0].auth_key #=> String
546
+ # resp.bgp_peers[0].address_family #=> String, one of "ipv4", "ipv6"
547
+ # resp.bgp_peers[0].amazon_address #=> String
548
+ # resp.bgp_peers[0].customer_address #=> String
549
+ # resp.bgp_peers[0].bgp_peer_state #=> String, one of "verifying", "pending", "available", "deleting", "deleted"
550
+ # resp.bgp_peers[0].bgp_status #=> String, one of "up", "down"
551
+ #
552
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/AllocatePublicVirtualInterface AWS API Documentation
553
+ #
554
+ # @overload allocate_public_virtual_interface(params = {})
555
+ # @param [Hash] params ({})
556
+ def allocate_public_virtual_interface(params = {}, options = {})
557
+ req = build_request(:allocate_public_virtual_interface, params)
558
+ req.send_request(options)
559
+ end
445
560
 
446
- # Accept ownership of a private virtual interface created by another
447
- # customer.
448
- #
449
- # After the virtual interface owner calls this function, the virtual
450
- # interface will be created and attached to the given virtual private
451
- # gateway, and will be available for handling traffic.
452
- # @option params [required, String] :virtual_interface_id
453
- # ID of the virtual interface.
454
- #
455
- # Example: dxvif-123dfg56
456
- #
457
- # Default: None
458
- # @option params [required, String] :virtual_gateway_id
459
- # ID of the virtual private gateway that will be attached to the virtual
460
- # interface.
461
- #
462
- # A virtual private gateway can be managed via the Amazon Virtual
463
- # Private Cloud (VPC) console or the [EC2 CreateVpnGateway][1] action.
464
- #
465
- # Default: None
466
- #
467
- #
468
- #
469
- # [1]: http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-CreateVpnGateway.html
470
- # @return [Types::ConfirmPrivateVirtualInterfaceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
471
- #
472
- # * {Types::ConfirmPrivateVirtualInterfaceResponse#virtual_interface_state #virtualInterfaceState} => String
473
- #
474
- # @example Request syntax with placeholder values
475
- # resp = client.confirm_private_virtual_interface({
476
- # virtual_interface_id: "VirtualInterfaceId", # required
477
- # virtual_gateway_id: "VirtualGatewayId", # required
478
- # })
479
- #
480
- # @example Response structure
481
- # resp.virtual_interface_state #=> String, one of "confirming", "verifying", "pending", "available", "down", "deleting", "deleted", "rejected"
482
- # @overload confirm_private_virtual_interface(params = {})
483
- # @param [Hash] params ({})
484
- def confirm_private_virtual_interface(params = {}, options = {})
485
- req = build_request(:confirm_private_virtual_interface, params)
486
- req.send_request(options)
487
- end
561
+ # Associates an existing connection with a link aggregation group (LAG).
562
+ # The connection is interrupted and re-established as a member of the
563
+ # LAG (connectivity to AWS will be interrupted). The connection must be
564
+ # hosted on the same AWS Direct Connect endpoint as the LAG, and its
565
+ # bandwidth must match the bandwidth for the LAG. You can reassociate a
566
+ # connection that's currently associated with a different LAG; however,
567
+ # if removing the connection will cause the original LAG to fall below
568
+ # its setting for minimum number of operational connections, the request
569
+ # fails.
570
+ #
571
+ # Virtual interfaces that are directly associated with the connection
572
+ # are not automatically migrated. You can delete them or associate them
573
+ # with the target LAG using AssociateVirtualInterface. If the connection
574
+ # was originally associated with a different LAG, the virtual interfaces
575
+ # remain associated with the original LAG.
576
+ #
577
+ # For interconnects, hosted connections are not automatically migrated.
578
+ # You can delete them, or the owner of the physical connection can
579
+ # associate them with the target LAG using AssociateHostedConnection.
580
+ # After all hosted connections have been migrated, the interconnect can
581
+ # be migrated into the LAG. If the interconnect is already associated
582
+ # with a LAG, the hosted connections remain associated with the original
583
+ # LAG.
584
+ #
585
+ # @option params [required, String] :connection_id
586
+ # The ID of the connection.
587
+ #
588
+ # Example: dxcon-abc123
589
+ #
590
+ # Default: None
591
+ #
592
+ # @option params [required, String] :lag_id
593
+ # The ID of the LAG with which to associate the connection.
594
+ #
595
+ # Example: dxlag-abc123
596
+ #
597
+ # Default: None
598
+ #
599
+ # @return [Types::Connection] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
600
+ #
601
+ # * {Types::Connection#owner_account #owner_account} => String
602
+ # * {Types::Connection#connection_id #connection_id} => String
603
+ # * {Types::Connection#connection_name #connection_name} => String
604
+ # * {Types::Connection#connection_state #connection_state} => String
605
+ # * {Types::Connection#region #region} => String
606
+ # * {Types::Connection#location #location} => String
607
+ # * {Types::Connection#bandwidth #bandwidth} => String
608
+ # * {Types::Connection#vlan #vlan} => Integer
609
+ # * {Types::Connection#partner_name #partner_name} => String
610
+ # * {Types::Connection#loa_issue_time #loa_issue_time} => Time
611
+ # * {Types::Connection#lag_id #lag_id} => String
612
+ # * {Types::Connection#aws_device #aws_device} => String
613
+ #
614
+ # @example Request syntax with placeholder values
615
+ #
616
+ # resp = client.associate_connection_with_lag({
617
+ # connection_id: "ConnectionId", # required
618
+ # lag_id: "LagId", # required
619
+ # })
620
+ #
621
+ # @example Response structure
622
+ #
623
+ # resp.owner_account #=> String
624
+ # resp.connection_id #=> String
625
+ # resp.connection_name #=> String
626
+ # resp.connection_state #=> String, one of "ordering", "requested", "pending", "available", "down", "deleting", "deleted", "rejected"
627
+ # resp.region #=> String
628
+ # resp.location #=> String
629
+ # resp.bandwidth #=> String
630
+ # resp.vlan #=> Integer
631
+ # resp.partner_name #=> String
632
+ # resp.loa_issue_time #=> Time
633
+ # resp.lag_id #=> String
634
+ # resp.aws_device #=> String
635
+ #
636
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/AssociateConnectionWithLag AWS API Documentation
637
+ #
638
+ # @overload associate_connection_with_lag(params = {})
639
+ # @param [Hash] params ({})
640
+ def associate_connection_with_lag(params = {}, options = {})
641
+ req = build_request(:associate_connection_with_lag, params)
642
+ req.send_request(options)
643
+ end
488
644
 
489
- # Accept ownership of a public virtual interface created by another
490
- # customer.
491
- #
492
- # After the virtual interface owner calls this function, the specified
493
- # virtual interface will be created and made available for handling
494
- # traffic.
495
- # @option params [required, String] :virtual_interface_id
496
- # ID of the virtual interface.
497
- #
498
- # Example: dxvif-123dfg56
499
- #
500
- # Default: None
501
- # @return [Types::ConfirmPublicVirtualInterfaceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
502
- #
503
- # * {Types::ConfirmPublicVirtualInterfaceResponse#virtual_interface_state #virtualInterfaceState} => String
504
- #
505
- # @example Request syntax with placeholder values
506
- # resp = client.confirm_public_virtual_interface({
507
- # virtual_interface_id: "VirtualInterfaceId", # required
508
- # })
509
- #
510
- # @example Response structure
511
- # resp.virtual_interface_state #=> String, one of "confirming", "verifying", "pending", "available", "down", "deleting", "deleted", "rejected"
512
- # @overload confirm_public_virtual_interface(params = {})
513
- # @param [Hash] params ({})
514
- def confirm_public_virtual_interface(params = {}, options = {})
515
- req = build_request(:confirm_public_virtual_interface, params)
516
- req.send_request(options)
517
- end
645
+ # Associates a hosted connection and its virtual interfaces with a link
646
+ # aggregation group (LAG) or interconnect. If the target interconnect or
647
+ # LAG has an existing hosted connection with a conflicting VLAN number
648
+ # or IP address, the operation fails. This action temporarily interrupts
649
+ # the hosted connection's connectivity to AWS as it is being migrated.
650
+ #
651
+ # <note markdown="1"> This is intended for use by AWS Direct Connect partners only.
652
+ #
653
+ # </note>
654
+ #
655
+ # @option params [required, String] :connection_id
656
+ # The ID of the hosted connection.
657
+ #
658
+ # Example: dxcon-abc123
659
+ #
660
+ # Default: None
661
+ #
662
+ # @option params [required, String] :parent_connection_id
663
+ # The ID of the interconnect or the LAG.
664
+ #
665
+ # Example: dxcon-abc123 or dxlag-abc123
666
+ #
667
+ # Default: None
668
+ #
669
+ # @return [Types::Connection] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
670
+ #
671
+ # * {Types::Connection#owner_account #owner_account} => String
672
+ # * {Types::Connection#connection_id #connection_id} => String
673
+ # * {Types::Connection#connection_name #connection_name} => String
674
+ # * {Types::Connection#connection_state #connection_state} => String
675
+ # * {Types::Connection#region #region} => String
676
+ # * {Types::Connection#location #location} => String
677
+ # * {Types::Connection#bandwidth #bandwidth} => String
678
+ # * {Types::Connection#vlan #vlan} => Integer
679
+ # * {Types::Connection#partner_name #partner_name} => String
680
+ # * {Types::Connection#loa_issue_time #loa_issue_time} => Time
681
+ # * {Types::Connection#lag_id #lag_id} => String
682
+ # * {Types::Connection#aws_device #aws_device} => String
683
+ #
684
+ # @example Request syntax with placeholder values
685
+ #
686
+ # resp = client.associate_hosted_connection({
687
+ # connection_id: "ConnectionId", # required
688
+ # parent_connection_id: "ConnectionId", # required
689
+ # })
690
+ #
691
+ # @example Response structure
692
+ #
693
+ # resp.owner_account #=> String
694
+ # resp.connection_id #=> String
695
+ # resp.connection_name #=> String
696
+ # resp.connection_state #=> String, one of "ordering", "requested", "pending", "available", "down", "deleting", "deleted", "rejected"
697
+ # resp.region #=> String
698
+ # resp.location #=> String
699
+ # resp.bandwidth #=> String
700
+ # resp.vlan #=> Integer
701
+ # resp.partner_name #=> String
702
+ # resp.loa_issue_time #=> Time
703
+ # resp.lag_id #=> String
704
+ # resp.aws_device #=> String
705
+ #
706
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/AssociateHostedConnection AWS API Documentation
707
+ #
708
+ # @overload associate_hosted_connection(params = {})
709
+ # @param [Hash] params ({})
710
+ def associate_hosted_connection(params = {}, options = {})
711
+ req = build_request(:associate_hosted_connection, params)
712
+ req.send_request(options)
713
+ end
518
714
 
519
- # Creates a new BGP peer on a specified virtual interface. The BGP peer
520
- # cannot be in the same address family (IPv4/IPv6) of an existing BGP
521
- # peer on the virtual interface.
522
- #
523
- # You must create a BGP peer for the corresponding address family in
524
- # order to access AWS resources that also use that address family.
525
- #
526
- # When creating a IPv6 BGP peer, the Amazon address and customer address
527
- # fields must be left blank. IPv6 addresses are automatically assigned
528
- # from Amazon's pool of IPv6 addresses; you cannot specify custom IPv6
529
- # addresses.
530
- #
531
- # For a public virtual interface, the Autonomous System Number (ASN)
532
- # must be private or already whitelisted for the virtual interface.
533
- # @option params [String] :virtual_interface_id
534
- # The ID of the virtual interface on which the BGP peer will be
535
- # provisioned.
536
- #
537
- # Example: dxvif-456abc78
538
- #
539
- # Default: None
540
- # @option params [Types::NewBGPPeer] :new_bgp_peer
541
- # Detailed information for the BGP peer to be created.
542
- #
543
- # Default: None
544
- # @return [Types::CreateBGPPeerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
545
- #
546
- # * {Types::CreateBGPPeerResponse#virtual_interface #virtualInterface} => Types::VirtualInterface
547
- #
548
- # @example Request syntax with placeholder values
549
- # resp = client.create_bgp_peer({
550
- # virtual_interface_id: "VirtualInterfaceId",
551
- # new_bgp_peer: {
552
- # asn: 1,
553
- # auth_key: "BGPAuthKey",
554
- # address_family: "ipv4", # accepts ipv4, ipv6
555
- # amazon_address: "AmazonAddress",
556
- # customer_address: "CustomerAddress",
557
- # },
558
- # })
559
- #
560
- # @example Response structure
561
- # resp.virtual_interface.owner_account #=> String
562
- # resp.virtual_interface.virtual_interface_id #=> String
563
- # resp.virtual_interface.location #=> String
564
- # resp.virtual_interface.connection_id #=> String
565
- # resp.virtual_interface.virtual_interface_type #=> String
566
- # resp.virtual_interface.virtual_interface_name #=> String
567
- # resp.virtual_interface.vlan #=> Integer
568
- # resp.virtual_interface.asn #=> Integer
569
- # resp.virtual_interface.auth_key #=> String
570
- # resp.virtual_interface.amazon_address #=> String
571
- # resp.virtual_interface.customer_address #=> String
572
- # resp.virtual_interface.address_family #=> String, one of "ipv4", "ipv6"
573
- # resp.virtual_interface.virtual_interface_state #=> String, one of "confirming", "verifying", "pending", "available", "down", "deleting", "deleted", "rejected"
574
- # resp.virtual_interface.customer_router_config #=> String
575
- # resp.virtual_interface.virtual_gateway_id #=> String
576
- # resp.virtual_interface.route_filter_prefixes #=> Array
577
- # resp.virtual_interface.route_filter_prefixes[0].cidr #=> String
578
- # resp.virtual_interface.bgp_peers #=> Array
579
- # resp.virtual_interface.bgp_peers[0].asn #=> Integer
580
- # resp.virtual_interface.bgp_peers[0].auth_key #=> String
581
- # resp.virtual_interface.bgp_peers[0].address_family #=> String, one of "ipv4", "ipv6"
582
- # resp.virtual_interface.bgp_peers[0].amazon_address #=> String
583
- # resp.virtual_interface.bgp_peers[0].customer_address #=> String
584
- # resp.virtual_interface.bgp_peers[0].bgp_peer_state #=> String, one of "verifying", "pending", "available", "deleting", "deleted"
585
- # resp.virtual_interface.bgp_peers[0].bgp_status #=> String, one of "up", "down"
586
- # @overload create_bgp_peer(params = {})
587
- # @param [Hash] params ({})
588
- def create_bgp_peer(params = {}, options = {})
589
- req = build_request(:create_bgp_peer, params)
590
- req.send_request(options)
591
- end
715
+ # Associates a virtual interface with a specified link aggregation group
716
+ # (LAG) or connection. Connectivity to AWS is temporarily interrupted as
717
+ # the virtual interface is being migrated. If the target connection or
718
+ # LAG has an associated virtual interface with a conflicting VLAN number
719
+ # or a conflicting IP address, the operation fails.
720
+ #
721
+ # Virtual interfaces associated with a hosted connection cannot be
722
+ # associated with a LAG; hosted connections must be migrated along with
723
+ # their virtual interfaces using AssociateHostedConnection.
724
+ #
725
+ # Hosted virtual interfaces (an interface for which the owner of the
726
+ # connection is not the owner of physical connection) can only be
727
+ # reassociated by the owner of the physical connection.
728
+ #
729
+ # @option params [required, String] :virtual_interface_id
730
+ # The ID of the virtual interface.
731
+ #
732
+ # Example: dxvif-123dfg56
733
+ #
734
+ # Default: None
735
+ #
736
+ # @option params [required, String] :connection_id
737
+ # The ID of the LAG or connection with which to associate the virtual
738
+ # interface.
739
+ #
740
+ # Example: dxlag-abc123 or dxcon-abc123
741
+ #
742
+ # Default: None
743
+ #
744
+ # @return [Types::VirtualInterface] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
745
+ #
746
+ # * {Types::VirtualInterface#owner_account #owner_account} => String
747
+ # * {Types::VirtualInterface#virtual_interface_id #virtual_interface_id} => String
748
+ # * {Types::VirtualInterface#location #location} => String
749
+ # * {Types::VirtualInterface#connection_id #connection_id} => String
750
+ # * {Types::VirtualInterface#virtual_interface_type #virtual_interface_type} => String
751
+ # * {Types::VirtualInterface#virtual_interface_name #virtual_interface_name} => String
752
+ # * {Types::VirtualInterface#vlan #vlan} => Integer
753
+ # * {Types::VirtualInterface#asn #asn} => Integer
754
+ # * {Types::VirtualInterface#auth_key #auth_key} => String
755
+ # * {Types::VirtualInterface#amazon_address #amazon_address} => String
756
+ # * {Types::VirtualInterface#customer_address #customer_address} => String
757
+ # * {Types::VirtualInterface#address_family #address_family} => String
758
+ # * {Types::VirtualInterface#virtual_interface_state #virtual_interface_state} => String
759
+ # * {Types::VirtualInterface#customer_router_config #customer_router_config} => String
760
+ # * {Types::VirtualInterface#virtual_gateway_id #virtual_gateway_id} => String
761
+ # * {Types::VirtualInterface#route_filter_prefixes #route_filter_prefixes} => Array&lt;Types::RouteFilterPrefix&gt;
762
+ # * {Types::VirtualInterface#bgp_peers #bgp_peers} => Array&lt;Types::BGPPeer&gt;
763
+ #
764
+ # @example Request syntax with placeholder values
765
+ #
766
+ # resp = client.associate_virtual_interface({
767
+ # virtual_interface_id: "VirtualInterfaceId", # required
768
+ # connection_id: "ConnectionId", # required
769
+ # })
770
+ #
771
+ # @example Response structure
772
+ #
773
+ # resp.owner_account #=> String
774
+ # resp.virtual_interface_id #=> String
775
+ # resp.location #=> String
776
+ # resp.connection_id #=> String
777
+ # resp.virtual_interface_type #=> String
778
+ # resp.virtual_interface_name #=> String
779
+ # resp.vlan #=> Integer
780
+ # resp.asn #=> Integer
781
+ # resp.auth_key #=> String
782
+ # resp.amazon_address #=> String
783
+ # resp.customer_address #=> String
784
+ # resp.address_family #=> String, one of "ipv4", "ipv6"
785
+ # resp.virtual_interface_state #=> String, one of "confirming", "verifying", "pending", "available", "down", "deleting", "deleted", "rejected"
786
+ # resp.customer_router_config #=> String
787
+ # resp.virtual_gateway_id #=> String
788
+ # resp.route_filter_prefixes #=> Array
789
+ # resp.route_filter_prefixes[0].cidr #=> String
790
+ # resp.bgp_peers #=> Array
791
+ # resp.bgp_peers[0].asn #=> Integer
792
+ # resp.bgp_peers[0].auth_key #=> String
793
+ # resp.bgp_peers[0].address_family #=> String, one of "ipv4", "ipv6"
794
+ # resp.bgp_peers[0].amazon_address #=> String
795
+ # resp.bgp_peers[0].customer_address #=> String
796
+ # resp.bgp_peers[0].bgp_peer_state #=> String, one of "verifying", "pending", "available", "deleting", "deleted"
797
+ # resp.bgp_peers[0].bgp_status #=> String, one of "up", "down"
798
+ #
799
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/AssociateVirtualInterface AWS API Documentation
800
+ #
801
+ # @overload associate_virtual_interface(params = {})
802
+ # @param [Hash] params ({})
803
+ def associate_virtual_interface(params = {}, options = {})
804
+ req = build_request(:associate_virtual_interface, params)
805
+ req.send_request(options)
806
+ end
592
807
 
593
- # Creates a new connection between the customer network and a specific
594
- # AWS Direct Connect location.
595
- #
596
- # A connection links your internal network to an AWS Direct Connect
597
- # location over a standard 1 gigabit or 10 gigabit Ethernet fiber-optic
598
- # cable. One end of the cable is connected to your router, the other to
599
- # an AWS Direct Connect router. An AWS Direct Connect location provides
600
- # access to Amazon Web Services in the region it is associated with. You
601
- # can establish connections with AWS Direct Connect locations in
602
- # multiple regions, but a connection in one region does not provide
603
- # connectivity to other regions.
604
- # @option params [required, String] :location
605
- # Where the connection is located.
606
- #
607
- # Example: EqSV5
608
- #
609
- # Default: None
610
- # @option params [required, String] :bandwidth
611
- # Bandwidth of the connection.
612
- #
613
- # Example: 1Gbps
614
- #
615
- # Default: None
616
- # @option params [required, String] :connection_name
617
- # The name of the connection.
618
- #
619
- # Example: "*My Connection to AWS*"
620
- #
621
- # Default: None
622
- # @return [Types::Connection] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
623
- #
624
- # * {Types::Connection#owner_account #ownerAccount} => String
625
- # * {Types::Connection#connection_id #connectionId} => String
626
- # * {Types::Connection#connection_name #connectionName} => String
627
- # * {Types::Connection#connection_state #connectionState} => String
628
- # * {Types::Connection#region #region} => String
629
- # * {Types::Connection#location #location} => String
630
- # * {Types::Connection#bandwidth #bandwidth} => String
631
- # * {Types::Connection#vlan #vlan} => Integer
632
- # * {Types::Connection#partner_name #partnerName} => String
633
- # * {Types::Connection#loa_issue_time #loaIssueTime} => Time
634
- #
635
- # @example Request syntax with placeholder values
636
- # resp = client.create_connection({
637
- # location: "LocationCode", # required
638
- # bandwidth: "Bandwidth", # required
639
- # connection_name: "ConnectionName", # required
640
- # })
641
- #
642
- # @example Response structure
643
- # resp.owner_account #=> String
644
- # resp.connection_id #=> String
645
- # resp.connection_name #=> String
646
- # resp.connection_state #=> String, one of "ordering", "requested", "pending", "available", "down", "deleting", "deleted", "rejected"
647
- # resp.region #=> String
648
- # resp.location #=> String
649
- # resp.bandwidth #=> String
650
- # resp.vlan #=> Integer
651
- # resp.partner_name #=> String
652
- # resp.loa_issue_time #=> Time
653
- # @overload create_connection(params = {})
654
- # @param [Hash] params ({})
655
- def create_connection(params = {}, options = {})
656
- req = build_request(:create_connection, params)
657
- req.send_request(options)
658
- end
808
+ # Confirm the creation of a hosted connection on an interconnect.
809
+ #
810
+ # Upon creation, the hosted connection is initially in the 'Ordering'
811
+ # state, and will remain in this state until the owner calls
812
+ # ConfirmConnection to confirm creation of the hosted connection.
813
+ #
814
+ # @option params [required, String] :connection_id
815
+ # The ID of the connection. This field is also used as the ID type for
816
+ # operations that use multiple connection types (LAG, interconnect,
817
+ # and/or connection).
818
+ #
819
+ # Example: dxcon-fg5678gh
820
+ #
821
+ # Default: None
822
+ #
823
+ # @return [Types::ConfirmConnectionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
824
+ #
825
+ # * {Types::ConfirmConnectionResponse#connection_state #connection_state} => String
826
+ #
827
+ # @example Request syntax with placeholder values
828
+ #
829
+ # resp = client.confirm_connection({
830
+ # connection_id: "ConnectionId", # required
831
+ # })
832
+ #
833
+ # @example Response structure
834
+ #
835
+ # resp.connection_state #=> String, one of "ordering", "requested", "pending", "available", "down", "deleting", "deleted", "rejected"
836
+ #
837
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/ConfirmConnection AWS API Documentation
838
+ #
839
+ # @overload confirm_connection(params = {})
840
+ # @param [Hash] params ({})
841
+ def confirm_connection(params = {}, options = {})
842
+ req = build_request(:confirm_connection, params)
843
+ req.send_request(options)
844
+ end
659
845
 
660
- # Creates a new interconnect between a AWS Direct Connect partner's
661
- # network and a specific AWS Direct Connect location.
662
- #
663
- # An interconnect is a connection which is capable of hosting other
664
- # connections. The AWS Direct Connect partner can use an interconnect to
665
- # provide sub-1Gbps AWS Direct Connect service to tier 2 customers who
666
- # do not have their own connections. Like a standard connection, an
667
- # interconnect links the AWS Direct Connect partner's network to an AWS
668
- # Direct Connect location over a standard 1 Gbps or 10 Gbps Ethernet
669
- # fiber-optic cable. One end is connected to the partner's router, the
670
- # other to an AWS Direct Connect router.
671
- #
672
- # For each end customer, the AWS Direct Connect partner provisions a
673
- # connection on their interconnect by calling
674
- # AllocateConnectionOnInterconnect. The end customer can then connect to
675
- # AWS resources by creating a virtual interface on their connection,
676
- # using the VLAN assigned to them by the AWS Direct Connect partner.
677
- #
678
- # <note markdown="1"> This is intended for use by AWS Direct Connect partners only.
679
- #
680
- # </note>
681
- # @option params [required, String] :interconnect_name
682
- # The name of the interconnect.
683
- #
684
- # Example: "*1G Interconnect to AWS*"
685
- #
686
- # Default: None
687
- # @option params [required, String] :bandwidth
688
- # The port bandwidth
689
- #
690
- # Example: 1Gbps
691
- #
692
- # Default: None
693
- #
694
- # Available values: 1Gbps,10Gbps
695
- # @option params [required, String] :location
696
- # Where the interconnect is located
697
- #
698
- # Example: EqSV5
699
- #
700
- # Default: None
701
- # @return [Types::Interconnect] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
702
- #
703
- # * {Types::Interconnect#interconnect_id #interconnectId} => String
704
- # * {Types::Interconnect#interconnect_name #interconnectName} => String
705
- # * {Types::Interconnect#interconnect_state #interconnectState} => String
706
- # * {Types::Interconnect#region #region} => String
707
- # * {Types::Interconnect#location #location} => String
708
- # * {Types::Interconnect#bandwidth #bandwidth} => String
709
- # * {Types::Interconnect#loa_issue_time #loaIssueTime} => Time
710
- #
711
- # @example Request syntax with placeholder values
712
- # resp = client.create_interconnect({
713
- # interconnect_name: "InterconnectName", # required
714
- # bandwidth: "Bandwidth", # required
715
- # location: "LocationCode", # required
716
- # })
717
- #
718
- # @example Response structure
719
- # resp.interconnect_id #=> String
720
- # resp.interconnect_name #=> String
721
- # resp.interconnect_state #=> String, one of "requested", "pending", "available", "down", "deleting", "deleted"
722
- # resp.region #=> String
723
- # resp.location #=> String
724
- # resp.bandwidth #=> String
725
- # resp.loa_issue_time #=> Time
726
- # @overload create_interconnect(params = {})
727
- # @param [Hash] params ({})
728
- def create_interconnect(params = {}, options = {})
729
- req = build_request(:create_interconnect, params)
730
- req.send_request(options)
731
- end
846
+ # Accept ownership of a private virtual interface created by another
847
+ # customer.
848
+ #
849
+ # After the virtual interface owner calls this function, the virtual
850
+ # interface will be created and attached to the given virtual private
851
+ # gateway, and will be available for handling traffic.
852
+ #
853
+ # @option params [required, String] :virtual_interface_id
854
+ # The ID of the virtual interface.
855
+ #
856
+ # Example: dxvif-123dfg56
857
+ #
858
+ # Default: None
859
+ #
860
+ # @option params [required, String] :virtual_gateway_id
861
+ # ID of the virtual private gateway that will be attached to the virtual
862
+ # interface.
863
+ #
864
+ # A virtual private gateway can be managed via the Amazon Virtual
865
+ # Private Cloud (VPC) console or the [EC2 CreateVpnGateway][1] action.
866
+ #
867
+ # Default: None
868
+ #
869
+ #
870
+ #
871
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-CreateVpnGateway.html
872
+ #
873
+ # @return [Types::ConfirmPrivateVirtualInterfaceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
874
+ #
875
+ # * {Types::ConfirmPrivateVirtualInterfaceResponse#virtual_interface_state #virtual_interface_state} => String
876
+ #
877
+ # @example Request syntax with placeholder values
878
+ #
879
+ # resp = client.confirm_private_virtual_interface({
880
+ # virtual_interface_id: "VirtualInterfaceId", # required
881
+ # virtual_gateway_id: "VirtualGatewayId", # required
882
+ # })
883
+ #
884
+ # @example Response structure
885
+ #
886
+ # resp.virtual_interface_state #=> String, one of "confirming", "verifying", "pending", "available", "down", "deleting", "deleted", "rejected"
887
+ #
888
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/ConfirmPrivateVirtualInterface AWS API Documentation
889
+ #
890
+ # @overload confirm_private_virtual_interface(params = {})
891
+ # @param [Hash] params ({})
892
+ def confirm_private_virtual_interface(params = {}, options = {})
893
+ req = build_request(:confirm_private_virtual_interface, params)
894
+ req.send_request(options)
895
+ end
732
896
 
733
- # Creates a new private virtual interface. A virtual interface is the
734
- # VLAN that transports AWS Direct Connect traffic. A private virtual
735
- # interface supports sending traffic to a single virtual private cloud
736
- # (VPC).
737
- # @option params [required, String] :connection_id
738
- # ID of the connection.
739
- #
740
- # Example: dxcon-fg5678gh
741
- #
742
- # Default: None
743
- # @option params [required, Types::NewPrivateVirtualInterface] :new_private_virtual_interface
744
- # Detailed information for the private virtual interface to be created.
745
- #
746
- # Default: None
747
- # @return [Types::VirtualInterface] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
748
- #
749
- # * {Types::VirtualInterface#owner_account #ownerAccount} => String
750
- # * {Types::VirtualInterface#virtual_interface_id #virtualInterfaceId} => String
751
- # * {Types::VirtualInterface#location #location} => String
752
- # * {Types::VirtualInterface#connection_id #connectionId} => String
753
- # * {Types::VirtualInterface#virtual_interface_type #virtualInterfaceType} => String
754
- # * {Types::VirtualInterface#virtual_interface_name #virtualInterfaceName} => String
755
- # * {Types::VirtualInterface#vlan #vlan} => Integer
756
- # * {Types::VirtualInterface#asn #asn} => Integer
757
- # * {Types::VirtualInterface#auth_key #authKey} => String
758
- # * {Types::VirtualInterface#amazon_address #amazonAddress} => String
759
- # * {Types::VirtualInterface#customer_address #customerAddress} => String
760
- # * {Types::VirtualInterface#address_family #addressFamily} => String
761
- # * {Types::VirtualInterface#virtual_interface_state #virtualInterfaceState} => String
762
- # * {Types::VirtualInterface#customer_router_config #customerRouterConfig} => String
763
- # * {Types::VirtualInterface#virtual_gateway_id #virtualGatewayId} => String
764
- # * {Types::VirtualInterface#route_filter_prefixes #routeFilterPrefixes} => Array&lt;Types::RouteFilterPrefix&gt;
765
- # * {Types::VirtualInterface#bgp_peers #bgpPeers} => Array&lt;Types::BGPPeer&gt;
766
- #
767
- # @example Request syntax with placeholder values
768
- # resp = client.create_private_virtual_interface({
769
- # connection_id: "ConnectionId", # required
770
- # new_private_virtual_interface: { # required
771
- # virtual_interface_name: "VirtualInterfaceName", # required
772
- # vlan: 1, # required
773
- # asn: 1, # required
774
- # auth_key: "BGPAuthKey",
775
- # amazon_address: "AmazonAddress",
776
- # customer_address: "CustomerAddress",
777
- # address_family: "ipv4", # accepts ipv4, ipv6
778
- # virtual_gateway_id: "VirtualGatewayId", # required
779
- # },
780
- # })
781
- #
782
- # @example Response structure
783
- # resp.owner_account #=> String
784
- # resp.virtual_interface_id #=> String
785
- # resp.location #=> String
786
- # resp.connection_id #=> String
787
- # resp.virtual_interface_type #=> String
788
- # resp.virtual_interface_name #=> String
789
- # resp.vlan #=> Integer
790
- # resp.asn #=> Integer
791
- # resp.auth_key #=> String
792
- # resp.amazon_address #=> String
793
- # resp.customer_address #=> String
794
- # resp.address_family #=> String, one of "ipv4", "ipv6"
795
- # resp.virtual_interface_state #=> String, one of "confirming", "verifying", "pending", "available", "down", "deleting", "deleted", "rejected"
796
- # resp.customer_router_config #=> String
797
- # resp.virtual_gateway_id #=> String
798
- # resp.route_filter_prefixes #=> Array
799
- # resp.route_filter_prefixes[0].cidr #=> String
800
- # resp.bgp_peers #=> Array
801
- # resp.bgp_peers[0].asn #=> Integer
802
- # resp.bgp_peers[0].auth_key #=> String
803
- # resp.bgp_peers[0].address_family #=> String, one of "ipv4", "ipv6"
804
- # resp.bgp_peers[0].amazon_address #=> String
805
- # resp.bgp_peers[0].customer_address #=> String
806
- # resp.bgp_peers[0].bgp_peer_state #=> String, one of "verifying", "pending", "available", "deleting", "deleted"
807
- # resp.bgp_peers[0].bgp_status #=> String, one of "up", "down"
808
- # @overload create_private_virtual_interface(params = {})
809
- # @param [Hash] params ({})
810
- def create_private_virtual_interface(params = {}, options = {})
811
- req = build_request(:create_private_virtual_interface, params)
812
- req.send_request(options)
813
- end
897
+ # Accept ownership of a public virtual interface created by another
898
+ # customer.
899
+ #
900
+ # After the virtual interface owner calls this function, the specified
901
+ # virtual interface will be created and made available for handling
902
+ # traffic.
903
+ #
904
+ # @option params [required, String] :virtual_interface_id
905
+ # The ID of the virtual interface.
906
+ #
907
+ # Example: dxvif-123dfg56
908
+ #
909
+ # Default: None
910
+ #
911
+ # @return [Types::ConfirmPublicVirtualInterfaceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
912
+ #
913
+ # * {Types::ConfirmPublicVirtualInterfaceResponse#virtual_interface_state #virtual_interface_state} => String
914
+ #
915
+ # @example Request syntax with placeholder values
916
+ #
917
+ # resp = client.confirm_public_virtual_interface({
918
+ # virtual_interface_id: "VirtualInterfaceId", # required
919
+ # })
920
+ #
921
+ # @example Response structure
922
+ #
923
+ # resp.virtual_interface_state #=> String, one of "confirming", "verifying", "pending", "available", "down", "deleting", "deleted", "rejected"
924
+ #
925
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/ConfirmPublicVirtualInterface AWS API Documentation
926
+ #
927
+ # @overload confirm_public_virtual_interface(params = {})
928
+ # @param [Hash] params ({})
929
+ def confirm_public_virtual_interface(params = {}, options = {})
930
+ req = build_request(:confirm_public_virtual_interface, params)
931
+ req.send_request(options)
932
+ end
814
933
 
815
- # Creates a new public virtual interface. A virtual interface is the
816
- # VLAN that transports AWS Direct Connect traffic. A public virtual
817
- # interface supports sending traffic to public services of AWS such as
818
- # Amazon Simple Storage Service (Amazon S3).
819
- #
820
- # When creating an IPv6 public virtual interface (addressFamily is
821
- # 'ipv6'), the customer and amazon address fields should be left blank
822
- # to use auto-assigned IPv6 space. Custom IPv6 Addresses are currently
823
- # not supported.
824
- # @option params [required, String] :connection_id
825
- # ID of the connection.
826
- #
827
- # Example: dxcon-fg5678gh
828
- #
829
- # Default: None
830
- # @option params [required, Types::NewPublicVirtualInterface] :new_public_virtual_interface
831
- # Detailed information for the public virtual interface to be created.
832
- #
833
- # Default: None
834
- # @return [Types::VirtualInterface] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
835
- #
836
- # * {Types::VirtualInterface#owner_account #ownerAccount} => String
837
- # * {Types::VirtualInterface#virtual_interface_id #virtualInterfaceId} => String
838
- # * {Types::VirtualInterface#location #location} => String
839
- # * {Types::VirtualInterface#connection_id #connectionId} => String
840
- # * {Types::VirtualInterface#virtual_interface_type #virtualInterfaceType} => String
841
- # * {Types::VirtualInterface#virtual_interface_name #virtualInterfaceName} => String
842
- # * {Types::VirtualInterface#vlan #vlan} => Integer
843
- # * {Types::VirtualInterface#asn #asn} => Integer
844
- # * {Types::VirtualInterface#auth_key #authKey} => String
845
- # * {Types::VirtualInterface#amazon_address #amazonAddress} => String
846
- # * {Types::VirtualInterface#customer_address #customerAddress} => String
847
- # * {Types::VirtualInterface#address_family #addressFamily} => String
848
- # * {Types::VirtualInterface#virtual_interface_state #virtualInterfaceState} => String
849
- # * {Types::VirtualInterface#customer_router_config #customerRouterConfig} => String
850
- # * {Types::VirtualInterface#virtual_gateway_id #virtualGatewayId} => String
851
- # * {Types::VirtualInterface#route_filter_prefixes #routeFilterPrefixes} => Array&lt;Types::RouteFilterPrefix&gt;
852
- # * {Types::VirtualInterface#bgp_peers #bgpPeers} => Array&lt;Types::BGPPeer&gt;
853
- #
854
- # @example Request syntax with placeholder values
855
- # resp = client.create_public_virtual_interface({
856
- # connection_id: "ConnectionId", # required
857
- # new_public_virtual_interface: { # required
858
- # virtual_interface_name: "VirtualInterfaceName", # required
859
- # vlan: 1, # required
860
- # asn: 1, # required
861
- # auth_key: "BGPAuthKey",
862
- # amazon_address: "AmazonAddress",
863
- # customer_address: "CustomerAddress",
864
- # address_family: "ipv4", # accepts ipv4, ipv6
865
- # route_filter_prefixes: [
866
- # {
867
- # cidr: "CIDR",
868
- # },
869
- # ],
870
- # },
871
- # })
872
- #
873
- # @example Response structure
874
- # resp.owner_account #=> String
875
- # resp.virtual_interface_id #=> String
876
- # resp.location #=> String
877
- # resp.connection_id #=> String
878
- # resp.virtual_interface_type #=> String
879
- # resp.virtual_interface_name #=> String
880
- # resp.vlan #=> Integer
881
- # resp.asn #=> Integer
882
- # resp.auth_key #=> String
883
- # resp.amazon_address #=> String
884
- # resp.customer_address #=> String
885
- # resp.address_family #=> String, one of "ipv4", "ipv6"
886
- # resp.virtual_interface_state #=> String, one of "confirming", "verifying", "pending", "available", "down", "deleting", "deleted", "rejected"
887
- # resp.customer_router_config #=> String
888
- # resp.virtual_gateway_id #=> String
889
- # resp.route_filter_prefixes #=> Array
890
- # resp.route_filter_prefixes[0].cidr #=> String
891
- # resp.bgp_peers #=> Array
892
- # resp.bgp_peers[0].asn #=> Integer
893
- # resp.bgp_peers[0].auth_key #=> String
894
- # resp.bgp_peers[0].address_family #=> String, one of "ipv4", "ipv6"
895
- # resp.bgp_peers[0].amazon_address #=> String
896
- # resp.bgp_peers[0].customer_address #=> String
897
- # resp.bgp_peers[0].bgp_peer_state #=> String, one of "verifying", "pending", "available", "deleting", "deleted"
898
- # resp.bgp_peers[0].bgp_status #=> String, one of "up", "down"
899
- # @overload create_public_virtual_interface(params = {})
900
- # @param [Hash] params ({})
901
- def create_public_virtual_interface(params = {}, options = {})
902
- req = build_request(:create_public_virtual_interface, params)
903
- req.send_request(options)
904
- end
934
+ # Creates a new BGP peer on a specified virtual interface. The BGP peer
935
+ # cannot be in the same address family (IPv4/IPv6) of an existing BGP
936
+ # peer on the virtual interface.
937
+ #
938
+ # You must create a BGP peer for the corresponding address family in
939
+ # order to access AWS resources that also use that address family.
940
+ #
941
+ # When creating a IPv6 BGP peer, the Amazon address and customer address
942
+ # fields must be left blank. IPv6 addresses are automatically assigned
943
+ # from Amazon's pool of IPv6 addresses; you cannot specify custom IPv6
944
+ # addresses.
945
+ #
946
+ # For a public virtual interface, the Autonomous System Number (ASN)
947
+ # must be private or already whitelisted for the virtual interface.
948
+ #
949
+ # @option params [String] :virtual_interface_id
950
+ # The ID of the virtual interface on which the BGP peer will be
951
+ # provisioned.
952
+ #
953
+ # Example: dxvif-456abc78
954
+ #
955
+ # Default: None
956
+ #
957
+ # @option params [Types::NewBGPPeer] :new_bgp_peer
958
+ # Detailed information for the BGP peer to be created.
959
+ #
960
+ # Default: None
961
+ #
962
+ # @return [Types::CreateBGPPeerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
963
+ #
964
+ # * {Types::CreateBGPPeerResponse#virtual_interface #virtual_interface} => Types::VirtualInterface
965
+ #
966
+ # @example Request syntax with placeholder values
967
+ #
968
+ # resp = client.create_bgp_peer({
969
+ # virtual_interface_id: "VirtualInterfaceId",
970
+ # new_bgp_peer: {
971
+ # asn: 1,
972
+ # auth_key: "BGPAuthKey",
973
+ # address_family: "ipv4", # accepts ipv4, ipv6
974
+ # amazon_address: "AmazonAddress",
975
+ # customer_address: "CustomerAddress",
976
+ # },
977
+ # })
978
+ #
979
+ # @example Response structure
980
+ #
981
+ # resp.virtual_interface.owner_account #=> String
982
+ # resp.virtual_interface.virtual_interface_id #=> String
983
+ # resp.virtual_interface.location #=> String
984
+ # resp.virtual_interface.connection_id #=> String
985
+ # resp.virtual_interface.virtual_interface_type #=> String
986
+ # resp.virtual_interface.virtual_interface_name #=> String
987
+ # resp.virtual_interface.vlan #=> Integer
988
+ # resp.virtual_interface.asn #=> Integer
989
+ # resp.virtual_interface.auth_key #=> String
990
+ # resp.virtual_interface.amazon_address #=> String
991
+ # resp.virtual_interface.customer_address #=> String
992
+ # resp.virtual_interface.address_family #=> String, one of "ipv4", "ipv6"
993
+ # resp.virtual_interface.virtual_interface_state #=> String, one of "confirming", "verifying", "pending", "available", "down", "deleting", "deleted", "rejected"
994
+ # resp.virtual_interface.customer_router_config #=> String
995
+ # resp.virtual_interface.virtual_gateway_id #=> String
996
+ # resp.virtual_interface.route_filter_prefixes #=> Array
997
+ # resp.virtual_interface.route_filter_prefixes[0].cidr #=> String
998
+ # resp.virtual_interface.bgp_peers #=> Array
999
+ # resp.virtual_interface.bgp_peers[0].asn #=> Integer
1000
+ # resp.virtual_interface.bgp_peers[0].auth_key #=> String
1001
+ # resp.virtual_interface.bgp_peers[0].address_family #=> String, one of "ipv4", "ipv6"
1002
+ # resp.virtual_interface.bgp_peers[0].amazon_address #=> String
1003
+ # resp.virtual_interface.bgp_peers[0].customer_address #=> String
1004
+ # resp.virtual_interface.bgp_peers[0].bgp_peer_state #=> String, one of "verifying", "pending", "available", "deleting", "deleted"
1005
+ # resp.virtual_interface.bgp_peers[0].bgp_status #=> String, one of "up", "down"
1006
+ #
1007
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/CreateBGPPeer AWS API Documentation
1008
+ #
1009
+ # @overload create_bgp_peer(params = {})
1010
+ # @param [Hash] params ({})
1011
+ def create_bgp_peer(params = {}, options = {})
1012
+ req = build_request(:create_bgp_peer, params)
1013
+ req.send_request(options)
1014
+ end
905
1015
 
906
- # Deletes a BGP peer on the specified virtual interface that matches the
907
- # specified customer address and ASN. You cannot delete the last BGP
908
- # peer from a virtual interface.
909
- # @option params [String] :virtual_interface_id
910
- # The ID of the virtual interface from which the BGP peer will be
911
- # deleted.
912
- #
913
- # Example: dxvif-456abc78
914
- #
915
- # Default: None
916
- # @option params [Integer] :asn
917
- # Autonomous system (AS) number for Border Gateway Protocol (BGP)
918
- # configuration.
919
- #
920
- # Example: 65000
921
- # @option params [String] :customer_address
922
- # IP address assigned to the customer interface.
923
- #
924
- # Example: 192.168.1.2/30 or 2001:db8::2/125
925
- # @return [Types::DeleteBGPPeerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
926
- #
927
- # * {Types::DeleteBGPPeerResponse#virtual_interface #virtualInterface} => Types::VirtualInterface
928
- #
929
- # @example Request syntax with placeholder values
930
- # resp = client.delete_bgp_peer({
931
- # virtual_interface_id: "VirtualInterfaceId",
932
- # asn: 1,
933
- # customer_address: "CustomerAddress",
934
- # })
935
- #
936
- # @example Response structure
937
- # resp.virtual_interface.owner_account #=> String
938
- # resp.virtual_interface.virtual_interface_id #=> String
939
- # resp.virtual_interface.location #=> String
940
- # resp.virtual_interface.connection_id #=> String
941
- # resp.virtual_interface.virtual_interface_type #=> String
942
- # resp.virtual_interface.virtual_interface_name #=> String
943
- # resp.virtual_interface.vlan #=> Integer
944
- # resp.virtual_interface.asn #=> Integer
945
- # resp.virtual_interface.auth_key #=> String
946
- # resp.virtual_interface.amazon_address #=> String
947
- # resp.virtual_interface.customer_address #=> String
948
- # resp.virtual_interface.address_family #=> String, one of "ipv4", "ipv6"
949
- # resp.virtual_interface.virtual_interface_state #=> String, one of "confirming", "verifying", "pending", "available", "down", "deleting", "deleted", "rejected"
950
- # resp.virtual_interface.customer_router_config #=> String
951
- # resp.virtual_interface.virtual_gateway_id #=> String
952
- # resp.virtual_interface.route_filter_prefixes #=> Array
953
- # resp.virtual_interface.route_filter_prefixes[0].cidr #=> String
954
- # resp.virtual_interface.bgp_peers #=> Array
955
- # resp.virtual_interface.bgp_peers[0].asn #=> Integer
956
- # resp.virtual_interface.bgp_peers[0].auth_key #=> String
957
- # resp.virtual_interface.bgp_peers[0].address_family #=> String, one of "ipv4", "ipv6"
958
- # resp.virtual_interface.bgp_peers[0].amazon_address #=> String
959
- # resp.virtual_interface.bgp_peers[0].customer_address #=> String
960
- # resp.virtual_interface.bgp_peers[0].bgp_peer_state #=> String, one of "verifying", "pending", "available", "deleting", "deleted"
961
- # resp.virtual_interface.bgp_peers[0].bgp_status #=> String, one of "up", "down"
962
- # @overload delete_bgp_peer(params = {})
963
- # @param [Hash] params ({})
964
- def delete_bgp_peer(params = {}, options = {})
965
- req = build_request(:delete_bgp_peer, params)
966
- req.send_request(options)
967
- end
1016
+ # Creates a new connection between the customer network and a specific
1017
+ # AWS Direct Connect location.
1018
+ #
1019
+ # A connection links your internal network to an AWS Direct Connect
1020
+ # location over a standard 1 gigabit or 10 gigabit Ethernet fiber-optic
1021
+ # cable. One end of the cable is connected to your router, the other to
1022
+ # an AWS Direct Connect router. An AWS Direct Connect location provides
1023
+ # access to Amazon Web Services in the region it is associated with. You
1024
+ # can establish connections with AWS Direct Connect locations in
1025
+ # multiple regions, but a connection in one region does not provide
1026
+ # connectivity to other regions.
1027
+ #
1028
+ # You can automatically add the new connection to a link aggregation
1029
+ # group (LAG) by specifying a LAG ID in the request. This ensures that
1030
+ # the new connection is allocated on the same AWS Direct Connect
1031
+ # endpoint that hosts the specified LAG. If there are no available ports
1032
+ # on the endpoint, the request fails and no connection will be created.
1033
+ #
1034
+ # @option params [required, String] :location
1035
+ # Where the connection is located.
1036
+ #
1037
+ # Example: EqSV5
1038
+ #
1039
+ # Default: None
1040
+ #
1041
+ # @option params [required, String] :bandwidth
1042
+ # Bandwidth of the connection.
1043
+ #
1044
+ # Example: 1Gbps
1045
+ #
1046
+ # Default: None
1047
+ #
1048
+ # @option params [required, String] :connection_name
1049
+ # The name of the connection.
1050
+ #
1051
+ # Example: "*My Connection to AWS*"
1052
+ #
1053
+ # Default: None
1054
+ #
1055
+ # @option params [String] :lag_id
1056
+ # The ID of the LAG.
1057
+ #
1058
+ # Example: dxlag-fg5678gh
1059
+ #
1060
+ # @return [Types::Connection] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1061
+ #
1062
+ # * {Types::Connection#owner_account #owner_account} => String
1063
+ # * {Types::Connection#connection_id #connection_id} => String
1064
+ # * {Types::Connection#connection_name #connection_name} => String
1065
+ # * {Types::Connection#connection_state #connection_state} => String
1066
+ # * {Types::Connection#region #region} => String
1067
+ # * {Types::Connection#location #location} => String
1068
+ # * {Types::Connection#bandwidth #bandwidth} => String
1069
+ # * {Types::Connection#vlan #vlan} => Integer
1070
+ # * {Types::Connection#partner_name #partner_name} => String
1071
+ # * {Types::Connection#loa_issue_time #loa_issue_time} => Time
1072
+ # * {Types::Connection#lag_id #lag_id} => String
1073
+ # * {Types::Connection#aws_device #aws_device} => String
1074
+ #
1075
+ # @example Request syntax with placeholder values
1076
+ #
1077
+ # resp = client.create_connection({
1078
+ # location: "LocationCode", # required
1079
+ # bandwidth: "Bandwidth", # required
1080
+ # connection_name: "ConnectionName", # required
1081
+ # lag_id: "LagId",
1082
+ # })
1083
+ #
1084
+ # @example Response structure
1085
+ #
1086
+ # resp.owner_account #=> String
1087
+ # resp.connection_id #=> String
1088
+ # resp.connection_name #=> String
1089
+ # resp.connection_state #=> String, one of "ordering", "requested", "pending", "available", "down", "deleting", "deleted", "rejected"
1090
+ # resp.region #=> String
1091
+ # resp.location #=> String
1092
+ # resp.bandwidth #=> String
1093
+ # resp.vlan #=> Integer
1094
+ # resp.partner_name #=> String
1095
+ # resp.loa_issue_time #=> Time
1096
+ # resp.lag_id #=> String
1097
+ # resp.aws_device #=> String
1098
+ #
1099
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/CreateConnection AWS API Documentation
1100
+ #
1101
+ # @overload create_connection(params = {})
1102
+ # @param [Hash] params ({})
1103
+ def create_connection(params = {}, options = {})
1104
+ req = build_request(:create_connection, params)
1105
+ req.send_request(options)
1106
+ end
968
1107
 
969
- # Deletes the connection.
970
- #
971
- # Deleting a connection only stops the AWS Direct Connect port hour and
972
- # data transfer charges. You need to cancel separately with the
973
- # providers any services or charges for cross-connects or network
974
- # circuits that connect you to the AWS Direct Connect location.
975
- # @option params [required, String] :connection_id
976
- # ID of the connection.
977
- #
978
- # Example: dxcon-fg5678gh
979
- #
980
- # Default: None
981
- # @return [Types::Connection] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
982
- #
983
- # * {Types::Connection#owner_account #ownerAccount} => String
984
- # * {Types::Connection#connection_id #connectionId} => String
985
- # * {Types::Connection#connection_name #connectionName} => String
986
- # * {Types::Connection#connection_state #connectionState} => String
987
- # * {Types::Connection#region #region} => String
988
- # * {Types::Connection#location #location} => String
989
- # * {Types::Connection#bandwidth #bandwidth} => String
990
- # * {Types::Connection#vlan #vlan} => Integer
991
- # * {Types::Connection#partner_name #partnerName} => String
992
- # * {Types::Connection#loa_issue_time #loaIssueTime} => Time
993
- #
994
- # @example Request syntax with placeholder values
995
- # resp = client.delete_connection({
996
- # connection_id: "ConnectionId", # required
997
- # })
998
- #
999
- # @example Response structure
1000
- # resp.owner_account #=> String
1001
- # resp.connection_id #=> String
1002
- # resp.connection_name #=> String
1003
- # resp.connection_state #=> String, one of "ordering", "requested", "pending", "available", "down", "deleting", "deleted", "rejected"
1004
- # resp.region #=> String
1005
- # resp.location #=> String
1006
- # resp.bandwidth #=> String
1007
- # resp.vlan #=> Integer
1008
- # resp.partner_name #=> String
1009
- # resp.loa_issue_time #=> Time
1010
- # @overload delete_connection(params = {})
1011
- # @param [Hash] params ({})
1012
- def delete_connection(params = {}, options = {})
1013
- req = build_request(:delete_connection, params)
1014
- req.send_request(options)
1015
- end
1108
+ # Creates a new interconnect between a AWS Direct Connect partner's
1109
+ # network and a specific AWS Direct Connect location.
1110
+ #
1111
+ # An interconnect is a connection which is capable of hosting other
1112
+ # connections. The AWS Direct Connect partner can use an interconnect to
1113
+ # provide sub-1Gbps AWS Direct Connect service to tier 2 customers who
1114
+ # do not have their own connections. Like a standard connection, an
1115
+ # interconnect links the AWS Direct Connect partner's network to an AWS
1116
+ # Direct Connect location over a standard 1 Gbps or 10 Gbps Ethernet
1117
+ # fiber-optic cable. One end is connected to the partner's router, the
1118
+ # other to an AWS Direct Connect router.
1119
+ #
1120
+ # You can automatically add the new interconnect to a link aggregation
1121
+ # group (LAG) by specifying a LAG ID in the request. This ensures that
1122
+ # the new interconnect is allocated on the same AWS Direct Connect
1123
+ # endpoint that hosts the specified LAG. If there are no available ports
1124
+ # on the endpoint, the request fails and no interconnect will be
1125
+ # created.
1126
+ #
1127
+ # For each end customer, the AWS Direct Connect partner provisions a
1128
+ # connection on their interconnect by calling
1129
+ # AllocateConnectionOnInterconnect. The end customer can then connect to
1130
+ # AWS resources by creating a virtual interface on their connection,
1131
+ # using the VLAN assigned to them by the AWS Direct Connect partner.
1132
+ #
1133
+ # <note markdown="1"> This is intended for use by AWS Direct Connect partners only.
1134
+ #
1135
+ # </note>
1136
+ #
1137
+ # @option params [required, String] :interconnect_name
1138
+ # The name of the interconnect.
1139
+ #
1140
+ # Example: "*1G Interconnect to AWS*"
1141
+ #
1142
+ # Default: None
1143
+ #
1144
+ # @option params [required, String] :bandwidth
1145
+ # The port bandwidth
1146
+ #
1147
+ # Example: 1Gbps
1148
+ #
1149
+ # Default: None
1150
+ #
1151
+ # Available values: 1Gbps,10Gbps
1152
+ #
1153
+ # @option params [required, String] :location
1154
+ # Where the interconnect is located
1155
+ #
1156
+ # Example: EqSV5
1157
+ #
1158
+ # Default: None
1159
+ #
1160
+ # @option params [String] :lag_id
1161
+ # The ID of the LAG.
1162
+ #
1163
+ # Example: dxlag-fg5678gh
1164
+ #
1165
+ # @return [Types::Interconnect] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1166
+ #
1167
+ # * {Types::Interconnect#interconnect_id #interconnect_id} => String
1168
+ # * {Types::Interconnect#interconnect_name #interconnect_name} => String
1169
+ # * {Types::Interconnect#interconnect_state #interconnect_state} => String
1170
+ # * {Types::Interconnect#region #region} => String
1171
+ # * {Types::Interconnect#location #location} => String
1172
+ # * {Types::Interconnect#bandwidth #bandwidth} => String
1173
+ # * {Types::Interconnect#loa_issue_time #loa_issue_time} => Time
1174
+ # * {Types::Interconnect#lag_id #lag_id} => String
1175
+ # * {Types::Interconnect#aws_device #aws_device} => String
1176
+ #
1177
+ # @example Request syntax with placeholder values
1178
+ #
1179
+ # resp = client.create_interconnect({
1180
+ # interconnect_name: "InterconnectName", # required
1181
+ # bandwidth: "Bandwidth", # required
1182
+ # location: "LocationCode", # required
1183
+ # lag_id: "LagId",
1184
+ # })
1185
+ #
1186
+ # @example Response structure
1187
+ #
1188
+ # resp.interconnect_id #=> String
1189
+ # resp.interconnect_name #=> String
1190
+ # resp.interconnect_state #=> String, one of "requested", "pending", "available", "down", "deleting", "deleted"
1191
+ # resp.region #=> String
1192
+ # resp.location #=> String
1193
+ # resp.bandwidth #=> String
1194
+ # resp.loa_issue_time #=> Time
1195
+ # resp.lag_id #=> String
1196
+ # resp.aws_device #=> String
1197
+ #
1198
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/CreateInterconnect AWS API Documentation
1199
+ #
1200
+ # @overload create_interconnect(params = {})
1201
+ # @param [Hash] params ({})
1202
+ def create_interconnect(params = {}, options = {})
1203
+ req = build_request(:create_interconnect, params)
1204
+ req.send_request(options)
1205
+ end
1016
1206
 
1017
- # Deletes the specified interconnect.
1018
- #
1019
- # <note markdown="1"> This is intended for use by AWS Direct Connect partners only.
1020
- #
1021
- # </note>
1022
- # @option params [required, String] :interconnect_id
1023
- # The ID of the interconnect.
1024
- #
1025
- # Example: dxcon-abc123
1026
- # @return [Types::DeleteInterconnectResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1027
- #
1028
- # * {Types::DeleteInterconnectResponse#interconnect_state #interconnectState} => String
1029
- #
1030
- # @example Request syntax with placeholder values
1031
- # resp = client.delete_interconnect({
1032
- # interconnect_id: "InterconnectId", # required
1033
- # })
1034
- #
1035
- # @example Response structure
1036
- # resp.interconnect_state #=> String, one of "requested", "pending", "available", "down", "deleting", "deleted"
1037
- # @overload delete_interconnect(params = {})
1038
- # @param [Hash] params ({})
1039
- def delete_interconnect(params = {}, options = {})
1040
- req = build_request(:delete_interconnect, params)
1041
- req.send_request(options)
1042
- end
1207
+ # Creates a new link aggregation group (LAG) with the specified number
1208
+ # of bundled physical connections between the customer network and a
1209
+ # specific AWS Direct Connect location. A LAG is a logical interface
1210
+ # that uses the Link Aggregation Control Protocol (LACP) to aggregate
1211
+ # multiple 1 gigabit or 10 gigabit interfaces, allowing you to treat
1212
+ # them as a single interface.
1213
+ #
1214
+ # All connections in a LAG must use the same bandwidth (for example, 10
1215
+ # Gbps), and must terminate at the same AWS Direct Connect endpoint.
1216
+ #
1217
+ # You can have up to 10 connections per LAG. Regardless of this limit,
1218
+ # if you request more connections for the LAG than AWS Direct Connect
1219
+ # can allocate on a single endpoint, no LAG is created.
1220
+ #
1221
+ # You can specify an existing physical connection or interconnect to
1222
+ # include in the LAG (which counts towards the total number of
1223
+ # connections). Doing so interrupts the current physical connection or
1224
+ # hosted connections, and re-establishes them as a member of the LAG.
1225
+ # The LAG will be created on the same AWS Direct Connect endpoint to
1226
+ # which the connection terminates. Any virtual interfaces associated
1227
+ # with the connection are automatically disassociated and re-associated
1228
+ # with the LAG. The connection ID does not change.
1229
+ #
1230
+ # If the AWS account used to create a LAG is a registered AWS Direct
1231
+ # Connect partner, the LAG is automatically enabled to host
1232
+ # sub-connections. For a LAG owned by a partner, any associated virtual
1233
+ # interfaces cannot be directly configured.
1234
+ #
1235
+ # @option params [required, Integer] :number_of_connections
1236
+ # The number of physical connections initially provisioned and bundled
1237
+ # by the LAG.
1238
+ #
1239
+ # Default: None
1240
+ #
1241
+ # @option params [required, String] :location
1242
+ # The AWS Direct Connect location in which the LAG should be allocated.
1243
+ #
1244
+ # Example: EqSV5
1245
+ #
1246
+ # Default: None
1247
+ #
1248
+ # @option params [required, String] :connections_bandwidth
1249
+ # The bandwidth of the individual physical connections bundled by the
1250
+ # LAG.
1251
+ #
1252
+ # Default: None
1253
+ #
1254
+ # Available values: 1Gbps, 10Gbps
1255
+ #
1256
+ # @option params [required, String] :lag_name
1257
+ # The name of the LAG.
1258
+ #
1259
+ # Example: "`3x10G LAG to AWS`"
1260
+ #
1261
+ # Default: None
1262
+ #
1263
+ # @option params [String] :connection_id
1264
+ # The ID of an existing connection to migrate to the LAG.
1265
+ #
1266
+ # Default: None
1267
+ #
1268
+ # @return [Types::Lag] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1269
+ #
1270
+ # * {Types::Lag#connections_bandwidth #connections_bandwidth} => String
1271
+ # * {Types::Lag#number_of_connections #number_of_connections} => Integer
1272
+ # * {Types::Lag#lag_id #lag_id} => String
1273
+ # * {Types::Lag#owner_account #owner_account} => String
1274
+ # * {Types::Lag#lag_name #lag_name} => String
1275
+ # * {Types::Lag#lag_state #lag_state} => String
1276
+ # * {Types::Lag#location #location} => String
1277
+ # * {Types::Lag#region #region} => String
1278
+ # * {Types::Lag#minimum_links #minimum_links} => Integer
1279
+ # * {Types::Lag#aws_device #aws_device} => String
1280
+ # * {Types::Lag#connections #connections} => Array&lt;Types::Connection&gt;
1281
+ # * {Types::Lag#allows_hosted_connections #allows_hosted_connections} => Boolean
1282
+ #
1283
+ # @example Request syntax with placeholder values
1284
+ #
1285
+ # resp = client.create_lag({
1286
+ # number_of_connections: 1, # required
1287
+ # location: "LocationCode", # required
1288
+ # connections_bandwidth: "Bandwidth", # required
1289
+ # lag_name: "LagName", # required
1290
+ # connection_id: "ConnectionId",
1291
+ # })
1292
+ #
1293
+ # @example Response structure
1294
+ #
1295
+ # resp.connections_bandwidth #=> String
1296
+ # resp.number_of_connections #=> Integer
1297
+ # resp.lag_id #=> String
1298
+ # resp.owner_account #=> String
1299
+ # resp.lag_name #=> String
1300
+ # resp.lag_state #=> String, one of "requested", "pending", "available", "down", "deleting", "deleted"
1301
+ # resp.location #=> String
1302
+ # resp.region #=> String
1303
+ # resp.minimum_links #=> Integer
1304
+ # resp.aws_device #=> String
1305
+ # resp.connections #=> Array
1306
+ # resp.connections[0].owner_account #=> String
1307
+ # resp.connections[0].connection_id #=> String
1308
+ # resp.connections[0].connection_name #=> String
1309
+ # resp.connections[0].connection_state #=> String, one of "ordering", "requested", "pending", "available", "down", "deleting", "deleted", "rejected"
1310
+ # resp.connections[0].region #=> String
1311
+ # resp.connections[0].location #=> String
1312
+ # resp.connections[0].bandwidth #=> String
1313
+ # resp.connections[0].vlan #=> Integer
1314
+ # resp.connections[0].partner_name #=> String
1315
+ # resp.connections[0].loa_issue_time #=> Time
1316
+ # resp.connections[0].lag_id #=> String
1317
+ # resp.connections[0].aws_device #=> String
1318
+ # resp.allows_hosted_connections #=> Boolean
1319
+ #
1320
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/CreateLag AWS API Documentation
1321
+ #
1322
+ # @overload create_lag(params = {})
1323
+ # @param [Hash] params ({})
1324
+ def create_lag(params = {}, options = {})
1325
+ req = build_request(:create_lag, params)
1326
+ req.send_request(options)
1327
+ end
1043
1328
 
1044
- # Deletes a virtual interface.
1045
- # @option params [required, String] :virtual_interface_id
1046
- # ID of the virtual interface.
1047
- #
1048
- # Example: dxvif-123dfg56
1049
- #
1050
- # Default: None
1051
- # @return [Types::DeleteVirtualInterfaceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1052
- #
1053
- # * {Types::DeleteVirtualInterfaceResponse#virtual_interface_state #virtualInterfaceState} => String
1054
- #
1055
- # @example Request syntax with placeholder values
1056
- # resp = client.delete_virtual_interface({
1057
- # virtual_interface_id: "VirtualInterfaceId", # required
1058
- # })
1059
- #
1060
- # @example Response structure
1061
- # resp.virtual_interface_state #=> String, one of "confirming", "verifying", "pending", "available", "down", "deleting", "deleted", "rejected"
1062
- # @overload delete_virtual_interface(params = {})
1063
- # @param [Hash] params ({})
1064
- def delete_virtual_interface(params = {}, options = {})
1065
- req = build_request(:delete_virtual_interface, params)
1066
- req.send_request(options)
1067
- end
1329
+ # Creates a new private virtual interface. A virtual interface is the
1330
+ # VLAN that transports AWS Direct Connect traffic. A private virtual
1331
+ # interface supports sending traffic to a single virtual private cloud
1332
+ # (VPC).
1333
+ #
1334
+ # @option params [required, String] :connection_id
1335
+ # The ID of the connection. This field is also used as the ID type for
1336
+ # operations that use multiple connection types (LAG, interconnect,
1337
+ # and/or connection).
1338
+ #
1339
+ # Example: dxcon-fg5678gh
1340
+ #
1341
+ # Default: None
1342
+ #
1343
+ # @option params [required, Types::NewPrivateVirtualInterface] :new_private_virtual_interface
1344
+ # Detailed information for the private virtual interface to be created.
1345
+ #
1346
+ # Default: None
1347
+ #
1348
+ # @return [Types::VirtualInterface] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1349
+ #
1350
+ # * {Types::VirtualInterface#owner_account #owner_account} => String
1351
+ # * {Types::VirtualInterface#virtual_interface_id #virtual_interface_id} => String
1352
+ # * {Types::VirtualInterface#location #location} => String
1353
+ # * {Types::VirtualInterface#connection_id #connection_id} => String
1354
+ # * {Types::VirtualInterface#virtual_interface_type #virtual_interface_type} => String
1355
+ # * {Types::VirtualInterface#virtual_interface_name #virtual_interface_name} => String
1356
+ # * {Types::VirtualInterface#vlan #vlan} => Integer
1357
+ # * {Types::VirtualInterface#asn #asn} => Integer
1358
+ # * {Types::VirtualInterface#auth_key #auth_key} => String
1359
+ # * {Types::VirtualInterface#amazon_address #amazon_address} => String
1360
+ # * {Types::VirtualInterface#customer_address #customer_address} => String
1361
+ # * {Types::VirtualInterface#address_family #address_family} => String
1362
+ # * {Types::VirtualInterface#virtual_interface_state #virtual_interface_state} => String
1363
+ # * {Types::VirtualInterface#customer_router_config #customer_router_config} => String
1364
+ # * {Types::VirtualInterface#virtual_gateway_id #virtual_gateway_id} => String
1365
+ # * {Types::VirtualInterface#route_filter_prefixes #route_filter_prefixes} => Array&lt;Types::RouteFilterPrefix&gt;
1366
+ # * {Types::VirtualInterface#bgp_peers #bgp_peers} => Array&lt;Types::BGPPeer&gt;
1367
+ #
1368
+ # @example Request syntax with placeholder values
1369
+ #
1370
+ # resp = client.create_private_virtual_interface({
1371
+ # connection_id: "ConnectionId", # required
1372
+ # new_private_virtual_interface: { # required
1373
+ # virtual_interface_name: "VirtualInterfaceName", # required
1374
+ # vlan: 1, # required
1375
+ # asn: 1, # required
1376
+ # auth_key: "BGPAuthKey",
1377
+ # amazon_address: "AmazonAddress",
1378
+ # customer_address: "CustomerAddress",
1379
+ # address_family: "ipv4", # accepts ipv4, ipv6
1380
+ # virtual_gateway_id: "VirtualGatewayId", # required
1381
+ # },
1382
+ # })
1383
+ #
1384
+ # @example Response structure
1385
+ #
1386
+ # resp.owner_account #=> String
1387
+ # resp.virtual_interface_id #=> String
1388
+ # resp.location #=> String
1389
+ # resp.connection_id #=> String
1390
+ # resp.virtual_interface_type #=> String
1391
+ # resp.virtual_interface_name #=> String
1392
+ # resp.vlan #=> Integer
1393
+ # resp.asn #=> Integer
1394
+ # resp.auth_key #=> String
1395
+ # resp.amazon_address #=> String
1396
+ # resp.customer_address #=> String
1397
+ # resp.address_family #=> String, one of "ipv4", "ipv6"
1398
+ # resp.virtual_interface_state #=> String, one of "confirming", "verifying", "pending", "available", "down", "deleting", "deleted", "rejected"
1399
+ # resp.customer_router_config #=> String
1400
+ # resp.virtual_gateway_id #=> String
1401
+ # resp.route_filter_prefixes #=> Array
1402
+ # resp.route_filter_prefixes[0].cidr #=> String
1403
+ # resp.bgp_peers #=> Array
1404
+ # resp.bgp_peers[0].asn #=> Integer
1405
+ # resp.bgp_peers[0].auth_key #=> String
1406
+ # resp.bgp_peers[0].address_family #=> String, one of "ipv4", "ipv6"
1407
+ # resp.bgp_peers[0].amazon_address #=> String
1408
+ # resp.bgp_peers[0].customer_address #=> String
1409
+ # resp.bgp_peers[0].bgp_peer_state #=> String, one of "verifying", "pending", "available", "deleting", "deleted"
1410
+ # resp.bgp_peers[0].bgp_status #=> String, one of "up", "down"
1411
+ #
1412
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/CreatePrivateVirtualInterface AWS API Documentation
1413
+ #
1414
+ # @overload create_private_virtual_interface(params = {})
1415
+ # @param [Hash] params ({})
1416
+ def create_private_virtual_interface(params = {}, options = {})
1417
+ req = build_request(:create_private_virtual_interface, params)
1418
+ req.send_request(options)
1419
+ end
1068
1420
 
1069
- # Returns the LOA-CFA for a Connection.
1070
- #
1071
- # The Letter of Authorization - Connecting Facility Assignment (LOA-CFA)
1072
- # is a document that your APN partner or service provider uses when
1073
- # establishing your cross connect to AWS at the colocation facility. For
1074
- # more information, see [Requesting Cross Connects at AWS Direct Connect
1075
- # Locations][1] in the AWS Direct Connect user guide.
1076
- #
1077
- #
1078
- #
1079
- # [1]: http://docs.aws.amazon.com/directconnect/latest/UserGuide/Colocation.html
1080
- # @option params [required, String] :connection_id
1081
- # ID of the connection.
1082
- #
1083
- # Example: dxcon-fg5678gh
1084
- #
1085
- # Default: None
1086
- # @option params [String] :provider_name
1087
- # The name of the APN partner or service provider who establishes
1088
- # connectivity on your behalf. If you supply this parameter, the LOA-CFA
1089
- # lists the provider name alongside your company name as the requester
1090
- # of the cross connect.
1091
- #
1092
- # Default: None
1093
- # @option params [String] :loa_content_type
1094
- # A standard media type indicating the content type of the LOA-CFA
1095
- # document. Currently, the only supported value is "application/pdf".
1096
- #
1097
- # Default: application/pdf
1098
- # @return [Types::DescribeConnectionLoaResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1099
- #
1100
- # * {Types::DescribeConnectionLoaResponse#loa #loa} => Types::Loa
1101
- #
1102
- # @example Request syntax with placeholder values
1103
- # resp = client.describe_connection_loa({
1104
- # connection_id: "ConnectionId", # required
1105
- # provider_name: "ProviderName",
1106
- # loa_content_type: "application/pdf", # accepts application/pdf
1107
- # })
1108
- #
1109
- # @example Response structure
1110
- # resp.loa.loa_content #=> String
1111
- # resp.loa.loa_content_type #=> String, one of "application/pdf"
1112
- # @overload describe_connection_loa(params = {})
1113
- # @param [Hash] params ({})
1114
- def describe_connection_loa(params = {}, options = {})
1115
- req = build_request(:describe_connection_loa, params)
1116
- req.send_request(options)
1117
- end
1421
+ # Creates a new public virtual interface. A virtual interface is the
1422
+ # VLAN that transports AWS Direct Connect traffic. A public virtual
1423
+ # interface supports sending traffic to public services of AWS such as
1424
+ # Amazon Simple Storage Service (Amazon S3).
1425
+ #
1426
+ # When creating an IPv6 public virtual interface (addressFamily is
1427
+ # 'ipv6'), the customer and amazon address fields should be left blank
1428
+ # to use auto-assigned IPv6 space. Custom IPv6 Addresses are currently
1429
+ # not supported.
1430
+ #
1431
+ # @option params [required, String] :connection_id
1432
+ # The ID of the connection. This field is also used as the ID type for
1433
+ # operations that use multiple connection types (LAG, interconnect,
1434
+ # and/or connection).
1435
+ #
1436
+ # Example: dxcon-fg5678gh
1437
+ #
1438
+ # Default: None
1439
+ #
1440
+ # @option params [required, Types::NewPublicVirtualInterface] :new_public_virtual_interface
1441
+ # Detailed information for the public virtual interface to be created.
1442
+ #
1443
+ # Default: None
1444
+ #
1445
+ # @return [Types::VirtualInterface] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1446
+ #
1447
+ # * {Types::VirtualInterface#owner_account #owner_account} => String
1448
+ # * {Types::VirtualInterface#virtual_interface_id #virtual_interface_id} => String
1449
+ # * {Types::VirtualInterface#location #location} => String
1450
+ # * {Types::VirtualInterface#connection_id #connection_id} => String
1451
+ # * {Types::VirtualInterface#virtual_interface_type #virtual_interface_type} => String
1452
+ # * {Types::VirtualInterface#virtual_interface_name #virtual_interface_name} => String
1453
+ # * {Types::VirtualInterface#vlan #vlan} => Integer
1454
+ # * {Types::VirtualInterface#asn #asn} => Integer
1455
+ # * {Types::VirtualInterface#auth_key #auth_key} => String
1456
+ # * {Types::VirtualInterface#amazon_address #amazon_address} => String
1457
+ # * {Types::VirtualInterface#customer_address #customer_address} => String
1458
+ # * {Types::VirtualInterface#address_family #address_family} => String
1459
+ # * {Types::VirtualInterface#virtual_interface_state #virtual_interface_state} => String
1460
+ # * {Types::VirtualInterface#customer_router_config #customer_router_config} => String
1461
+ # * {Types::VirtualInterface#virtual_gateway_id #virtual_gateway_id} => String
1462
+ # * {Types::VirtualInterface#route_filter_prefixes #route_filter_prefixes} => Array&lt;Types::RouteFilterPrefix&gt;
1463
+ # * {Types::VirtualInterface#bgp_peers #bgp_peers} => Array&lt;Types::BGPPeer&gt;
1464
+ #
1465
+ # @example Request syntax with placeholder values
1466
+ #
1467
+ # resp = client.create_public_virtual_interface({
1468
+ # connection_id: "ConnectionId", # required
1469
+ # new_public_virtual_interface: { # required
1470
+ # virtual_interface_name: "VirtualInterfaceName", # required
1471
+ # vlan: 1, # required
1472
+ # asn: 1, # required
1473
+ # auth_key: "BGPAuthKey",
1474
+ # amazon_address: "AmazonAddress",
1475
+ # customer_address: "CustomerAddress",
1476
+ # address_family: "ipv4", # accepts ipv4, ipv6
1477
+ # route_filter_prefixes: [
1478
+ # {
1479
+ # cidr: "CIDR",
1480
+ # },
1481
+ # ],
1482
+ # },
1483
+ # })
1484
+ #
1485
+ # @example Response structure
1486
+ #
1487
+ # resp.owner_account #=> String
1488
+ # resp.virtual_interface_id #=> String
1489
+ # resp.location #=> String
1490
+ # resp.connection_id #=> String
1491
+ # resp.virtual_interface_type #=> String
1492
+ # resp.virtual_interface_name #=> String
1493
+ # resp.vlan #=> Integer
1494
+ # resp.asn #=> Integer
1495
+ # resp.auth_key #=> String
1496
+ # resp.amazon_address #=> String
1497
+ # resp.customer_address #=> String
1498
+ # resp.address_family #=> String, one of "ipv4", "ipv6"
1499
+ # resp.virtual_interface_state #=> String, one of "confirming", "verifying", "pending", "available", "down", "deleting", "deleted", "rejected"
1500
+ # resp.customer_router_config #=> String
1501
+ # resp.virtual_gateway_id #=> String
1502
+ # resp.route_filter_prefixes #=> Array
1503
+ # resp.route_filter_prefixes[0].cidr #=> String
1504
+ # resp.bgp_peers #=> Array
1505
+ # resp.bgp_peers[0].asn #=> Integer
1506
+ # resp.bgp_peers[0].auth_key #=> String
1507
+ # resp.bgp_peers[0].address_family #=> String, one of "ipv4", "ipv6"
1508
+ # resp.bgp_peers[0].amazon_address #=> String
1509
+ # resp.bgp_peers[0].customer_address #=> String
1510
+ # resp.bgp_peers[0].bgp_peer_state #=> String, one of "verifying", "pending", "available", "deleting", "deleted"
1511
+ # resp.bgp_peers[0].bgp_status #=> String, one of "up", "down"
1512
+ #
1513
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/CreatePublicVirtualInterface AWS API Documentation
1514
+ #
1515
+ # @overload create_public_virtual_interface(params = {})
1516
+ # @param [Hash] params ({})
1517
+ def create_public_virtual_interface(params = {}, options = {})
1518
+ req = build_request(:create_public_virtual_interface, params)
1519
+ req.send_request(options)
1520
+ end
1118
1521
 
1119
- # Displays all connections in this region.
1120
- #
1121
- # If a connection ID is provided, the call returns only that particular
1122
- # connection.
1123
- # @option params [String] :connection_id
1124
- # ID of the connection.
1125
- #
1126
- # Example: dxcon-fg5678gh
1127
- #
1128
- # Default: None
1129
- # @return [Types::Connections] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1130
- #
1131
- # * {Types::Connections#connections #connections} => Array&lt;Types::Connection&gt;
1132
- #
1133
- # @example Request syntax with placeholder values
1134
- # resp = client.describe_connections({
1135
- # connection_id: "ConnectionId",
1136
- # })
1137
- #
1138
- # @example Response structure
1139
- # resp.connections #=> Array
1140
- # resp.connections[0].owner_account #=> String
1141
- # resp.connections[0].connection_id #=> String
1142
- # resp.connections[0].connection_name #=> String
1143
- # resp.connections[0].connection_state #=> String, one of "ordering", "requested", "pending", "available", "down", "deleting", "deleted", "rejected"
1144
- # resp.connections[0].region #=> String
1145
- # resp.connections[0].location #=> String
1146
- # resp.connections[0].bandwidth #=> String
1147
- # resp.connections[0].vlan #=> Integer
1148
- # resp.connections[0].partner_name #=> String
1149
- # resp.connections[0].loa_issue_time #=> Time
1150
- # @overload describe_connections(params = {})
1151
- # @param [Hash] params ({})
1152
- def describe_connections(params = {}, options = {})
1153
- req = build_request(:describe_connections, params)
1154
- req.send_request(options)
1155
- end
1522
+ # Deletes a BGP peer on the specified virtual interface that matches the
1523
+ # specified customer address and ASN. You cannot delete the last BGP
1524
+ # peer from a virtual interface.
1525
+ #
1526
+ # @option params [String] :virtual_interface_id
1527
+ # The ID of the virtual interface from which the BGP peer will be
1528
+ # deleted.
1529
+ #
1530
+ # Example: dxvif-456abc78
1531
+ #
1532
+ # Default: None
1533
+ #
1534
+ # @option params [Integer] :asn
1535
+ # The autonomous system (AS) number for Border Gateway Protocol (BGP)
1536
+ # configuration.
1537
+ #
1538
+ # Example: 65000
1539
+ #
1540
+ # @option params [String] :customer_address
1541
+ # IP address assigned to the customer interface.
1542
+ #
1543
+ # Example: 192.168.1.2/30 or 2001:db8::2/125
1544
+ #
1545
+ # @return [Types::DeleteBGPPeerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1546
+ #
1547
+ # * {Types::DeleteBGPPeerResponse#virtual_interface #virtual_interface} => Types::VirtualInterface
1548
+ #
1549
+ # @example Request syntax with placeholder values
1550
+ #
1551
+ # resp = client.delete_bgp_peer({
1552
+ # virtual_interface_id: "VirtualInterfaceId",
1553
+ # asn: 1,
1554
+ # customer_address: "CustomerAddress",
1555
+ # })
1556
+ #
1557
+ # @example Response structure
1558
+ #
1559
+ # resp.virtual_interface.owner_account #=> String
1560
+ # resp.virtual_interface.virtual_interface_id #=> String
1561
+ # resp.virtual_interface.location #=> String
1562
+ # resp.virtual_interface.connection_id #=> String
1563
+ # resp.virtual_interface.virtual_interface_type #=> String
1564
+ # resp.virtual_interface.virtual_interface_name #=> String
1565
+ # resp.virtual_interface.vlan #=> Integer
1566
+ # resp.virtual_interface.asn #=> Integer
1567
+ # resp.virtual_interface.auth_key #=> String
1568
+ # resp.virtual_interface.amazon_address #=> String
1569
+ # resp.virtual_interface.customer_address #=> String
1570
+ # resp.virtual_interface.address_family #=> String, one of "ipv4", "ipv6"
1571
+ # resp.virtual_interface.virtual_interface_state #=> String, one of "confirming", "verifying", "pending", "available", "down", "deleting", "deleted", "rejected"
1572
+ # resp.virtual_interface.customer_router_config #=> String
1573
+ # resp.virtual_interface.virtual_gateway_id #=> String
1574
+ # resp.virtual_interface.route_filter_prefixes #=> Array
1575
+ # resp.virtual_interface.route_filter_prefixes[0].cidr #=> String
1576
+ # resp.virtual_interface.bgp_peers #=> Array
1577
+ # resp.virtual_interface.bgp_peers[0].asn #=> Integer
1578
+ # resp.virtual_interface.bgp_peers[0].auth_key #=> String
1579
+ # resp.virtual_interface.bgp_peers[0].address_family #=> String, one of "ipv4", "ipv6"
1580
+ # resp.virtual_interface.bgp_peers[0].amazon_address #=> String
1581
+ # resp.virtual_interface.bgp_peers[0].customer_address #=> String
1582
+ # resp.virtual_interface.bgp_peers[0].bgp_peer_state #=> String, one of "verifying", "pending", "available", "deleting", "deleted"
1583
+ # resp.virtual_interface.bgp_peers[0].bgp_status #=> String, one of "up", "down"
1584
+ #
1585
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DeleteBGPPeer AWS API Documentation
1586
+ #
1587
+ # @overload delete_bgp_peer(params = {})
1588
+ # @param [Hash] params ({})
1589
+ def delete_bgp_peer(params = {}, options = {})
1590
+ req = build_request(:delete_bgp_peer, params)
1591
+ req.send_request(options)
1592
+ end
1156
1593
 
1157
- # Return a list of connections that have been provisioned on the given
1158
- # interconnect.
1159
- #
1160
- # <note markdown="1"> This is intended for use by AWS Direct Connect partners only.
1161
- #
1162
- # </note>
1163
- # @option params [required, String] :interconnect_id
1164
- # ID of the interconnect on which a list of connection is provisioned.
1165
- #
1166
- # Example: dxcon-abc123
1167
- #
1168
- # Default: None
1169
- # @return [Types::Connections] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1170
- #
1171
- # * {Types::Connections#connections #connections} => Array&lt;Types::Connection&gt;
1172
- #
1173
- # @example Request syntax with placeholder values
1174
- # resp = client.describe_connections_on_interconnect({
1175
- # interconnect_id: "InterconnectId", # required
1176
- # })
1177
- #
1178
- # @example Response structure
1179
- # resp.connections #=> Array
1180
- # resp.connections[0].owner_account #=> String
1181
- # resp.connections[0].connection_id #=> String
1182
- # resp.connections[0].connection_name #=> String
1183
- # resp.connections[0].connection_state #=> String, one of "ordering", "requested", "pending", "available", "down", "deleting", "deleted", "rejected"
1184
- # resp.connections[0].region #=> String
1185
- # resp.connections[0].location #=> String
1186
- # resp.connections[0].bandwidth #=> String
1187
- # resp.connections[0].vlan #=> Integer
1188
- # resp.connections[0].partner_name #=> String
1189
- # resp.connections[0].loa_issue_time #=> Time
1190
- # @overload describe_connections_on_interconnect(params = {})
1191
- # @param [Hash] params ({})
1192
- def describe_connections_on_interconnect(params = {}, options = {})
1193
- req = build_request(:describe_connections_on_interconnect, params)
1194
- req.send_request(options)
1195
- end
1594
+ # Deletes the connection.
1595
+ #
1596
+ # Deleting a connection only stops the AWS Direct Connect port hour and
1597
+ # data transfer charges. You need to cancel separately with the
1598
+ # providers any services or charges for cross-connects or network
1599
+ # circuits that connect you to the AWS Direct Connect location.
1600
+ #
1601
+ # @option params [required, String] :connection_id
1602
+ # The ID of the connection. This field is also used as the ID type for
1603
+ # operations that use multiple connection types (LAG, interconnect,
1604
+ # and/or connection).
1605
+ #
1606
+ # Example: dxcon-fg5678gh
1607
+ #
1608
+ # Default: None
1609
+ #
1610
+ # @return [Types::Connection] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1611
+ #
1612
+ # * {Types::Connection#owner_account #owner_account} => String
1613
+ # * {Types::Connection#connection_id #connection_id} => String
1614
+ # * {Types::Connection#connection_name #connection_name} => String
1615
+ # * {Types::Connection#connection_state #connection_state} => String
1616
+ # * {Types::Connection#region #region} => String
1617
+ # * {Types::Connection#location #location} => String
1618
+ # * {Types::Connection#bandwidth #bandwidth} => String
1619
+ # * {Types::Connection#vlan #vlan} => Integer
1620
+ # * {Types::Connection#partner_name #partner_name} => String
1621
+ # * {Types::Connection#loa_issue_time #loa_issue_time} => Time
1622
+ # * {Types::Connection#lag_id #lag_id} => String
1623
+ # * {Types::Connection#aws_device #aws_device} => String
1624
+ #
1625
+ # @example Request syntax with placeholder values
1626
+ #
1627
+ # resp = client.delete_connection({
1628
+ # connection_id: "ConnectionId", # required
1629
+ # })
1630
+ #
1631
+ # @example Response structure
1632
+ #
1633
+ # resp.owner_account #=> String
1634
+ # resp.connection_id #=> String
1635
+ # resp.connection_name #=> String
1636
+ # resp.connection_state #=> String, one of "ordering", "requested", "pending", "available", "down", "deleting", "deleted", "rejected"
1637
+ # resp.region #=> String
1638
+ # resp.location #=> String
1639
+ # resp.bandwidth #=> String
1640
+ # resp.vlan #=> Integer
1641
+ # resp.partner_name #=> String
1642
+ # resp.loa_issue_time #=> Time
1643
+ # resp.lag_id #=> String
1644
+ # resp.aws_device #=> String
1645
+ #
1646
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DeleteConnection AWS API Documentation
1647
+ #
1648
+ # @overload delete_connection(params = {})
1649
+ # @param [Hash] params ({})
1650
+ def delete_connection(params = {}, options = {})
1651
+ req = build_request(:delete_connection, params)
1652
+ req.send_request(options)
1653
+ end
1196
1654
 
1197
- # Returns the LOA-CFA for an Interconnect.
1198
- #
1199
- # The Letter of Authorization - Connecting Facility Assignment (LOA-CFA)
1200
- # is a document that is used when establishing your cross connect to AWS
1201
- # at the colocation facility. For more information, see [Requesting
1202
- # Cross Connects at AWS Direct Connect Locations][1] in the AWS Direct
1203
- # Connect user guide.
1204
- #
1205
- #
1206
- #
1207
- # [1]: http://docs.aws.amazon.com/directconnect/latest/UserGuide/Colocation.html
1208
- # @option params [required, String] :interconnect_id
1209
- # The ID of the interconnect.
1210
- #
1211
- # Example: dxcon-abc123
1212
- # @option params [String] :provider_name
1213
- # The name of the service provider who establishes connectivity on your
1214
- # behalf. If you supply this parameter, the LOA-CFA lists the provider
1215
- # name alongside your company name as the requester of the cross
1216
- # connect.
1217
- #
1218
- # Default: None
1219
- # @option params [String] :loa_content_type
1220
- # A standard media type indicating the content type of the LOA-CFA
1221
- # document. Currently, the only supported value is "application/pdf".
1222
- #
1223
- # Default: application/pdf
1224
- # @return [Types::DescribeInterconnectLoaResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1225
- #
1226
- # * {Types::DescribeInterconnectLoaResponse#loa #loa} => Types::Loa
1227
- #
1228
- # @example Request syntax with placeholder values
1229
- # resp = client.describe_interconnect_loa({
1230
- # interconnect_id: "InterconnectId", # required
1231
- # provider_name: "ProviderName",
1232
- # loa_content_type: "application/pdf", # accepts application/pdf
1233
- # })
1234
- #
1235
- # @example Response structure
1236
- # resp.loa.loa_content #=> String
1237
- # resp.loa.loa_content_type #=> String, one of "application/pdf"
1238
- # @overload describe_interconnect_loa(params = {})
1239
- # @param [Hash] params ({})
1240
- def describe_interconnect_loa(params = {}, options = {})
1241
- req = build_request(:describe_interconnect_loa, params)
1242
- req.send_request(options)
1243
- end
1655
+ # Deletes the specified interconnect.
1656
+ #
1657
+ # <note markdown="1"> This is intended for use by AWS Direct Connect partners only.
1658
+ #
1659
+ # </note>
1660
+ #
1661
+ # @option params [required, String] :interconnect_id
1662
+ # The ID of the interconnect.
1663
+ #
1664
+ # Example: dxcon-abc123
1665
+ #
1666
+ # @return [Types::DeleteInterconnectResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1667
+ #
1668
+ # * {Types::DeleteInterconnectResponse#interconnect_state #interconnect_state} => String
1669
+ #
1670
+ # @example Request syntax with placeholder values
1671
+ #
1672
+ # resp = client.delete_interconnect({
1673
+ # interconnect_id: "InterconnectId", # required
1674
+ # })
1675
+ #
1676
+ # @example Response structure
1677
+ #
1678
+ # resp.interconnect_state #=> String, one of "requested", "pending", "available", "down", "deleting", "deleted"
1679
+ #
1680
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DeleteInterconnect AWS API Documentation
1681
+ #
1682
+ # @overload delete_interconnect(params = {})
1683
+ # @param [Hash] params ({})
1684
+ def delete_interconnect(params = {}, options = {})
1685
+ req = build_request(:delete_interconnect, params)
1686
+ req.send_request(options)
1687
+ end
1244
1688
 
1245
- # Returns a list of interconnects owned by the AWS account.
1246
- #
1247
- # If an interconnect ID is provided, it will only return this particular
1248
- # interconnect.
1249
- # @option params [String] :interconnect_id
1250
- # The ID of the interconnect.
1251
- #
1252
- # Example: dxcon-abc123
1253
- # @return [Types::Interconnects] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1254
- #
1255
- # * {Types::Interconnects#interconnects #interconnects} => Array&lt;Types::Interconnect&gt;
1256
- #
1257
- # @example Request syntax with placeholder values
1258
- # resp = client.describe_interconnects({
1259
- # interconnect_id: "InterconnectId",
1260
- # })
1261
- #
1262
- # @example Response structure
1263
- # resp.interconnects #=> Array
1264
- # resp.interconnects[0].interconnect_id #=> String
1265
- # resp.interconnects[0].interconnect_name #=> String
1266
- # resp.interconnects[0].interconnect_state #=> String, one of "requested", "pending", "available", "down", "deleting", "deleted"
1267
- # resp.interconnects[0].region #=> String
1268
- # resp.interconnects[0].location #=> String
1269
- # resp.interconnects[0].bandwidth #=> String
1270
- # resp.interconnects[0].loa_issue_time #=> Time
1271
- # @overload describe_interconnects(params = {})
1272
- # @param [Hash] params ({})
1273
- def describe_interconnects(params = {}, options = {})
1274
- req = build_request(:describe_interconnects, params)
1275
- req.send_request(options)
1276
- end
1689
+ # Deletes a link aggregation group (LAG). You cannot delete a LAG if it
1690
+ # has active virtual interfaces or hosted connections.
1691
+ #
1692
+ # @option params [required, String] :lag_id
1693
+ # The ID of the LAG to delete.
1694
+ #
1695
+ # Example: dxlag-abc123
1696
+ #
1697
+ # Default: None
1698
+ #
1699
+ # @return [Types::Lag] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1700
+ #
1701
+ # * {Types::Lag#connections_bandwidth #connections_bandwidth} => String
1702
+ # * {Types::Lag#number_of_connections #number_of_connections} => Integer
1703
+ # * {Types::Lag#lag_id #lag_id} => String
1704
+ # * {Types::Lag#owner_account #owner_account} => String
1705
+ # * {Types::Lag#lag_name #lag_name} => String
1706
+ # * {Types::Lag#lag_state #lag_state} => String
1707
+ # * {Types::Lag#location #location} => String
1708
+ # * {Types::Lag#region #region} => String
1709
+ # * {Types::Lag#minimum_links #minimum_links} => Integer
1710
+ # * {Types::Lag#aws_device #aws_device} => String
1711
+ # * {Types::Lag#connections #connections} => Array&lt;Types::Connection&gt;
1712
+ # * {Types::Lag#allows_hosted_connections #allows_hosted_connections} => Boolean
1713
+ #
1714
+ # @example Request syntax with placeholder values
1715
+ #
1716
+ # resp = client.delete_lag({
1717
+ # lag_id: "LagId", # required
1718
+ # })
1719
+ #
1720
+ # @example Response structure
1721
+ #
1722
+ # resp.connections_bandwidth #=> String
1723
+ # resp.number_of_connections #=> Integer
1724
+ # resp.lag_id #=> String
1725
+ # resp.owner_account #=> String
1726
+ # resp.lag_name #=> String
1727
+ # resp.lag_state #=> String, one of "requested", "pending", "available", "down", "deleting", "deleted"
1728
+ # resp.location #=> String
1729
+ # resp.region #=> String
1730
+ # resp.minimum_links #=> Integer
1731
+ # resp.aws_device #=> String
1732
+ # resp.connections #=> Array
1733
+ # resp.connections[0].owner_account #=> String
1734
+ # resp.connections[0].connection_id #=> String
1735
+ # resp.connections[0].connection_name #=> String
1736
+ # resp.connections[0].connection_state #=> String, one of "ordering", "requested", "pending", "available", "down", "deleting", "deleted", "rejected"
1737
+ # resp.connections[0].region #=> String
1738
+ # resp.connections[0].location #=> String
1739
+ # resp.connections[0].bandwidth #=> String
1740
+ # resp.connections[0].vlan #=> Integer
1741
+ # resp.connections[0].partner_name #=> String
1742
+ # resp.connections[0].loa_issue_time #=> Time
1743
+ # resp.connections[0].lag_id #=> String
1744
+ # resp.connections[0].aws_device #=> String
1745
+ # resp.allows_hosted_connections #=> Boolean
1746
+ #
1747
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DeleteLag AWS API Documentation
1748
+ #
1749
+ # @overload delete_lag(params = {})
1750
+ # @param [Hash] params ({})
1751
+ def delete_lag(params = {}, options = {})
1752
+ req = build_request(:delete_lag, params)
1753
+ req.send_request(options)
1754
+ end
1277
1755
 
1278
- # Returns the list of AWS Direct Connect locations in the current AWS
1279
- # region. These are the locations that may be selected when calling
1280
- # CreateConnection or CreateInterconnect.
1281
- # @return [Types::Locations] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1282
- #
1283
- # * {Types::Locations#locations #locations} => Array&lt;Types::Location&gt;
1284
- #
1285
- # @example Response structure
1286
- # resp.locations #=> Array
1287
- # resp.locations[0].location_code #=> String
1288
- # resp.locations[0].location_name #=> String
1289
- # @overload describe_locations(params = {})
1290
- # @param [Hash] params ({})
1291
- def describe_locations(params = {}, options = {})
1292
- req = build_request(:describe_locations, params)
1293
- req.send_request(options)
1294
- end
1756
+ # Deletes a virtual interface.
1757
+ #
1758
+ # @option params [required, String] :virtual_interface_id
1759
+ # The ID of the virtual interface.
1760
+ #
1761
+ # Example: dxvif-123dfg56
1762
+ #
1763
+ # Default: None
1764
+ #
1765
+ # @return [Types::DeleteVirtualInterfaceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1766
+ #
1767
+ # * {Types::DeleteVirtualInterfaceResponse#virtual_interface_state #virtual_interface_state} => String
1768
+ #
1769
+ # @example Request syntax with placeholder values
1770
+ #
1771
+ # resp = client.delete_virtual_interface({
1772
+ # virtual_interface_id: "VirtualInterfaceId", # required
1773
+ # })
1774
+ #
1775
+ # @example Response structure
1776
+ #
1777
+ # resp.virtual_interface_state #=> String, one of "confirming", "verifying", "pending", "available", "down", "deleting", "deleted", "rejected"
1778
+ #
1779
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DeleteVirtualInterface AWS API Documentation
1780
+ #
1781
+ # @overload delete_virtual_interface(params = {})
1782
+ # @param [Hash] params ({})
1783
+ def delete_virtual_interface(params = {}, options = {})
1784
+ req = build_request(:delete_virtual_interface, params)
1785
+ req.send_request(options)
1786
+ end
1295
1787
 
1296
- # Describes the tags associated with the specified Direct Connect
1297
- # resources.
1298
- # @option params [required, Array<String>] :resource_arns
1299
- # The Amazon Resource Names (ARNs) of the Direct Connect resources.
1300
- # @return [Types::DescribeTagsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1301
- #
1302
- # * {Types::DescribeTagsResponse#resource_tags #resourceTags} => Array&lt;Types::ResourceTag&gt;
1303
- #
1304
- # @example Request syntax with placeholder values
1305
- # resp = client.describe_tags({
1306
- # resource_arns: ["ResourceArn"], # required
1307
- # })
1308
- #
1309
- # @example Response structure
1310
- # resp.resource_tags #=> Array
1311
- # resp.resource_tags[0].resource_arn #=> String
1312
- # resp.resource_tags[0].tags #=> Array
1313
- # resp.resource_tags[0].tags[0].key #=> String
1314
- # resp.resource_tags[0].tags[0].value #=> String
1315
- # @overload describe_tags(params = {})
1316
- # @param [Hash] params ({})
1317
- def describe_tags(params = {}, options = {})
1318
- req = build_request(:describe_tags, params)
1319
- req.send_request(options)
1320
- end
1788
+ # Deprecated in favor of DescribeLoa.
1789
+ #
1790
+ # Returns the LOA-CFA for a Connection.
1791
+ #
1792
+ # The Letter of Authorization - Connecting Facility Assignment (LOA-CFA)
1793
+ # is a document that your APN partner or service provider uses when
1794
+ # establishing your cross connect to AWS at the colocation facility. For
1795
+ # more information, see [Requesting Cross Connects at AWS Direct Connect
1796
+ # Locations][1] in the AWS Direct Connect user guide.
1797
+ #
1798
+ #
1799
+ #
1800
+ # [1]: http://docs.aws.amazon.com/directconnect/latest/UserGuide/Colocation.html
1801
+ #
1802
+ # @option params [required, String] :connection_id
1803
+ # The ID of the connection. This field is also used as the ID type for
1804
+ # operations that use multiple connection types (LAG, interconnect,
1805
+ # and/or connection).
1806
+ #
1807
+ # Example: dxcon-fg5678gh
1808
+ #
1809
+ # Default: None
1810
+ #
1811
+ # @option params [String] :provider_name
1812
+ # The name of the APN partner or service provider who establishes
1813
+ # connectivity on your behalf. If you supply this parameter, the LOA-CFA
1814
+ # lists the provider name alongside your company name as the requester
1815
+ # of the cross connect.
1816
+ #
1817
+ # Default: None
1818
+ #
1819
+ # @option params [String] :loa_content_type
1820
+ # A standard media type indicating the content type of the LOA-CFA
1821
+ # document. Currently, the only supported value is "application/pdf".
1822
+ #
1823
+ # Default: application/pdf
1824
+ #
1825
+ # @return [Types::DescribeConnectionLoaResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1826
+ #
1827
+ # * {Types::DescribeConnectionLoaResponse#loa #loa} => Types::Loa
1828
+ #
1829
+ # @example Request syntax with placeholder values
1830
+ #
1831
+ # resp = client.describe_connection_loa({
1832
+ # connection_id: "ConnectionId", # required
1833
+ # provider_name: "ProviderName",
1834
+ # loa_content_type: "application/pdf", # accepts application/pdf
1835
+ # })
1836
+ #
1837
+ # @example Response structure
1838
+ #
1839
+ # resp.loa.loa_content #=> String
1840
+ # resp.loa.loa_content_type #=> String, one of "application/pdf"
1841
+ #
1842
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DescribeConnectionLoa AWS API Documentation
1843
+ #
1844
+ # @overload describe_connection_loa(params = {})
1845
+ # @param [Hash] params ({})
1846
+ def describe_connection_loa(params = {}, options = {})
1847
+ req = build_request(:describe_connection_loa, params)
1848
+ req.send_request(options)
1849
+ end
1321
1850
 
1322
- # Returns a list of virtual private gateways owned by the AWS account.
1323
- #
1324
- # You can create one or more AWS Direct Connect private virtual
1325
- # interfaces linking to a virtual private gateway. A virtual private
1326
- # gateway can be managed via Amazon Virtual Private Cloud (VPC) console
1327
- # or the [EC2 CreateVpnGateway][1] action.
1328
- #
1329
- #
1330
- #
1331
- # [1]: http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-CreateVpnGateway.html
1332
- # @return [Types::VirtualGateways] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1333
- #
1334
- # * {Types::VirtualGateways#virtual_gateways #virtualGateways} => Array&lt;Types::VirtualGateway&gt;
1335
- #
1336
- # @example Response structure
1337
- # resp.virtual_gateways #=> Array
1338
- # resp.virtual_gateways[0].virtual_gateway_id #=> String
1339
- # resp.virtual_gateways[0].virtual_gateway_state #=> String
1340
- # @overload describe_virtual_gateways(params = {})
1341
- # @param [Hash] params ({})
1342
- def describe_virtual_gateways(params = {}, options = {})
1343
- req = build_request(:describe_virtual_gateways, params)
1344
- req.send_request(options)
1345
- end
1851
+ # Displays all connections in this region.
1852
+ #
1853
+ # If a connection ID is provided, the call returns only that particular
1854
+ # connection.
1855
+ #
1856
+ # @option params [String] :connection_id
1857
+ # The ID of the connection. This field is also used as the ID type for
1858
+ # operations that use multiple connection types (LAG, interconnect,
1859
+ # and/or connection).
1860
+ #
1861
+ # Example: dxcon-fg5678gh
1862
+ #
1863
+ # Default: None
1864
+ #
1865
+ # @return [Types::Connections] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1866
+ #
1867
+ # * {Types::Connections#connections #connections} => Array&lt;Types::Connection&gt;
1868
+ #
1869
+ # @example Request syntax with placeholder values
1870
+ #
1871
+ # resp = client.describe_connections({
1872
+ # connection_id: "ConnectionId",
1873
+ # })
1874
+ #
1875
+ # @example Response structure
1876
+ #
1877
+ # resp.connections #=> Array
1878
+ # resp.connections[0].owner_account #=> String
1879
+ # resp.connections[0].connection_id #=> String
1880
+ # resp.connections[0].connection_name #=> String
1881
+ # resp.connections[0].connection_state #=> String, one of "ordering", "requested", "pending", "available", "down", "deleting", "deleted", "rejected"
1882
+ # resp.connections[0].region #=> String
1883
+ # resp.connections[0].location #=> String
1884
+ # resp.connections[0].bandwidth #=> String
1885
+ # resp.connections[0].vlan #=> Integer
1886
+ # resp.connections[0].partner_name #=> String
1887
+ # resp.connections[0].loa_issue_time #=> Time
1888
+ # resp.connections[0].lag_id #=> String
1889
+ # resp.connections[0].aws_device #=> String
1890
+ #
1891
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DescribeConnections AWS API Documentation
1892
+ #
1893
+ # @overload describe_connections(params = {})
1894
+ # @param [Hash] params ({})
1895
+ def describe_connections(params = {}, options = {})
1896
+ req = build_request(:describe_connections, params)
1897
+ req.send_request(options)
1898
+ end
1346
1899
 
1347
- # Displays all virtual interfaces for an AWS account. Virtual interfaces
1348
- # deleted fewer than 15 minutes before DescribeVirtualInterfaces is
1349
- # called are also returned. If a connection ID is included then only
1350
- # virtual interfaces associated with this connection will be returned.
1351
- # If a virtual interface ID is included then only a single virtual
1352
- # interface will be returned.
1353
- #
1354
- # A virtual interface (VLAN) transmits the traffic between the AWS
1355
- # Direct Connect location and the customer.
1356
- #
1357
- # If a connection ID is provided, only virtual interfaces provisioned on
1358
- # the specified connection will be returned. If a virtual interface ID
1359
- # is provided, only this particular virtual interface will be returned.
1360
- # @option params [String] :connection_id
1361
- # ID of the connection.
1362
- #
1363
- # Example: dxcon-fg5678gh
1364
- #
1365
- # Default: None
1366
- # @option params [String] :virtual_interface_id
1367
- # ID of the virtual interface.
1368
- #
1369
- # Example: dxvif-123dfg56
1370
- #
1371
- # Default: None
1372
- # @return [Types::VirtualInterfaces] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1373
- #
1374
- # * {Types::VirtualInterfaces#virtual_interfaces #virtualInterfaces} => Array&lt;Types::VirtualInterface&gt;
1375
- #
1376
- # @example Request syntax with placeholder values
1377
- # resp = client.describe_virtual_interfaces({
1378
- # connection_id: "ConnectionId",
1379
- # virtual_interface_id: "VirtualInterfaceId",
1380
- # })
1381
- #
1382
- # @example Response structure
1383
- # resp.virtual_interfaces #=> Array
1384
- # resp.virtual_interfaces[0].owner_account #=> String
1385
- # resp.virtual_interfaces[0].virtual_interface_id #=> String
1386
- # resp.virtual_interfaces[0].location #=> String
1387
- # resp.virtual_interfaces[0].connection_id #=> String
1388
- # resp.virtual_interfaces[0].virtual_interface_type #=> String
1389
- # resp.virtual_interfaces[0].virtual_interface_name #=> String
1390
- # resp.virtual_interfaces[0].vlan #=> Integer
1391
- # resp.virtual_interfaces[0].asn #=> Integer
1392
- # resp.virtual_interfaces[0].auth_key #=> String
1393
- # resp.virtual_interfaces[0].amazon_address #=> String
1394
- # resp.virtual_interfaces[0].customer_address #=> String
1395
- # resp.virtual_interfaces[0].address_family #=> String, one of "ipv4", "ipv6"
1396
- # resp.virtual_interfaces[0].virtual_interface_state #=> String, one of "confirming", "verifying", "pending", "available", "down", "deleting", "deleted", "rejected"
1397
- # resp.virtual_interfaces[0].customer_router_config #=> String
1398
- # resp.virtual_interfaces[0].virtual_gateway_id #=> String
1399
- # resp.virtual_interfaces[0].route_filter_prefixes #=> Array
1400
- # resp.virtual_interfaces[0].route_filter_prefixes[0].cidr #=> String
1401
- # resp.virtual_interfaces[0].bgp_peers #=> Array
1402
- # resp.virtual_interfaces[0].bgp_peers[0].asn #=> Integer
1403
- # resp.virtual_interfaces[0].bgp_peers[0].auth_key #=> String
1404
- # resp.virtual_interfaces[0].bgp_peers[0].address_family #=> String, one of "ipv4", "ipv6"
1405
- # resp.virtual_interfaces[0].bgp_peers[0].amazon_address #=> String
1406
- # resp.virtual_interfaces[0].bgp_peers[0].customer_address #=> String
1407
- # resp.virtual_interfaces[0].bgp_peers[0].bgp_peer_state #=> String, one of "verifying", "pending", "available", "deleting", "deleted"
1408
- # resp.virtual_interfaces[0].bgp_peers[0].bgp_status #=> String, one of "up", "down"
1409
- # @overload describe_virtual_interfaces(params = {})
1410
- # @param [Hash] params ({})
1411
- def describe_virtual_interfaces(params = {}, options = {})
1412
- req = build_request(:describe_virtual_interfaces, params)
1413
- req.send_request(options)
1414
- end
1900
+ # Deprecated in favor of DescribeHostedConnections.
1901
+ #
1902
+ # Returns a list of connections that have been provisioned on the given
1903
+ # interconnect.
1904
+ #
1905
+ # <note markdown="1"> This is intended for use by AWS Direct Connect partners only.
1906
+ #
1907
+ # </note>
1908
+ #
1909
+ # @option params [required, String] :interconnect_id
1910
+ # ID of the interconnect on which a list of connection is provisioned.
1911
+ #
1912
+ # Example: dxcon-abc123
1913
+ #
1914
+ # Default: None
1915
+ #
1916
+ # @return [Types::Connections] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1917
+ #
1918
+ # * {Types::Connections#connections #connections} => Array&lt;Types::Connection&gt;
1919
+ #
1920
+ # @example Request syntax with placeholder values
1921
+ #
1922
+ # resp = client.describe_connections_on_interconnect({
1923
+ # interconnect_id: "InterconnectId", # required
1924
+ # })
1925
+ #
1926
+ # @example Response structure
1927
+ #
1928
+ # resp.connections #=> Array
1929
+ # resp.connections[0].owner_account #=> String
1930
+ # resp.connections[0].connection_id #=> String
1931
+ # resp.connections[0].connection_name #=> String
1932
+ # resp.connections[0].connection_state #=> String, one of "ordering", "requested", "pending", "available", "down", "deleting", "deleted", "rejected"
1933
+ # resp.connections[0].region #=> String
1934
+ # resp.connections[0].location #=> String
1935
+ # resp.connections[0].bandwidth #=> String
1936
+ # resp.connections[0].vlan #=> Integer
1937
+ # resp.connections[0].partner_name #=> String
1938
+ # resp.connections[0].loa_issue_time #=> Time
1939
+ # resp.connections[0].lag_id #=> String
1940
+ # resp.connections[0].aws_device #=> String
1941
+ #
1942
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DescribeConnectionsOnInterconnect AWS API Documentation
1943
+ #
1944
+ # @overload describe_connections_on_interconnect(params = {})
1945
+ # @param [Hash] params ({})
1946
+ def describe_connections_on_interconnect(params = {}, options = {})
1947
+ req = build_request(:describe_connections_on_interconnect, params)
1948
+ req.send_request(options)
1949
+ end
1415
1950
 
1416
- # Adds the specified tags to the specified Direct Connect resource. Each
1417
- # Direct Connect resource can have a maximum of 50 tags.
1418
- #
1419
- # Each tag consists of a key and an optional value. If a tag with the
1420
- # same key is already associated with the Direct Connect resource, this
1421
- # action updates its value.
1422
- # @option params [required, String] :resource_arn
1423
- # The Amazon Resource Name (ARN) of the Direct Connect resource.
1424
- #
1425
- # Example:
1426
- # arn:aws:directconnect:us-east-1:123456789012:dxcon/dxcon-fg5678gh
1427
- # @option params [required, Array<Types::Tag>] :tags
1428
- # The list of tags to add.
1429
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1430
- #
1431
- # @example Request syntax with placeholder values
1432
- # resp = client.tag_resource({
1433
- # resource_arn: "ResourceArn", # required
1434
- # tags: [ # required
1435
- # {
1436
- # key: "TagKey", # required
1437
- # value: "TagValue",
1438
- # },
1439
- # ],
1440
- # })
1441
- # @overload tag_resource(params = {})
1442
- # @param [Hash] params ({})
1443
- def tag_resource(params = {}, options = {})
1444
- req = build_request(:tag_resource, params)
1445
- req.send_request(options)
1446
- end
1951
+ # Returns a list of hosted connections that have been provisioned on the
1952
+ # given interconnect or link aggregation group (LAG).
1953
+ #
1954
+ # <note markdown="1"> This is intended for use by AWS Direct Connect partners only.
1955
+ #
1956
+ # </note>
1957
+ #
1958
+ # @option params [required, String] :connection_id
1959
+ # The ID of the interconnect or LAG on which the hosted connections are
1960
+ # provisioned.
1961
+ #
1962
+ # Example: dxcon-abc123 or dxlag-abc123
1963
+ #
1964
+ # Default: None
1965
+ #
1966
+ # @return [Types::Connections] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1967
+ #
1968
+ # * {Types::Connections#connections #connections} => Array&lt;Types::Connection&gt;
1969
+ #
1970
+ # @example Request syntax with placeholder values
1971
+ #
1972
+ # resp = client.describe_hosted_connections({
1973
+ # connection_id: "ConnectionId", # required
1974
+ # })
1975
+ #
1976
+ # @example Response structure
1977
+ #
1978
+ # resp.connections #=> Array
1979
+ # resp.connections[0].owner_account #=> String
1980
+ # resp.connections[0].connection_id #=> String
1981
+ # resp.connections[0].connection_name #=> String
1982
+ # resp.connections[0].connection_state #=> String, one of "ordering", "requested", "pending", "available", "down", "deleting", "deleted", "rejected"
1983
+ # resp.connections[0].region #=> String
1984
+ # resp.connections[0].location #=> String
1985
+ # resp.connections[0].bandwidth #=> String
1986
+ # resp.connections[0].vlan #=> Integer
1987
+ # resp.connections[0].partner_name #=> String
1988
+ # resp.connections[0].loa_issue_time #=> Time
1989
+ # resp.connections[0].lag_id #=> String
1990
+ # resp.connections[0].aws_device #=> String
1991
+ #
1992
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DescribeHostedConnections AWS API Documentation
1993
+ #
1994
+ # @overload describe_hosted_connections(params = {})
1995
+ # @param [Hash] params ({})
1996
+ def describe_hosted_connections(params = {}, options = {})
1997
+ req = build_request(:describe_hosted_connections, params)
1998
+ req.send_request(options)
1999
+ end
1447
2000
 
1448
- # Removes one or more tags from the specified Direct Connect resource.
1449
- # @option params [required, String] :resource_arn
1450
- # The Amazon Resource Name (ARN) of the Direct Connect resource.
1451
- # @option params [required, Array<String>] :tag_keys
1452
- # The list of tag keys to remove.
1453
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1454
- #
1455
- # @example Request syntax with placeholder values
1456
- # resp = client.untag_resource({
1457
- # resource_arn: "ResourceArn", # required
1458
- # tag_keys: ["TagKey"], # required
1459
- # })
1460
- # @overload untag_resource(params = {})
1461
- # @param [Hash] params ({})
1462
- def untag_resource(params = {}, options = {})
1463
- req = build_request(:untag_resource, params)
1464
- req.send_request(options)
1465
- end
2001
+ # Deprecated in favor of DescribeLoa.
2002
+ #
2003
+ # Returns the LOA-CFA for an Interconnect.
2004
+ #
2005
+ # The Letter of Authorization - Connecting Facility Assignment (LOA-CFA)
2006
+ # is a document that is used when establishing your cross connect to AWS
2007
+ # at the colocation facility. For more information, see [Requesting
2008
+ # Cross Connects at AWS Direct Connect Locations][1] in the AWS Direct
2009
+ # Connect user guide.
2010
+ #
2011
+ #
2012
+ #
2013
+ # [1]: http://docs.aws.amazon.com/directconnect/latest/UserGuide/Colocation.html
2014
+ #
2015
+ # @option params [required, String] :interconnect_id
2016
+ # The ID of the interconnect.
2017
+ #
2018
+ # Example: dxcon-abc123
2019
+ #
2020
+ # @option params [String] :provider_name
2021
+ # The name of the service provider who establishes connectivity on your
2022
+ # behalf. If you supply this parameter, the LOA-CFA lists the provider
2023
+ # name alongside your company name as the requester of the cross
2024
+ # connect.
2025
+ #
2026
+ # Default: None
2027
+ #
2028
+ # @option params [String] :loa_content_type
2029
+ # A standard media type indicating the content type of the LOA-CFA
2030
+ # document. Currently, the only supported value is "application/pdf".
2031
+ #
2032
+ # Default: application/pdf
2033
+ #
2034
+ # @return [Types::DescribeInterconnectLoaResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2035
+ #
2036
+ # * {Types::DescribeInterconnectLoaResponse#loa #loa} => Types::Loa
2037
+ #
2038
+ # @example Request syntax with placeholder values
2039
+ #
2040
+ # resp = client.describe_interconnect_loa({
2041
+ # interconnect_id: "InterconnectId", # required
2042
+ # provider_name: "ProviderName",
2043
+ # loa_content_type: "application/pdf", # accepts application/pdf
2044
+ # })
2045
+ #
2046
+ # @example Response structure
2047
+ #
2048
+ # resp.loa.loa_content #=> String
2049
+ # resp.loa.loa_content_type #=> String, one of "application/pdf"
2050
+ #
2051
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DescribeInterconnectLoa AWS API Documentation
2052
+ #
2053
+ # @overload describe_interconnect_loa(params = {})
2054
+ # @param [Hash] params ({})
2055
+ def describe_interconnect_loa(params = {}, options = {})
2056
+ req = build_request(:describe_interconnect_loa, params)
2057
+ req.send_request(options)
2058
+ end
1466
2059
 
1467
- # @!endgroup
2060
+ # Returns a list of interconnects owned by the AWS account.
2061
+ #
2062
+ # If an interconnect ID is provided, it will only return this particular
2063
+ # interconnect.
2064
+ #
2065
+ # @option params [String] :interconnect_id
2066
+ # The ID of the interconnect.
2067
+ #
2068
+ # Example: dxcon-abc123
2069
+ #
2070
+ # @return [Types::Interconnects] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2071
+ #
2072
+ # * {Types::Interconnects#interconnects #interconnects} => Array&lt;Types::Interconnect&gt;
2073
+ #
2074
+ # @example Request syntax with placeholder values
2075
+ #
2076
+ # resp = client.describe_interconnects({
2077
+ # interconnect_id: "InterconnectId",
2078
+ # })
2079
+ #
2080
+ # @example Response structure
2081
+ #
2082
+ # resp.interconnects #=> Array
2083
+ # resp.interconnects[0].interconnect_id #=> String
2084
+ # resp.interconnects[0].interconnect_name #=> String
2085
+ # resp.interconnects[0].interconnect_state #=> String, one of "requested", "pending", "available", "down", "deleting", "deleted"
2086
+ # resp.interconnects[0].region #=> String
2087
+ # resp.interconnects[0].location #=> String
2088
+ # resp.interconnects[0].bandwidth #=> String
2089
+ # resp.interconnects[0].loa_issue_time #=> Time
2090
+ # resp.interconnects[0].lag_id #=> String
2091
+ # resp.interconnects[0].aws_device #=> String
2092
+ #
2093
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DescribeInterconnects AWS API Documentation
2094
+ #
2095
+ # @overload describe_interconnects(params = {})
2096
+ # @param [Hash] params ({})
2097
+ def describe_interconnects(params = {}, options = {})
2098
+ req = build_request(:describe_interconnects, params)
2099
+ req.send_request(options)
2100
+ end
1468
2101
 
1469
- # @param params ({})
1470
- # @api private
1471
- def build_request(operation_name, params = {})
1472
- handlers = @handlers.for(operation_name)
1473
- context = Seahorse::Client::RequestContext.new(
1474
- operation_name: operation_name,
1475
- operation: config.api.operation(operation_name),
1476
- client: self,
1477
- params: params,
1478
- config: config)
1479
- context[:gem_name] = 'aws-sdk-directconnect'
1480
- context[:gem_version] = '1.0.0.rc2'
1481
- Seahorse::Client::Request.new(handlers, context)
1482
- end
2102
+ # Describes the link aggregation groups (LAGs) in your account.
2103
+ #
2104
+ # If a LAG ID is provided, only information about the specified LAG is
2105
+ # returned.
2106
+ #
2107
+ # @option params [String] :lag_id
2108
+ # The ID of the LAG.
2109
+ #
2110
+ # Example: dxlag-abc123
2111
+ #
2112
+ # Default: None
2113
+ #
2114
+ # @return [Types::Lags] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2115
+ #
2116
+ # * {Types::Lags#lags #lags} => Array&lt;Types::Lag&gt;
2117
+ #
2118
+ # @example Request syntax with placeholder values
2119
+ #
2120
+ # resp = client.describe_lags({
2121
+ # lag_id: "LagId",
2122
+ # })
2123
+ #
2124
+ # @example Response structure
2125
+ #
2126
+ # resp.lags #=> Array
2127
+ # resp.lags[0].connections_bandwidth #=> String
2128
+ # resp.lags[0].number_of_connections #=> Integer
2129
+ # resp.lags[0].lag_id #=> String
2130
+ # resp.lags[0].owner_account #=> String
2131
+ # resp.lags[0].lag_name #=> String
2132
+ # resp.lags[0].lag_state #=> String, one of "requested", "pending", "available", "down", "deleting", "deleted"
2133
+ # resp.lags[0].location #=> String
2134
+ # resp.lags[0].region #=> String
2135
+ # resp.lags[0].minimum_links #=> Integer
2136
+ # resp.lags[0].aws_device #=> String
2137
+ # resp.lags[0].connections #=> Array
2138
+ # resp.lags[0].connections[0].owner_account #=> String
2139
+ # resp.lags[0].connections[0].connection_id #=> String
2140
+ # resp.lags[0].connections[0].connection_name #=> String
2141
+ # resp.lags[0].connections[0].connection_state #=> String, one of "ordering", "requested", "pending", "available", "down", "deleting", "deleted", "rejected"
2142
+ # resp.lags[0].connections[0].region #=> String
2143
+ # resp.lags[0].connections[0].location #=> String
2144
+ # resp.lags[0].connections[0].bandwidth #=> String
2145
+ # resp.lags[0].connections[0].vlan #=> Integer
2146
+ # resp.lags[0].connections[0].partner_name #=> String
2147
+ # resp.lags[0].connections[0].loa_issue_time #=> Time
2148
+ # resp.lags[0].connections[0].lag_id #=> String
2149
+ # resp.lags[0].connections[0].aws_device #=> String
2150
+ # resp.lags[0].allows_hosted_connections #=> Boolean
2151
+ #
2152
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DescribeLags AWS API Documentation
2153
+ #
2154
+ # @overload describe_lags(params = {})
2155
+ # @param [Hash] params ({})
2156
+ def describe_lags(params = {}, options = {})
2157
+ req = build_request(:describe_lags, params)
2158
+ req.send_request(options)
2159
+ end
1483
2160
 
1484
- # @api private
1485
- # @deprecated
1486
- def waiter_names
1487
- []
1488
- end
2161
+ # Returns the LOA-CFA for a connection, interconnect, or link
2162
+ # aggregation group (LAG).
2163
+ #
2164
+ # The Letter of Authorization - Connecting Facility Assignment (LOA-CFA)
2165
+ # is a document that is used when establishing your cross connect to AWS
2166
+ # at the colocation facility. For more information, see [Requesting
2167
+ # Cross Connects at AWS Direct Connect Locations][1] in the AWS Direct
2168
+ # Connect user guide.
2169
+ #
2170
+ #
2171
+ #
2172
+ # [1]: http://docs.aws.amazon.com/directconnect/latest/UserGuide/Colocation.html
2173
+ #
2174
+ # @option params [required, String] :connection_id
2175
+ # The ID of a connection, LAG, or interconnect for which to get the
2176
+ # LOA-CFA information.
2177
+ #
2178
+ # Example: dxcon-abc123 or dxlag-abc123
2179
+ #
2180
+ # Default: None
2181
+ #
2182
+ # @option params [String] :provider_name
2183
+ # The name of the service provider who establishes connectivity on your
2184
+ # behalf. If you supply this parameter, the LOA-CFA lists the provider
2185
+ # name alongside your company name as the requester of the cross
2186
+ # connect.
2187
+ #
2188
+ # Default: None
2189
+ #
2190
+ # @option params [String] :loa_content_type
2191
+ # A standard media type indicating the content type of the LOA-CFA
2192
+ # document. Currently, the only supported value is "application/pdf".
2193
+ #
2194
+ # Default: application/pdf
2195
+ #
2196
+ # @return [Types::Loa] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2197
+ #
2198
+ # * {Types::Loa#loa_content #loa_content} => String
2199
+ # * {Types::Loa#loa_content_type #loa_content_type} => String
2200
+ #
2201
+ # @example Request syntax with placeholder values
2202
+ #
2203
+ # resp = client.describe_loa({
2204
+ # connection_id: "ConnectionId", # required
2205
+ # provider_name: "ProviderName",
2206
+ # loa_content_type: "application/pdf", # accepts application/pdf
2207
+ # })
2208
+ #
2209
+ # @example Response structure
2210
+ #
2211
+ # resp.loa_content #=> String
2212
+ # resp.loa_content_type #=> String, one of "application/pdf"
2213
+ #
2214
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DescribeLoa AWS API Documentation
2215
+ #
2216
+ # @overload describe_loa(params = {})
2217
+ # @param [Hash] params ({})
2218
+ def describe_loa(params = {}, options = {})
2219
+ req = build_request(:describe_loa, params)
2220
+ req.send_request(options)
2221
+ end
2222
+
2223
+ # Returns the list of AWS Direct Connect locations in the current AWS
2224
+ # region. These are the locations that may be selected when calling
2225
+ # CreateConnection or CreateInterconnect.
2226
+ #
2227
+ # @return [Types::Locations] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2228
+ #
2229
+ # * {Types::Locations#locations #locations} => Array&lt;Types::Location&gt;
2230
+ #
2231
+ # @example Response structure
2232
+ #
2233
+ # resp.locations #=> Array
2234
+ # resp.locations[0].location_code #=> String
2235
+ # resp.locations[0].location_name #=> String
2236
+ #
2237
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DescribeLocations AWS API Documentation
2238
+ #
2239
+ # @overload describe_locations(params = {})
2240
+ # @param [Hash] params ({})
2241
+ def describe_locations(params = {}, options = {})
2242
+ req = build_request(:describe_locations, params)
2243
+ req.send_request(options)
2244
+ end
1489
2245
 
1490
- class << self
2246
+ # Describes the tags associated with the specified Direct Connect
2247
+ # resources.
2248
+ #
2249
+ # @option params [required, Array<String>] :resource_arns
2250
+ # The Amazon Resource Names (ARNs) of the Direct Connect resources.
2251
+ #
2252
+ # @return [Types::DescribeTagsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2253
+ #
2254
+ # * {Types::DescribeTagsResponse#resource_tags #resource_tags} => Array&lt;Types::ResourceTag&gt;
2255
+ #
2256
+ # @example Request syntax with placeholder values
2257
+ #
2258
+ # resp = client.describe_tags({
2259
+ # resource_arns: ["ResourceArn"], # required
2260
+ # })
2261
+ #
2262
+ # @example Response structure
2263
+ #
2264
+ # resp.resource_tags #=> Array
2265
+ # resp.resource_tags[0].resource_arn #=> String
2266
+ # resp.resource_tags[0].tags #=> Array
2267
+ # resp.resource_tags[0].tags[0].key #=> String
2268
+ # resp.resource_tags[0].tags[0].value #=> String
2269
+ #
2270
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DescribeTags AWS API Documentation
2271
+ #
2272
+ # @overload describe_tags(params = {})
2273
+ # @param [Hash] params ({})
2274
+ def describe_tags(params = {}, options = {})
2275
+ req = build_request(:describe_tags, params)
2276
+ req.send_request(options)
2277
+ end
2278
+
2279
+ # Returns a list of virtual private gateways owned by the AWS account.
2280
+ #
2281
+ # You can create one or more AWS Direct Connect private virtual
2282
+ # interfaces linking to a virtual private gateway. A virtual private
2283
+ # gateway can be managed via Amazon Virtual Private Cloud (VPC) console
2284
+ # or the [EC2 CreateVpnGateway][1] action.
2285
+ #
2286
+ #
2287
+ #
2288
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-CreateVpnGateway.html
2289
+ #
2290
+ # @return [Types::VirtualGateways] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2291
+ #
2292
+ # * {Types::VirtualGateways#virtual_gateways #virtual_gateways} => Array&lt;Types::VirtualGateway&gt;
2293
+ #
2294
+ # @example Response structure
2295
+ #
2296
+ # resp.virtual_gateways #=> Array
2297
+ # resp.virtual_gateways[0].virtual_gateway_id #=> String
2298
+ # resp.virtual_gateways[0].virtual_gateway_state #=> String
2299
+ #
2300
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DescribeVirtualGateways AWS API Documentation
2301
+ #
2302
+ # @overload describe_virtual_gateways(params = {})
2303
+ # @param [Hash] params ({})
2304
+ def describe_virtual_gateways(params = {}, options = {})
2305
+ req = build_request(:describe_virtual_gateways, params)
2306
+ req.send_request(options)
2307
+ end
1491
2308
 
1492
- # @api private
1493
- attr_reader :identifier
2309
+ # Displays all virtual interfaces for an AWS account. Virtual interfaces
2310
+ # deleted fewer than 15 minutes before you make the request are also
2311
+ # returned. If you specify a connection ID, only the virtual interfaces
2312
+ # associated with the connection are returned. If you specify a virtual
2313
+ # interface ID, then only a single virtual interface is returned.
2314
+ #
2315
+ # A virtual interface (VLAN) transmits the traffic between the AWS
2316
+ # Direct Connect location and the customer.
2317
+ #
2318
+ # @option params [String] :connection_id
2319
+ # The ID of the connection. This field is also used as the ID type for
2320
+ # operations that use multiple connection types (LAG, interconnect,
2321
+ # and/or connection).
2322
+ #
2323
+ # Example: dxcon-fg5678gh
2324
+ #
2325
+ # Default: None
2326
+ #
2327
+ # @option params [String] :virtual_interface_id
2328
+ # The ID of the virtual interface.
2329
+ #
2330
+ # Example: dxvif-123dfg56
2331
+ #
2332
+ # Default: None
2333
+ #
2334
+ # @return [Types::VirtualInterfaces] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2335
+ #
2336
+ # * {Types::VirtualInterfaces#virtual_interfaces #virtual_interfaces} => Array&lt;Types::VirtualInterface&gt;
2337
+ #
2338
+ # @example Request syntax with placeholder values
2339
+ #
2340
+ # resp = client.describe_virtual_interfaces({
2341
+ # connection_id: "ConnectionId",
2342
+ # virtual_interface_id: "VirtualInterfaceId",
2343
+ # })
2344
+ #
2345
+ # @example Response structure
2346
+ #
2347
+ # resp.virtual_interfaces #=> Array
2348
+ # resp.virtual_interfaces[0].owner_account #=> String
2349
+ # resp.virtual_interfaces[0].virtual_interface_id #=> String
2350
+ # resp.virtual_interfaces[0].location #=> String
2351
+ # resp.virtual_interfaces[0].connection_id #=> String
2352
+ # resp.virtual_interfaces[0].virtual_interface_type #=> String
2353
+ # resp.virtual_interfaces[0].virtual_interface_name #=> String
2354
+ # resp.virtual_interfaces[0].vlan #=> Integer
2355
+ # resp.virtual_interfaces[0].asn #=> Integer
2356
+ # resp.virtual_interfaces[0].auth_key #=> String
2357
+ # resp.virtual_interfaces[0].amazon_address #=> String
2358
+ # resp.virtual_interfaces[0].customer_address #=> String
2359
+ # resp.virtual_interfaces[0].address_family #=> String, one of "ipv4", "ipv6"
2360
+ # resp.virtual_interfaces[0].virtual_interface_state #=> String, one of "confirming", "verifying", "pending", "available", "down", "deleting", "deleted", "rejected"
2361
+ # resp.virtual_interfaces[0].customer_router_config #=> String
2362
+ # resp.virtual_interfaces[0].virtual_gateway_id #=> String
2363
+ # resp.virtual_interfaces[0].route_filter_prefixes #=> Array
2364
+ # resp.virtual_interfaces[0].route_filter_prefixes[0].cidr #=> String
2365
+ # resp.virtual_interfaces[0].bgp_peers #=> Array
2366
+ # resp.virtual_interfaces[0].bgp_peers[0].asn #=> Integer
2367
+ # resp.virtual_interfaces[0].bgp_peers[0].auth_key #=> String
2368
+ # resp.virtual_interfaces[0].bgp_peers[0].address_family #=> String, one of "ipv4", "ipv6"
2369
+ # resp.virtual_interfaces[0].bgp_peers[0].amazon_address #=> String
2370
+ # resp.virtual_interfaces[0].bgp_peers[0].customer_address #=> String
2371
+ # resp.virtual_interfaces[0].bgp_peers[0].bgp_peer_state #=> String, one of "verifying", "pending", "available", "deleting", "deleted"
2372
+ # resp.virtual_interfaces[0].bgp_peers[0].bgp_status #=> String, one of "up", "down"
2373
+ #
2374
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DescribeVirtualInterfaces AWS API Documentation
2375
+ #
2376
+ # @overload describe_virtual_interfaces(params = {})
2377
+ # @param [Hash] params ({})
2378
+ def describe_virtual_interfaces(params = {}, options = {})
2379
+ req = build_request(:describe_virtual_interfaces, params)
2380
+ req.send_request(options)
2381
+ end
2382
+
2383
+ # Disassociates a connection from a link aggregation group (LAG). The
2384
+ # connection is interrupted and re-established as a standalone
2385
+ # connection (the connection is not deleted; to delete the connection,
2386
+ # use the DeleteConnection request). If the LAG has associated virtual
2387
+ # interfaces or hosted connections, they remain associated with the LAG.
2388
+ # A disassociated connection owned by an AWS Direct Connect partner is
2389
+ # automatically converted to an interconnect.
2390
+ #
2391
+ # If disassociating the connection will cause the LAG to fall below its
2392
+ # setting for minimum number of operational connections, the request
2393
+ # fails, except when it's the last member of the LAG. If all
2394
+ # connections are disassociated, the LAG continues to exist as an empty
2395
+ # LAG with no physical connections.
2396
+ #
2397
+ # @option params [required, String] :connection_id
2398
+ # The ID of the connection to disassociate from the LAG.
2399
+ #
2400
+ # Example: dxcon-abc123
2401
+ #
2402
+ # Default: None
2403
+ #
2404
+ # @option params [required, String] :lag_id
2405
+ # The ID of the LAG.
2406
+ #
2407
+ # Example: dxlag-abc123
2408
+ #
2409
+ # Default: None
2410
+ #
2411
+ # @return [Types::Connection] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2412
+ #
2413
+ # * {Types::Connection#owner_account #owner_account} => String
2414
+ # * {Types::Connection#connection_id #connection_id} => String
2415
+ # * {Types::Connection#connection_name #connection_name} => String
2416
+ # * {Types::Connection#connection_state #connection_state} => String
2417
+ # * {Types::Connection#region #region} => String
2418
+ # * {Types::Connection#location #location} => String
2419
+ # * {Types::Connection#bandwidth #bandwidth} => String
2420
+ # * {Types::Connection#vlan #vlan} => Integer
2421
+ # * {Types::Connection#partner_name #partner_name} => String
2422
+ # * {Types::Connection#loa_issue_time #loa_issue_time} => Time
2423
+ # * {Types::Connection#lag_id #lag_id} => String
2424
+ # * {Types::Connection#aws_device #aws_device} => String
2425
+ #
2426
+ # @example Request syntax with placeholder values
2427
+ #
2428
+ # resp = client.disassociate_connection_from_lag({
2429
+ # connection_id: "ConnectionId", # required
2430
+ # lag_id: "LagId", # required
2431
+ # })
2432
+ #
2433
+ # @example Response structure
2434
+ #
2435
+ # resp.owner_account #=> String
2436
+ # resp.connection_id #=> String
2437
+ # resp.connection_name #=> String
2438
+ # resp.connection_state #=> String, one of "ordering", "requested", "pending", "available", "down", "deleting", "deleted", "rejected"
2439
+ # resp.region #=> String
2440
+ # resp.location #=> String
2441
+ # resp.bandwidth #=> String
2442
+ # resp.vlan #=> Integer
2443
+ # resp.partner_name #=> String
2444
+ # resp.loa_issue_time #=> Time
2445
+ # resp.lag_id #=> String
2446
+ # resp.aws_device #=> String
2447
+ #
2448
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DisassociateConnectionFromLag AWS API Documentation
2449
+ #
2450
+ # @overload disassociate_connection_from_lag(params = {})
2451
+ # @param [Hash] params ({})
2452
+ def disassociate_connection_from_lag(params = {}, options = {})
2453
+ req = build_request(:disassociate_connection_from_lag, params)
2454
+ req.send_request(options)
2455
+ end
1494
2456
 
1495
- # @api private
1496
- def errors_module
1497
- Errors
1498
- end
2457
+ # Adds the specified tags to the specified Direct Connect resource. Each
2458
+ # Direct Connect resource can have a maximum of 50 tags.
2459
+ #
2460
+ # Each tag consists of a key and an optional value. If a tag with the
2461
+ # same key is already associated with the Direct Connect resource, this
2462
+ # action updates its value.
2463
+ #
2464
+ # @option params [required, String] :resource_arn
2465
+ # The Amazon Resource Name (ARN) of the Direct Connect resource.
2466
+ #
2467
+ # Example:
2468
+ # arn:aws:directconnect:us-east-1:123456789012:dxcon/dxcon-fg5678gh
2469
+ #
2470
+ # @option params [required, Array<Types::Tag>] :tags
2471
+ # The list of tags to add.
2472
+ #
2473
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2474
+ #
2475
+ # @example Request syntax with placeholder values
2476
+ #
2477
+ # resp = client.tag_resource({
2478
+ # resource_arn: "ResourceArn", # required
2479
+ # tags: [ # required
2480
+ # {
2481
+ # key: "TagKey", # required
2482
+ # value: "TagValue",
2483
+ # },
2484
+ # ],
2485
+ # })
2486
+ #
2487
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/TagResource AWS API Documentation
2488
+ #
2489
+ # @overload tag_resource(params = {})
2490
+ # @param [Hash] params ({})
2491
+ def tag_resource(params = {}, options = {})
2492
+ req = build_request(:tag_resource, params)
2493
+ req.send_request(options)
2494
+ end
2495
+
2496
+ # Removes one or more tags from the specified Direct Connect resource.
2497
+ #
2498
+ # @option params [required, String] :resource_arn
2499
+ # The Amazon Resource Name (ARN) of the Direct Connect resource.
2500
+ #
2501
+ # @option params [required, Array<String>] :tag_keys
2502
+ # The list of tag keys to remove.
2503
+ #
2504
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2505
+ #
2506
+ # @example Request syntax with placeholder values
2507
+ #
2508
+ # resp = client.untag_resource({
2509
+ # resource_arn: "ResourceArn", # required
2510
+ # tag_keys: ["TagKey"], # required
2511
+ # })
2512
+ #
2513
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/UntagResource AWS API Documentation
2514
+ #
2515
+ # @overload untag_resource(params = {})
2516
+ # @param [Hash] params ({})
2517
+ def untag_resource(params = {}, options = {})
2518
+ req = build_request(:untag_resource, params)
2519
+ req.send_request(options)
2520
+ end
2521
+
2522
+ # Updates the attributes of a link aggregation group (LAG).
2523
+ #
2524
+ # You can update the following attributes:
2525
+ #
2526
+ # * The name of the LAG.
2527
+ #
2528
+ # * The value for the minimum number of connections that must be
2529
+ # operational for the LAG itself to be operational.
2530
+ #
2531
+ # When you create a LAG, the default value for the minimum number of
2532
+ # operational connections is zero (0). If you update this value, and the
2533
+ # number of operational connections falls below the specified value, the
2534
+ # LAG will automatically go down to avoid overutilization of the
2535
+ # remaining connections. Adjusting this value should be done with care
2536
+ # as it could force the LAG down if the value is set higher than the
2537
+ # current number of operational connections.
2538
+ #
2539
+ # @option params [required, String] :lag_id
2540
+ # The ID of the LAG to update.
2541
+ #
2542
+ # Example: dxlag-abc123
2543
+ #
2544
+ # Default: None
2545
+ #
2546
+ # @option params [String] :lag_name
2547
+ # The name for the LAG.
2548
+ #
2549
+ # Example: "`3x10G LAG to AWS`"
2550
+ #
2551
+ # Default: None
2552
+ #
2553
+ # @option params [Integer] :minimum_links
2554
+ # The minimum number of physical connections that must be operational
2555
+ # for the LAG itself to be operational.
2556
+ #
2557
+ # Default: None
2558
+ #
2559
+ # @return [Types::Lag] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2560
+ #
2561
+ # * {Types::Lag#connections_bandwidth #connections_bandwidth} => String
2562
+ # * {Types::Lag#number_of_connections #number_of_connections} => Integer
2563
+ # * {Types::Lag#lag_id #lag_id} => String
2564
+ # * {Types::Lag#owner_account #owner_account} => String
2565
+ # * {Types::Lag#lag_name #lag_name} => String
2566
+ # * {Types::Lag#lag_state #lag_state} => String
2567
+ # * {Types::Lag#location #location} => String
2568
+ # * {Types::Lag#region #region} => String
2569
+ # * {Types::Lag#minimum_links #minimum_links} => Integer
2570
+ # * {Types::Lag#aws_device #aws_device} => String
2571
+ # * {Types::Lag#connections #connections} => Array&lt;Types::Connection&gt;
2572
+ # * {Types::Lag#allows_hosted_connections #allows_hosted_connections} => Boolean
2573
+ #
2574
+ # @example Request syntax with placeholder values
2575
+ #
2576
+ # resp = client.update_lag({
2577
+ # lag_id: "LagId", # required
2578
+ # lag_name: "LagName",
2579
+ # minimum_links: 1,
2580
+ # })
2581
+ #
2582
+ # @example Response structure
2583
+ #
2584
+ # resp.connections_bandwidth #=> String
2585
+ # resp.number_of_connections #=> Integer
2586
+ # resp.lag_id #=> String
2587
+ # resp.owner_account #=> String
2588
+ # resp.lag_name #=> String
2589
+ # resp.lag_state #=> String, one of "requested", "pending", "available", "down", "deleting", "deleted"
2590
+ # resp.location #=> String
2591
+ # resp.region #=> String
2592
+ # resp.minimum_links #=> Integer
2593
+ # resp.aws_device #=> String
2594
+ # resp.connections #=> Array
2595
+ # resp.connections[0].owner_account #=> String
2596
+ # resp.connections[0].connection_id #=> String
2597
+ # resp.connections[0].connection_name #=> String
2598
+ # resp.connections[0].connection_state #=> String, one of "ordering", "requested", "pending", "available", "down", "deleting", "deleted", "rejected"
2599
+ # resp.connections[0].region #=> String
2600
+ # resp.connections[0].location #=> String
2601
+ # resp.connections[0].bandwidth #=> String
2602
+ # resp.connections[0].vlan #=> Integer
2603
+ # resp.connections[0].partner_name #=> String
2604
+ # resp.connections[0].loa_issue_time #=> Time
2605
+ # resp.connections[0].lag_id #=> String
2606
+ # resp.connections[0].aws_device #=> String
2607
+ # resp.allows_hosted_connections #=> Boolean
2608
+ #
2609
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/UpdateLag AWS API Documentation
2610
+ #
2611
+ # @overload update_lag(params = {})
2612
+ # @param [Hash] params ({})
2613
+ def update_lag(params = {}, options = {})
2614
+ req = build_request(:update_lag, params)
2615
+ req.send_request(options)
2616
+ end
1499
2617
 
2618
+ # @!endgroup
2619
+
2620
+ # @param params ({})
2621
+ # @api private
2622
+ def build_request(operation_name, params = {})
2623
+ handlers = @handlers.for(operation_name)
2624
+ context = Seahorse::Client::RequestContext.new(
2625
+ operation_name: operation_name,
2626
+ operation: config.api.operation(operation_name),
2627
+ client: self,
2628
+ params: params,
2629
+ config: config)
2630
+ context[:gem_name] = 'aws-sdk-directconnect'
2631
+ context[:gem_version] = '1.0.0.rc3'
2632
+ Seahorse::Client::Request.new(handlers, context)
2633
+ end
2634
+
2635
+ # @api private
2636
+ # @deprecated
2637
+ def waiter_names
2638
+ []
2639
+ end
2640
+
2641
+ class << self
2642
+
2643
+ # @api private
2644
+ attr_reader :identifier
2645
+
2646
+ # @api private
2647
+ def errors_module
2648
+ Errors
1500
2649
  end
2650
+
1501
2651
  end
1502
2652
  end
1503
2653
  end