aws-sdk-vpclattice 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,3928 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::VPCLattice
11
+ module Types
12
+
13
+ # The user does not have sufficient access to perform this action.
14
+ #
15
+ # @!attribute [rw] message
16
+ # @return [String]
17
+ #
18
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/AccessDeniedException AWS API Documentation
19
+ #
20
+ class AccessDeniedException < Struct.new(
21
+ :message)
22
+ SENSITIVE = []
23
+ include Aws::Structure
24
+ end
25
+
26
+ # Summary information about an access log subscription.
27
+ #
28
+ # @!attribute [rw] arn
29
+ # The Amazon Resource Name (ARN) of the access log subscription
30
+ # @return [String]
31
+ #
32
+ # @!attribute [rw] created_at
33
+ # The date and time that the access log subscription was created,
34
+ # specified in ISO-8601 format.
35
+ # @return [Time]
36
+ #
37
+ # @!attribute [rw] destination_arn
38
+ # The Amazon Resource Name (ARN) of the destination.
39
+ # @return [String]
40
+ #
41
+ # @!attribute [rw] id
42
+ # The ID of the access log subscription.
43
+ # @return [String]
44
+ #
45
+ # @!attribute [rw] last_updated_at
46
+ # The date and time that the access log subscription was last updated,
47
+ # specified in ISO-8601 format.
48
+ # @return [Time]
49
+ #
50
+ # @!attribute [rw] resource_arn
51
+ # The Amazon Resource Name (ARN) of the service or service network.
52
+ # @return [String]
53
+ #
54
+ # @!attribute [rw] resource_id
55
+ # The ID of the service or service network.
56
+ # @return [String]
57
+ #
58
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/AccessLogSubscriptionSummary AWS API Documentation
59
+ #
60
+ class AccessLogSubscriptionSummary < Struct.new(
61
+ :arn,
62
+ :created_at,
63
+ :destination_arn,
64
+ :id,
65
+ :last_updated_at,
66
+ :resource_arn,
67
+ :resource_id)
68
+ SENSITIVE = []
69
+ include Aws::Structure
70
+ end
71
+
72
+ # @!attribute [rw] listener_identifier
73
+ # The ID or Amazon Resource Name (ARN) of the listener.
74
+ # @return [String]
75
+ #
76
+ # @!attribute [rw] rules
77
+ # The rules for the specified listener.
78
+ # @return [Array<Types::RuleUpdate>]
79
+ #
80
+ # @!attribute [rw] service_identifier
81
+ # The ID or Amazon Resource Name (ARN) of the service.
82
+ # @return [String]
83
+ #
84
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/BatchUpdateRuleRequest AWS API Documentation
85
+ #
86
+ class BatchUpdateRuleRequest < Struct.new(
87
+ :listener_identifier,
88
+ :rules,
89
+ :service_identifier)
90
+ SENSITIVE = []
91
+ include Aws::Structure
92
+ end
93
+
94
+ # @!attribute [rw] successful
95
+ # The rules that were successfully updated.
96
+ # @return [Array<Types::RuleUpdateSuccess>]
97
+ #
98
+ # @!attribute [rw] unsuccessful
99
+ # The rules that the operation couldn't update.
100
+ # @return [Array<Types::RuleUpdateFailure>]
101
+ #
102
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/BatchUpdateRuleResponse AWS API Documentation
103
+ #
104
+ class BatchUpdateRuleResponse < Struct.new(
105
+ :successful,
106
+ :unsuccessful)
107
+ SENSITIVE = []
108
+ include Aws::Structure
109
+ end
110
+
111
+ # The request conflicts with the current state of the resource. Updating
112
+ # or deleting a resource can cause an inconsistent state.
113
+ #
114
+ # @!attribute [rw] message
115
+ # @return [String]
116
+ #
117
+ # @!attribute [rw] resource_id
118
+ # The resource ID.
119
+ # @return [String]
120
+ #
121
+ # @!attribute [rw] resource_type
122
+ # The resource type.
123
+ # @return [String]
124
+ #
125
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ConflictException AWS API Documentation
126
+ #
127
+ class ConflictException < Struct.new(
128
+ :message,
129
+ :resource_id,
130
+ :resource_type)
131
+ SENSITIVE = []
132
+ include Aws::Structure
133
+ end
134
+
135
+ # @!attribute [rw] client_token
136
+ # A unique, case-sensitive identifier that you provide to ensure the
137
+ # idempotency of the request. If you retry a request that completed
138
+ # successfully using the same client token and parameters, the retry
139
+ # succeeds without performing any actions. If the parameters aren't
140
+ # identical, the retry fails.
141
+ #
142
+ # **A suitable default value is auto-generated.** You should normally
143
+ # not need to pass this option.
144
+ # @return [String]
145
+ #
146
+ # @!attribute [rw] destination_arn
147
+ # The Amazon Resource Name (ARN) of the destination. The supported
148
+ # destination types are CloudWatch Log groups, Kinesis Data Firehose
149
+ # delivery streams, and Amazon S3 buckets.
150
+ # @return [String]
151
+ #
152
+ # @!attribute [rw] resource_identifier
153
+ # The ID or Amazon Resource Name (ARN) of the service network or
154
+ # service.
155
+ # @return [String]
156
+ #
157
+ # @!attribute [rw] tags
158
+ # The tags for the access log subscription.
159
+ # @return [Hash<String,String>]
160
+ #
161
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/CreateAccessLogSubscriptionRequest AWS API Documentation
162
+ #
163
+ class CreateAccessLogSubscriptionRequest < Struct.new(
164
+ :client_token,
165
+ :destination_arn,
166
+ :resource_identifier,
167
+ :tags)
168
+ SENSITIVE = []
169
+ include Aws::Structure
170
+ end
171
+
172
+ # @!attribute [rw] arn
173
+ # The Amazon Resource Name (ARN) of the access log subscription.
174
+ # @return [String]
175
+ #
176
+ # @!attribute [rw] destination_arn
177
+ # The Amazon Resource Name (ARN) of the log destination.
178
+ # @return [String]
179
+ #
180
+ # @!attribute [rw] id
181
+ # The ID of the access log subscription.
182
+ # @return [String]
183
+ #
184
+ # @!attribute [rw] resource_arn
185
+ # The Amazon Resource Name (ARN) of the service network or service.
186
+ # @return [String]
187
+ #
188
+ # @!attribute [rw] resource_id
189
+ # The ID of the service network or service.
190
+ # @return [String]
191
+ #
192
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/CreateAccessLogSubscriptionResponse AWS API Documentation
193
+ #
194
+ class CreateAccessLogSubscriptionResponse < Struct.new(
195
+ :arn,
196
+ :destination_arn,
197
+ :id,
198
+ :resource_arn,
199
+ :resource_id)
200
+ SENSITIVE = []
201
+ include Aws::Structure
202
+ end
203
+
204
+ # @!attribute [rw] client_token
205
+ # A unique, case-sensitive identifier that you provide to ensure the
206
+ # idempotency of the request. If you retry a request that completed
207
+ # successfully using the same client token and parameters, the retry
208
+ # succeeds without performing any actions. If the parameters aren't
209
+ # identical, the retry fails.
210
+ #
211
+ # **A suitable default value is auto-generated.** You should normally
212
+ # not need to pass this option.
213
+ # @return [String]
214
+ #
215
+ # @!attribute [rw] default_action
216
+ # The action for the default rule. Each listener has a default rule.
217
+ # Each rule consists of a priority, one or more actions, and one or
218
+ # more conditions. The default rule is the rule that's used if no
219
+ # other rules match. Each rule must include exactly one of the
220
+ # following types of actions: `forward `or `fixed-response`, and it
221
+ # must be the last action to be performed.
222
+ # @return [Types::RuleAction]
223
+ #
224
+ # @!attribute [rw] name
225
+ # The name of the listener. A listener name must be unique within a
226
+ # service. The valid characters are a-z, 0-9, and hyphens (-). You
227
+ # can't use a hyphen as the first or last character, or immediately
228
+ # after another hyphen.
229
+ # @return [String]
230
+ #
231
+ # @!attribute [rw] port
232
+ # The listener port. You can specify a value from `1` to `65535`. For
233
+ # HTTP, the default is `80`. For HTTPS, the default is `443`.
234
+ # @return [Integer]
235
+ #
236
+ # @!attribute [rw] protocol
237
+ # The listener protocol HTTP or HTTPS.
238
+ # @return [String]
239
+ #
240
+ # @!attribute [rw] service_identifier
241
+ # The ID or Amazon Resource Name (ARN) of the service.
242
+ # @return [String]
243
+ #
244
+ # @!attribute [rw] tags
245
+ # The tags for the listener.
246
+ # @return [Hash<String,String>]
247
+ #
248
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/CreateListenerRequest AWS API Documentation
249
+ #
250
+ class CreateListenerRequest < Struct.new(
251
+ :client_token,
252
+ :default_action,
253
+ :name,
254
+ :port,
255
+ :protocol,
256
+ :service_identifier,
257
+ :tags)
258
+ SENSITIVE = []
259
+ include Aws::Structure
260
+ end
261
+
262
+ # @!attribute [rw] arn
263
+ # The Amazon Resource Name (ARN) of the listener.
264
+ # @return [String]
265
+ #
266
+ # @!attribute [rw] default_action
267
+ # The action for the default rule.
268
+ # @return [Types::RuleAction]
269
+ #
270
+ # @!attribute [rw] id
271
+ # The ID of the listener.
272
+ # @return [String]
273
+ #
274
+ # @!attribute [rw] name
275
+ # The name of the listener.
276
+ # @return [String]
277
+ #
278
+ # @!attribute [rw] port
279
+ # The port number of the listener.
280
+ # @return [Integer]
281
+ #
282
+ # @!attribute [rw] protocol
283
+ # The protocol of the listener.
284
+ # @return [String]
285
+ #
286
+ # @!attribute [rw] service_arn
287
+ # The Amazon Resource Name (ARN) of the service.
288
+ # @return [String]
289
+ #
290
+ # @!attribute [rw] service_id
291
+ # The ID of the service.
292
+ # @return [String]
293
+ #
294
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/CreateListenerResponse AWS API Documentation
295
+ #
296
+ class CreateListenerResponse < Struct.new(
297
+ :arn,
298
+ :default_action,
299
+ :id,
300
+ :name,
301
+ :port,
302
+ :protocol,
303
+ :service_arn,
304
+ :service_id)
305
+ SENSITIVE = []
306
+ include Aws::Structure
307
+ end
308
+
309
+ # @!attribute [rw] action
310
+ # The action for the default rule.
311
+ # @return [Types::RuleAction]
312
+ #
313
+ # @!attribute [rw] client_token
314
+ # A unique, case-sensitive identifier that you provide to ensure the
315
+ # idempotency of the request. If you retry a request that completed
316
+ # successfully using the same client token and parameters, the retry
317
+ # succeeds without performing any actions. If the parameters aren't
318
+ # identical, the retry fails.
319
+ #
320
+ # **A suitable default value is auto-generated.** You should normally
321
+ # not need to pass this option.
322
+ # @return [String]
323
+ #
324
+ # @!attribute [rw] listener_identifier
325
+ # The ID or Amazon Resource Name (ARN) of the listener.
326
+ # @return [String]
327
+ #
328
+ # @!attribute [rw] match
329
+ # The rule match.
330
+ # @return [Types::RuleMatch]
331
+ #
332
+ # @!attribute [rw] name
333
+ # The name of the rule. The name must be unique within the listener.
334
+ # The valid characters are a-z, 0-9, and hyphens (-). You can't use a
335
+ # hyphen as the first or last character, or immediately after another
336
+ # hyphen.
337
+ # @return [String]
338
+ #
339
+ # @!attribute [rw] priority
340
+ # The priority assigned to the rule. Each rule for a specific listener
341
+ # must have a unique priority. The lower the priority number the
342
+ # higher the priority.
343
+ # @return [Integer]
344
+ #
345
+ # @!attribute [rw] service_identifier
346
+ # The ID or Amazon Resource Name (ARN) of the service.
347
+ # @return [String]
348
+ #
349
+ # @!attribute [rw] tags
350
+ # The tags for the rule.
351
+ # @return [Hash<String,String>]
352
+ #
353
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/CreateRuleRequest AWS API Documentation
354
+ #
355
+ class CreateRuleRequest < Struct.new(
356
+ :action,
357
+ :client_token,
358
+ :listener_identifier,
359
+ :match,
360
+ :name,
361
+ :priority,
362
+ :service_identifier,
363
+ :tags)
364
+ SENSITIVE = []
365
+ include Aws::Structure
366
+ end
367
+
368
+ # @!attribute [rw] action
369
+ # The rule action. Each rule must include exactly one of the following
370
+ # types of actions: `forward `or `fixed-response`, and it must be the
371
+ # last action to be performed.
372
+ # @return [Types::RuleAction]
373
+ #
374
+ # @!attribute [rw] arn
375
+ # The Amazon Resource Name (ARN) of the rule.
376
+ # @return [String]
377
+ #
378
+ # @!attribute [rw] id
379
+ # The ID of the rule.
380
+ # @return [String]
381
+ #
382
+ # @!attribute [rw] match
383
+ # The rule match. The `RuleMatch` must be an `HttpMatch`. This means
384
+ # that the rule should be an exact match on HTTP constraints which are
385
+ # made up of the HTTP method, path, and header.
386
+ # @return [Types::RuleMatch]
387
+ #
388
+ # @!attribute [rw] name
389
+ # The name of the rule.
390
+ # @return [String]
391
+ #
392
+ # @!attribute [rw] priority
393
+ # The priority assigned to the rule. The lower the priority number the
394
+ # higher the priority.
395
+ # @return [Integer]
396
+ #
397
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/CreateRuleResponse AWS API Documentation
398
+ #
399
+ class CreateRuleResponse < Struct.new(
400
+ :action,
401
+ :arn,
402
+ :id,
403
+ :match,
404
+ :name,
405
+ :priority)
406
+ SENSITIVE = []
407
+ include Aws::Structure
408
+ end
409
+
410
+ # @!attribute [rw] auth_type
411
+ # The type of IAM policy.
412
+ #
413
+ # * `NONE`: The resource does not use an IAM policy. This is the
414
+ # default.
415
+ #
416
+ # * `AWS_IAM`: The resource uses an IAM policy. When this type is
417
+ # used, auth is enabled and an auth policy is required.
418
+ # @return [String]
419
+ #
420
+ # @!attribute [rw] client_token
421
+ # A unique, case-sensitive identifier that you provide to ensure the
422
+ # idempotency of the request. If you retry a request that completed
423
+ # successfully using the same client token and parameters, the retry
424
+ # succeeds without performing any actions. If the parameters aren't
425
+ # identical, the retry fails.
426
+ #
427
+ # **A suitable default value is auto-generated.** You should normally
428
+ # not need to pass this option.
429
+ # @return [String]
430
+ #
431
+ # @!attribute [rw] name
432
+ # The name of the service network. The name must be unique to the
433
+ # account. The valid characters are a-z, 0-9, and hyphens (-). You
434
+ # can't use a hyphen as the first or last character, or immediately
435
+ # after another hyphen.
436
+ # @return [String]
437
+ #
438
+ # @!attribute [rw] tags
439
+ # The tags for the service network.
440
+ # @return [Hash<String,String>]
441
+ #
442
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/CreateServiceNetworkRequest AWS API Documentation
443
+ #
444
+ class CreateServiceNetworkRequest < Struct.new(
445
+ :auth_type,
446
+ :client_token,
447
+ :name,
448
+ :tags)
449
+ SENSITIVE = []
450
+ include Aws::Structure
451
+ end
452
+
453
+ # @!attribute [rw] arn
454
+ # The Amazon Resource Name (ARN) of the service network.
455
+ # @return [String]
456
+ #
457
+ # @!attribute [rw] auth_type
458
+ # The type of IAM policy.
459
+ # @return [String]
460
+ #
461
+ # @!attribute [rw] id
462
+ # The ID of the service network.
463
+ # @return [String]
464
+ #
465
+ # @!attribute [rw] name
466
+ # The name of the service network.
467
+ # @return [String]
468
+ #
469
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/CreateServiceNetworkResponse AWS API Documentation
470
+ #
471
+ class CreateServiceNetworkResponse < Struct.new(
472
+ :arn,
473
+ :auth_type,
474
+ :id,
475
+ :name)
476
+ SENSITIVE = []
477
+ include Aws::Structure
478
+ end
479
+
480
+ # @!attribute [rw] client_token
481
+ # A unique, case-sensitive identifier that you provide to ensure the
482
+ # idempotency of the request. If you retry a request that completed
483
+ # successfully using the same client token and parameters, the retry
484
+ # succeeds without performing any actions. If the parameters aren't
485
+ # identical, the retry fails.
486
+ #
487
+ # **A suitable default value is auto-generated.** You should normally
488
+ # not need to pass this option.
489
+ # @return [String]
490
+ #
491
+ # @!attribute [rw] service_identifier
492
+ # The ID or Amazon Resource Name (ARN) of the service.
493
+ # @return [String]
494
+ #
495
+ # @!attribute [rw] service_network_identifier
496
+ # The ID or Amazon Resource Name (ARN) of the service network. You
497
+ # must use the ARN if the resources specified in the operation are in
498
+ # different accounts.
499
+ # @return [String]
500
+ #
501
+ # @!attribute [rw] tags
502
+ # The tags for the association.
503
+ # @return [Hash<String,String>]
504
+ #
505
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/CreateServiceNetworkServiceAssociationRequest AWS API Documentation
506
+ #
507
+ class CreateServiceNetworkServiceAssociationRequest < Struct.new(
508
+ :client_token,
509
+ :service_identifier,
510
+ :service_network_identifier,
511
+ :tags)
512
+ SENSITIVE = []
513
+ include Aws::Structure
514
+ end
515
+
516
+ # @!attribute [rw] arn
517
+ # The Amazon Resource Name (ARN) of the association.
518
+ # @return [String]
519
+ #
520
+ # @!attribute [rw] created_by
521
+ # The account that created the association.
522
+ # @return [String]
523
+ #
524
+ # @!attribute [rw] custom_domain_name
525
+ # The custom domain name of the service.
526
+ # @return [String]
527
+ #
528
+ # @!attribute [rw] dns_entry
529
+ # The DNS name of the service.
530
+ # @return [Types::DnsEntry]
531
+ #
532
+ # @!attribute [rw] id
533
+ # The ID of the association.
534
+ # @return [String]
535
+ #
536
+ # @!attribute [rw] status
537
+ # The operation's status.
538
+ # @return [String]
539
+ #
540
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/CreateServiceNetworkServiceAssociationResponse AWS API Documentation
541
+ #
542
+ class CreateServiceNetworkServiceAssociationResponse < Struct.new(
543
+ :arn,
544
+ :created_by,
545
+ :custom_domain_name,
546
+ :dns_entry,
547
+ :id,
548
+ :status)
549
+ SENSITIVE = []
550
+ include Aws::Structure
551
+ end
552
+
553
+ # @!attribute [rw] client_token
554
+ # A unique, case-sensitive identifier that you provide to ensure the
555
+ # idempotency of the request. If you retry a request that completed
556
+ # successfully using the same client token and parameters, the retry
557
+ # succeeds without performing any actions. If the parameters aren't
558
+ # identical, the retry fails.
559
+ #
560
+ # **A suitable default value is auto-generated.** You should normally
561
+ # not need to pass this option.
562
+ # @return [String]
563
+ #
564
+ # @!attribute [rw] security_group_ids
565
+ # The IDs of the security groups. Security groups aren't added by
566
+ # default. You can add a security group to apply network level
567
+ # controls to control which resources in a VPC are allowed to access
568
+ # the service network and its services. For more information, see
569
+ # [Control traffic to resources using security groups][1] in the
570
+ # *Amazon VPC User Guide*.
571
+ #
572
+ #
573
+ #
574
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html
575
+ # @return [Array<String>]
576
+ #
577
+ # @!attribute [rw] service_network_identifier
578
+ # The ID or Amazon Resource Name (ARN) of the service network. You
579
+ # must use the ARN when the resources specified in the operation are
580
+ # in different accounts.
581
+ # @return [String]
582
+ #
583
+ # @!attribute [rw] tags
584
+ # The tags for the association.
585
+ # @return [Hash<String,String>]
586
+ #
587
+ # @!attribute [rw] vpc_identifier
588
+ # The ID of the VPC.
589
+ # @return [String]
590
+ #
591
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/CreateServiceNetworkVpcAssociationRequest AWS API Documentation
592
+ #
593
+ class CreateServiceNetworkVpcAssociationRequest < Struct.new(
594
+ :client_token,
595
+ :security_group_ids,
596
+ :service_network_identifier,
597
+ :tags,
598
+ :vpc_identifier)
599
+ SENSITIVE = []
600
+ include Aws::Structure
601
+ end
602
+
603
+ # @!attribute [rw] arn
604
+ # The Amazon Resource Name (ARN) of the association.
605
+ # @return [String]
606
+ #
607
+ # @!attribute [rw] created_by
608
+ # The account that created the association.
609
+ # @return [String]
610
+ #
611
+ # @!attribute [rw] id
612
+ # The ID of the association.
613
+ # @return [String]
614
+ #
615
+ # @!attribute [rw] security_group_ids
616
+ # The IDs of the security groups.
617
+ # @return [Array<String>]
618
+ #
619
+ # @!attribute [rw] status
620
+ # The operation's status.
621
+ # @return [String]
622
+ #
623
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/CreateServiceNetworkVpcAssociationResponse AWS API Documentation
624
+ #
625
+ class CreateServiceNetworkVpcAssociationResponse < Struct.new(
626
+ :arn,
627
+ :created_by,
628
+ :id,
629
+ :security_group_ids,
630
+ :status)
631
+ SENSITIVE = []
632
+ include Aws::Structure
633
+ end
634
+
635
+ # @!attribute [rw] auth_type
636
+ # The type of IAM policy.
637
+ #
638
+ # * `NONE`: The resource does not use an IAM policy. This is the
639
+ # default.
640
+ #
641
+ # * `AWS_IAM`: The resource uses an IAM policy. When this type is
642
+ # used, auth is enabled and an auth policy is required.
643
+ # @return [String]
644
+ #
645
+ # @!attribute [rw] certificate_arn
646
+ # The Amazon Resource Name (ARN) of the certificate.
647
+ # @return [String]
648
+ #
649
+ # @!attribute [rw] client_token
650
+ # A unique, case-sensitive identifier that you provide to ensure the
651
+ # idempotency of the request. If you retry a request that completed
652
+ # successfully using the same client token and parameters, the retry
653
+ # succeeds without performing any actions. If the parameters aren't
654
+ # identical, the retry fails.
655
+ #
656
+ # **A suitable default value is auto-generated.** You should normally
657
+ # not need to pass this option.
658
+ # @return [String]
659
+ #
660
+ # @!attribute [rw] custom_domain_name
661
+ # The custom domain name of the service.
662
+ # @return [String]
663
+ #
664
+ # @!attribute [rw] name
665
+ # The name of the service. The name must be unique within the account.
666
+ # The valid characters are a-z, 0-9, and hyphens (-). You can't use a
667
+ # hyphen as the first or last character, or immediately after another
668
+ # hyphen.
669
+ # @return [String]
670
+ #
671
+ # @!attribute [rw] tags
672
+ # The tags for the service.
673
+ # @return [Hash<String,String>]
674
+ #
675
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/CreateServiceRequest AWS API Documentation
676
+ #
677
+ class CreateServiceRequest < Struct.new(
678
+ :auth_type,
679
+ :certificate_arn,
680
+ :client_token,
681
+ :custom_domain_name,
682
+ :name,
683
+ :tags)
684
+ SENSITIVE = []
685
+ include Aws::Structure
686
+ end
687
+
688
+ # @!attribute [rw] arn
689
+ # The Amazon Resource Name (ARN) of the service.
690
+ # @return [String]
691
+ #
692
+ # @!attribute [rw] auth_type
693
+ # The type of IAM policy.
694
+ # @return [String]
695
+ #
696
+ # @!attribute [rw] certificate_arn
697
+ # The Amazon Resource Name (ARN) of the certificate.
698
+ # @return [String]
699
+ #
700
+ # @!attribute [rw] custom_domain_name
701
+ # The custom domain name of the service.
702
+ # @return [String]
703
+ #
704
+ # @!attribute [rw] dns_entry
705
+ # The public DNS name of the service.
706
+ # @return [Types::DnsEntry]
707
+ #
708
+ # @!attribute [rw] id
709
+ # The ID of the service.
710
+ # @return [String]
711
+ #
712
+ # @!attribute [rw] name
713
+ # The name of the service.
714
+ # @return [String]
715
+ #
716
+ # @!attribute [rw] status
717
+ # The status. If the status is `CREATE_FAILED`, you will have to
718
+ # delete and recreate the service.
719
+ # @return [String]
720
+ #
721
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/CreateServiceResponse AWS API Documentation
722
+ #
723
+ class CreateServiceResponse < Struct.new(
724
+ :arn,
725
+ :auth_type,
726
+ :certificate_arn,
727
+ :custom_domain_name,
728
+ :dns_entry,
729
+ :id,
730
+ :name,
731
+ :status)
732
+ SENSITIVE = []
733
+ include Aws::Structure
734
+ end
735
+
736
+ # @!attribute [rw] client_token
737
+ # A unique, case-sensitive identifier that you provide to ensure the
738
+ # idempotency of the request. If you retry a request that completed
739
+ # successfully using the same client token and parameters, the retry
740
+ # succeeds without performing any actions. If the parameters aren't
741
+ # identical, the retry fails.
742
+ #
743
+ # **A suitable default value is auto-generated.** You should normally
744
+ # not need to pass this option.
745
+ # @return [String]
746
+ #
747
+ # @!attribute [rw] config
748
+ # The target group configuration. If `type` is set to `LAMBDA`, this
749
+ # parameter doesn't apply.
750
+ # @return [Types::TargetGroupConfig]
751
+ #
752
+ # @!attribute [rw] name
753
+ # The name of the target group. The name must be unique within the
754
+ # account. The valid characters are a-z, 0-9, and hyphens (-). You
755
+ # can't use a hyphen as the first or last character, or immediately
756
+ # after another hyphen.
757
+ # @return [String]
758
+ #
759
+ # @!attribute [rw] tags
760
+ # The tags for the target group.
761
+ # @return [Hash<String,String>]
762
+ #
763
+ # @!attribute [rw] type
764
+ # The type of target group.
765
+ # @return [String]
766
+ #
767
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/CreateTargetGroupRequest AWS API Documentation
768
+ #
769
+ class CreateTargetGroupRequest < Struct.new(
770
+ :client_token,
771
+ :config,
772
+ :name,
773
+ :tags,
774
+ :type)
775
+ SENSITIVE = []
776
+ include Aws::Structure
777
+ end
778
+
779
+ # @!attribute [rw] arn
780
+ # The Amazon Resource Name (ARN) of the target group.
781
+ # @return [String]
782
+ #
783
+ # @!attribute [rw] config
784
+ # The target group configuration. If `type` is set to `LAMBDA`, this
785
+ # parameter doesn't apply.
786
+ # @return [Types::TargetGroupConfig]
787
+ #
788
+ # @!attribute [rw] id
789
+ # The ID of the target group.
790
+ # @return [String]
791
+ #
792
+ # @!attribute [rw] name
793
+ # The name of the target group.
794
+ # @return [String]
795
+ #
796
+ # @!attribute [rw] status
797
+ # The operation's status. You can retry the operation if the status
798
+ # is `CREATE_FAILED`. However, if you retry it while the status is
799
+ # `CREATE_IN_PROGRESS`, there is no change in the status.
800
+ # @return [String]
801
+ #
802
+ # @!attribute [rw] type
803
+ # The type of target group.
804
+ # @return [String]
805
+ #
806
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/CreateTargetGroupResponse AWS API Documentation
807
+ #
808
+ class CreateTargetGroupResponse < Struct.new(
809
+ :arn,
810
+ :config,
811
+ :id,
812
+ :name,
813
+ :status,
814
+ :type)
815
+ SENSITIVE = []
816
+ include Aws::Structure
817
+ end
818
+
819
+ # @!attribute [rw] access_log_subscription_identifier
820
+ # The ID or Amazon Resource Name (ARN) of the access log subscription.
821
+ # @return [String]
822
+ #
823
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteAccessLogSubscriptionRequest AWS API Documentation
824
+ #
825
+ class DeleteAccessLogSubscriptionRequest < Struct.new(
826
+ :access_log_subscription_identifier)
827
+ SENSITIVE = []
828
+ include Aws::Structure
829
+ end
830
+
831
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteAccessLogSubscriptionResponse AWS API Documentation
832
+ #
833
+ class DeleteAccessLogSubscriptionResponse < Aws::EmptyStructure; end
834
+
835
+ # @!attribute [rw] resource_identifier
836
+ # The ID or Amazon Resource Name (ARN) of the resource.
837
+ # @return [String]
838
+ #
839
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteAuthPolicyRequest AWS API Documentation
840
+ #
841
+ class DeleteAuthPolicyRequest < Struct.new(
842
+ :resource_identifier)
843
+ SENSITIVE = []
844
+ include Aws::Structure
845
+ end
846
+
847
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteAuthPolicyResponse AWS API Documentation
848
+ #
849
+ class DeleteAuthPolicyResponse < Aws::EmptyStructure; end
850
+
851
+ # @!attribute [rw] listener_identifier
852
+ # The ID or Amazon Resource Name (ARN) of the listener.
853
+ # @return [String]
854
+ #
855
+ # @!attribute [rw] service_identifier
856
+ # The ID or Amazon Resource Name (ARN) of the service.
857
+ # @return [String]
858
+ #
859
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteListenerRequest AWS API Documentation
860
+ #
861
+ class DeleteListenerRequest < Struct.new(
862
+ :listener_identifier,
863
+ :service_identifier)
864
+ SENSITIVE = []
865
+ include Aws::Structure
866
+ end
867
+
868
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteListenerResponse AWS API Documentation
869
+ #
870
+ class DeleteListenerResponse < Aws::EmptyStructure; end
871
+
872
+ # @!attribute [rw] resource_arn
873
+ # The Amazon Resource Name (ARN) of the resource.
874
+ # @return [String]
875
+ #
876
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteResourcePolicyRequest AWS API Documentation
877
+ #
878
+ class DeleteResourcePolicyRequest < Struct.new(
879
+ :resource_arn)
880
+ SENSITIVE = []
881
+ include Aws::Structure
882
+ end
883
+
884
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteResourcePolicyResponse AWS API Documentation
885
+ #
886
+ class DeleteResourcePolicyResponse < Aws::EmptyStructure; end
887
+
888
+ # @!attribute [rw] listener_identifier
889
+ # The ID or Amazon Resource Name (ARN) of the listener.
890
+ # @return [String]
891
+ #
892
+ # @!attribute [rw] rule_identifier
893
+ # The ID or Amazon Resource Name (ARN) of the rule.
894
+ # @return [String]
895
+ #
896
+ # @!attribute [rw] service_identifier
897
+ # The ID or Amazon Resource Name (ARN) of the service.
898
+ # @return [String]
899
+ #
900
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteRuleRequest AWS API Documentation
901
+ #
902
+ class DeleteRuleRequest < Struct.new(
903
+ :listener_identifier,
904
+ :rule_identifier,
905
+ :service_identifier)
906
+ SENSITIVE = []
907
+ include Aws::Structure
908
+ end
909
+
910
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteRuleResponse AWS API Documentation
911
+ #
912
+ class DeleteRuleResponse < Aws::EmptyStructure; end
913
+
914
+ # @!attribute [rw] service_network_identifier
915
+ # The Amazon Resource Name (ARN) or ID of the service network.
916
+ # @return [String]
917
+ #
918
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteServiceNetworkRequest AWS API Documentation
919
+ #
920
+ class DeleteServiceNetworkRequest < Struct.new(
921
+ :service_network_identifier)
922
+ SENSITIVE = []
923
+ include Aws::Structure
924
+ end
925
+
926
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteServiceNetworkResponse AWS API Documentation
927
+ #
928
+ class DeleteServiceNetworkResponse < Aws::EmptyStructure; end
929
+
930
+ # @!attribute [rw] service_network_service_association_identifier
931
+ # The ID or Amazon Resource Name (ARN) of the association.
932
+ # @return [String]
933
+ #
934
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteServiceNetworkServiceAssociationRequest AWS API Documentation
935
+ #
936
+ class DeleteServiceNetworkServiceAssociationRequest < Struct.new(
937
+ :service_network_service_association_identifier)
938
+ SENSITIVE = []
939
+ include Aws::Structure
940
+ end
941
+
942
+ # @!attribute [rw] arn
943
+ # The Amazon Resource Name (ARN) of the association.
944
+ # @return [String]
945
+ #
946
+ # @!attribute [rw] id
947
+ # The ID of the association.
948
+ # @return [String]
949
+ #
950
+ # @!attribute [rw] status
951
+ # The operation's status. You can retry the operation if the status
952
+ # is `DELETE_FAILED`. However, if you retry it when the status is
953
+ # `DELETE_IN_PROGRESS`, there is no change in the status.
954
+ # @return [String]
955
+ #
956
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteServiceNetworkServiceAssociationResponse AWS API Documentation
957
+ #
958
+ class DeleteServiceNetworkServiceAssociationResponse < Struct.new(
959
+ :arn,
960
+ :id,
961
+ :status)
962
+ SENSITIVE = []
963
+ include Aws::Structure
964
+ end
965
+
966
+ # @!attribute [rw] service_network_vpc_association_identifier
967
+ # The ID or Amazon Resource Name (ARN) of the association.
968
+ # @return [String]
969
+ #
970
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteServiceNetworkVpcAssociationRequest AWS API Documentation
971
+ #
972
+ class DeleteServiceNetworkVpcAssociationRequest < Struct.new(
973
+ :service_network_vpc_association_identifier)
974
+ SENSITIVE = []
975
+ include Aws::Structure
976
+ end
977
+
978
+ # @!attribute [rw] arn
979
+ # The Amazon Resource Name (ARN) of the association.
980
+ # @return [String]
981
+ #
982
+ # @!attribute [rw] id
983
+ # The ID of the association.
984
+ # @return [String]
985
+ #
986
+ # @!attribute [rw] status
987
+ # The status. You can retry the operation if the status is
988
+ # `DELETE_FAILED`. However, if you retry it when the status is
989
+ # `DELETE_IN_PROGRESS`, there is no change in the status.
990
+ # @return [String]
991
+ #
992
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteServiceNetworkVpcAssociationResponse AWS API Documentation
993
+ #
994
+ class DeleteServiceNetworkVpcAssociationResponse < Struct.new(
995
+ :arn,
996
+ :id,
997
+ :status)
998
+ SENSITIVE = []
999
+ include Aws::Structure
1000
+ end
1001
+
1002
+ # @!attribute [rw] service_identifier
1003
+ # The ID or Amazon Resource Name (ARN) of the service.
1004
+ # @return [String]
1005
+ #
1006
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteServiceRequest AWS API Documentation
1007
+ #
1008
+ class DeleteServiceRequest < Struct.new(
1009
+ :service_identifier)
1010
+ SENSITIVE = []
1011
+ include Aws::Structure
1012
+ end
1013
+
1014
+ # @!attribute [rw] arn
1015
+ # The Amazon Resource Name (ARN) of the service.
1016
+ # @return [String]
1017
+ #
1018
+ # @!attribute [rw] id
1019
+ # The ID of the service.
1020
+ # @return [String]
1021
+ #
1022
+ # @!attribute [rw] name
1023
+ # The name of the service.
1024
+ # @return [String]
1025
+ #
1026
+ # @!attribute [rw] status
1027
+ # The status. You can retry the operation if the status is
1028
+ # `DELETE_FAILED`. However, if you retry it while the status is
1029
+ # `DELETE_IN_PROGRESS`, the status doesn't change.
1030
+ # @return [String]
1031
+ #
1032
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteServiceResponse AWS API Documentation
1033
+ #
1034
+ class DeleteServiceResponse < Struct.new(
1035
+ :arn,
1036
+ :id,
1037
+ :name,
1038
+ :status)
1039
+ SENSITIVE = []
1040
+ include Aws::Structure
1041
+ end
1042
+
1043
+ # @!attribute [rw] target_group_identifier
1044
+ # The ID or Amazon Resource Name (ARN) of the target group.
1045
+ # @return [String]
1046
+ #
1047
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteTargetGroupRequest AWS API Documentation
1048
+ #
1049
+ class DeleteTargetGroupRequest < Struct.new(
1050
+ :target_group_identifier)
1051
+ SENSITIVE = []
1052
+ include Aws::Structure
1053
+ end
1054
+
1055
+ # @!attribute [rw] arn
1056
+ # The Amazon Resource Name (ARN) of the target group.
1057
+ # @return [String]
1058
+ #
1059
+ # @!attribute [rw] id
1060
+ # The ID of the target group.
1061
+ # @return [String]
1062
+ #
1063
+ # @!attribute [rw] status
1064
+ # The status. You can retry the operation if the status is
1065
+ # `DELETE_FAILED`. However, if you retry it while the status is
1066
+ # `DELETE_IN_PROGRESS`, the status doesn't change.
1067
+ # @return [String]
1068
+ #
1069
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteTargetGroupResponse AWS API Documentation
1070
+ #
1071
+ class DeleteTargetGroupResponse < Struct.new(
1072
+ :arn,
1073
+ :id,
1074
+ :status)
1075
+ SENSITIVE = []
1076
+ include Aws::Structure
1077
+ end
1078
+
1079
+ # @!attribute [rw] target_group_identifier
1080
+ # The ID or Amazon Resource Name (ARN) of the target group.
1081
+ # @return [String]
1082
+ #
1083
+ # @!attribute [rw] targets
1084
+ # The targets to deregister.
1085
+ # @return [Array<Types::Target>]
1086
+ #
1087
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeregisterTargetsRequest AWS API Documentation
1088
+ #
1089
+ class DeregisterTargetsRequest < Struct.new(
1090
+ :target_group_identifier,
1091
+ :targets)
1092
+ SENSITIVE = []
1093
+ include Aws::Structure
1094
+ end
1095
+
1096
+ # @!attribute [rw] successful
1097
+ # The targets that were successfully deregistered.
1098
+ # @return [Array<Types::Target>]
1099
+ #
1100
+ # @!attribute [rw] unsuccessful
1101
+ # The targets that the operation couldn't deregister.
1102
+ # @return [Array<Types::TargetFailure>]
1103
+ #
1104
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeregisterTargetsResponse AWS API Documentation
1105
+ #
1106
+ class DeregisterTargetsResponse < Struct.new(
1107
+ :successful,
1108
+ :unsuccessful)
1109
+ SENSITIVE = []
1110
+ include Aws::Structure
1111
+ end
1112
+
1113
+ # Describes the DNS information of a service.
1114
+ #
1115
+ # @!attribute [rw] domain_name
1116
+ # The domain name of the service.
1117
+ # @return [String]
1118
+ #
1119
+ # @!attribute [rw] hosted_zone_id
1120
+ # The ID of the hosted zone.
1121
+ # @return [String]
1122
+ #
1123
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DnsEntry AWS API Documentation
1124
+ #
1125
+ class DnsEntry < Struct.new(
1126
+ :domain_name,
1127
+ :hosted_zone_id)
1128
+ SENSITIVE = []
1129
+ include Aws::Structure
1130
+ end
1131
+
1132
+ # Information about an action that returns a custom HTTP response.
1133
+ #
1134
+ # @!attribute [rw] status_code
1135
+ # The HTTP response code.
1136
+ # @return [Integer]
1137
+ #
1138
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/FixedResponseAction AWS API Documentation
1139
+ #
1140
+ class FixedResponseAction < Struct.new(
1141
+ :status_code)
1142
+ SENSITIVE = []
1143
+ include Aws::Structure
1144
+ end
1145
+
1146
+ # Describes a forward action. You can use forward actions to route
1147
+ # requests to one or more target groups.
1148
+ #
1149
+ # @!attribute [rw] target_groups
1150
+ # The target groups. Traffic matching the rule is forwarded to the
1151
+ # specified target groups. With forward actions, you can assign a
1152
+ # weight that controls the prioritization and selection of each target
1153
+ # group. This means that requests are distributed to individual target
1154
+ # groups based on their weights. For example, if two target groups
1155
+ # have the same weight, each target group receives half of the
1156
+ # traffic.
1157
+ #
1158
+ # The default value is 1. This means that if only one target group is
1159
+ # provided, there is no need to set the weight; 100% of traffic will
1160
+ # go to that target group.
1161
+ # @return [Array<Types::WeightedTargetGroup>]
1162
+ #
1163
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ForwardAction AWS API Documentation
1164
+ #
1165
+ class ForwardAction < Struct.new(
1166
+ :target_groups)
1167
+ SENSITIVE = []
1168
+ include Aws::Structure
1169
+ end
1170
+
1171
+ # @!attribute [rw] access_log_subscription_identifier
1172
+ # The ID or Amazon Resource Name (ARN) of the access log subscription.
1173
+ # @return [String]
1174
+ #
1175
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetAccessLogSubscriptionRequest AWS API Documentation
1176
+ #
1177
+ class GetAccessLogSubscriptionRequest < Struct.new(
1178
+ :access_log_subscription_identifier)
1179
+ SENSITIVE = []
1180
+ include Aws::Structure
1181
+ end
1182
+
1183
+ # @!attribute [rw] arn
1184
+ # The Amazon Resource Name (ARN) of the access log subscription.
1185
+ # @return [String]
1186
+ #
1187
+ # @!attribute [rw] created_at
1188
+ # The date and time that the access log subscription was created,
1189
+ # specified in ISO-8601 format.
1190
+ # @return [Time]
1191
+ #
1192
+ # @!attribute [rw] destination_arn
1193
+ # The Amazon Resource Name (ARN) of the access log destination.
1194
+ # @return [String]
1195
+ #
1196
+ # @!attribute [rw] id
1197
+ # The ID of the access log subscription.
1198
+ # @return [String]
1199
+ #
1200
+ # @!attribute [rw] last_updated_at
1201
+ # The date and time that the access log subscription was last updated,
1202
+ # specified in ISO-8601 format.
1203
+ # @return [Time]
1204
+ #
1205
+ # @!attribute [rw] resource_arn
1206
+ # The Amazon Resource Name (ARN) of the service network or service.
1207
+ # @return [String]
1208
+ #
1209
+ # @!attribute [rw] resource_id
1210
+ # The ID of the service network or service.
1211
+ # @return [String]
1212
+ #
1213
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetAccessLogSubscriptionResponse AWS API Documentation
1214
+ #
1215
+ class GetAccessLogSubscriptionResponse < Struct.new(
1216
+ :arn,
1217
+ :created_at,
1218
+ :destination_arn,
1219
+ :id,
1220
+ :last_updated_at,
1221
+ :resource_arn,
1222
+ :resource_id)
1223
+ SENSITIVE = []
1224
+ include Aws::Structure
1225
+ end
1226
+
1227
+ # @!attribute [rw] resource_identifier
1228
+ # The ID or Amazon Resource Name (ARN) of the service network or
1229
+ # service.
1230
+ # @return [String]
1231
+ #
1232
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetAuthPolicyRequest AWS API Documentation
1233
+ #
1234
+ class GetAuthPolicyRequest < Struct.new(
1235
+ :resource_identifier)
1236
+ SENSITIVE = []
1237
+ include Aws::Structure
1238
+ end
1239
+
1240
+ # @!attribute [rw] created_at
1241
+ # The date and time that the auth policy was created, specified in
1242
+ # ISO-8601 format.
1243
+ # @return [Time]
1244
+ #
1245
+ # @!attribute [rw] last_updated_at
1246
+ # The date and time that the auth policy was last updated, specified
1247
+ # in ISO-8601 format.
1248
+ # @return [Time]
1249
+ #
1250
+ # @!attribute [rw] policy
1251
+ # The auth policy.
1252
+ # @return [String]
1253
+ #
1254
+ # @!attribute [rw] state
1255
+ # The state of the auth policy. The auth policy is only active when
1256
+ # the auth type is set to `Amazon Web Services_IAM`. If you provide a
1257
+ # policy, then authentication and authorization decisions are made
1258
+ # based on this policy and the client's IAM policy. If the auth type
1259
+ # is `NONE`, then any auth policy you provide will remain inactive.
1260
+ # For more information, see [Create a service network][1] in the
1261
+ # *Amazon VPC Lattice User Guide*.
1262
+ #
1263
+ #
1264
+ #
1265
+ # [1]: https://docs.aws.amazon.com/vpc-lattice/latest/ug/service-networks.html#create-service-network
1266
+ # @return [String]
1267
+ #
1268
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetAuthPolicyResponse AWS API Documentation
1269
+ #
1270
+ class GetAuthPolicyResponse < Struct.new(
1271
+ :created_at,
1272
+ :last_updated_at,
1273
+ :policy,
1274
+ :state)
1275
+ SENSITIVE = []
1276
+ include Aws::Structure
1277
+ end
1278
+
1279
+ # @!attribute [rw] listener_identifier
1280
+ # The ID or Amazon Resource Name (ARN) of the listener.
1281
+ # @return [String]
1282
+ #
1283
+ # @!attribute [rw] service_identifier
1284
+ # The ID or Amazon Resource Name (ARN) of the service.
1285
+ # @return [String]
1286
+ #
1287
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetListenerRequest AWS API Documentation
1288
+ #
1289
+ class GetListenerRequest < Struct.new(
1290
+ :listener_identifier,
1291
+ :service_identifier)
1292
+ SENSITIVE = []
1293
+ include Aws::Structure
1294
+ end
1295
+
1296
+ # @!attribute [rw] arn
1297
+ # The Amazon Resource Name (ARN) of the listener.
1298
+ # @return [String]
1299
+ #
1300
+ # @!attribute [rw] created_at
1301
+ # The date and time that the listener was created, specified in
1302
+ # ISO-8601 format.
1303
+ # @return [Time]
1304
+ #
1305
+ # @!attribute [rw] default_action
1306
+ # The actions for the default listener rule.
1307
+ # @return [Types::RuleAction]
1308
+ #
1309
+ # @!attribute [rw] id
1310
+ # The ID of the listener.
1311
+ # @return [String]
1312
+ #
1313
+ # @!attribute [rw] last_updated_at
1314
+ # The date and time that the listener was last updated, specified in
1315
+ # ISO-8601 format.
1316
+ # @return [Time]
1317
+ #
1318
+ # @!attribute [rw] name
1319
+ # The name of the listener.
1320
+ # @return [String]
1321
+ #
1322
+ # @!attribute [rw] port
1323
+ # The listener port.
1324
+ # @return [Integer]
1325
+ #
1326
+ # @!attribute [rw] protocol
1327
+ # The listener protocol.
1328
+ # @return [String]
1329
+ #
1330
+ # @!attribute [rw] service_arn
1331
+ # The Amazon Resource Name (ARN) of the service.
1332
+ # @return [String]
1333
+ #
1334
+ # @!attribute [rw] service_id
1335
+ # The ID of the service.
1336
+ # @return [String]
1337
+ #
1338
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetListenerResponse AWS API Documentation
1339
+ #
1340
+ class GetListenerResponse < Struct.new(
1341
+ :arn,
1342
+ :created_at,
1343
+ :default_action,
1344
+ :id,
1345
+ :last_updated_at,
1346
+ :name,
1347
+ :port,
1348
+ :protocol,
1349
+ :service_arn,
1350
+ :service_id)
1351
+ SENSITIVE = []
1352
+ include Aws::Structure
1353
+ end
1354
+
1355
+ # @!attribute [rw] resource_arn
1356
+ # An IAM policy.
1357
+ # @return [String]
1358
+ #
1359
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetResourcePolicyRequest AWS API Documentation
1360
+ #
1361
+ class GetResourcePolicyRequest < Struct.new(
1362
+ :resource_arn)
1363
+ SENSITIVE = []
1364
+ include Aws::Structure
1365
+ end
1366
+
1367
+ # @!attribute [rw] policy
1368
+ # The Amazon Resource Name (ARN) of the service network or service.
1369
+ # @return [String]
1370
+ #
1371
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetResourcePolicyResponse AWS API Documentation
1372
+ #
1373
+ class GetResourcePolicyResponse < Struct.new(
1374
+ :policy)
1375
+ SENSITIVE = []
1376
+ include Aws::Structure
1377
+ end
1378
+
1379
+ # @!attribute [rw] listener_identifier
1380
+ # The ID or Amazon Resource Name (ARN) of the listener.
1381
+ # @return [String]
1382
+ #
1383
+ # @!attribute [rw] rule_identifier
1384
+ # The ID or Amazon Resource Name (ARN) of the listener rule.
1385
+ # @return [String]
1386
+ #
1387
+ # @!attribute [rw] service_identifier
1388
+ # The ID or Amazon Resource Name (ARN) of the service.
1389
+ # @return [String]
1390
+ #
1391
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetRuleRequest AWS API Documentation
1392
+ #
1393
+ class GetRuleRequest < Struct.new(
1394
+ :listener_identifier,
1395
+ :rule_identifier,
1396
+ :service_identifier)
1397
+ SENSITIVE = []
1398
+ include Aws::Structure
1399
+ end
1400
+
1401
+ # @!attribute [rw] action
1402
+ # The action for the default rule.
1403
+ # @return [Types::RuleAction]
1404
+ #
1405
+ # @!attribute [rw] arn
1406
+ # The Amazon Resource Name (ARN) of the listener.
1407
+ # @return [String]
1408
+ #
1409
+ # @!attribute [rw] created_at
1410
+ # The date and time that the listener rule was created, specified in
1411
+ # ISO-8601 format.
1412
+ # @return [Time]
1413
+ #
1414
+ # @!attribute [rw] id
1415
+ # The ID of the listener.
1416
+ # @return [String]
1417
+ #
1418
+ # @!attribute [rw] is_default
1419
+ # Indicates whether this is the default rule.
1420
+ # @return [Boolean]
1421
+ #
1422
+ # @!attribute [rw] last_updated_at
1423
+ # The date and time that the listener rule was last updated, specified
1424
+ # in ISO-8601 format.
1425
+ # @return [Time]
1426
+ #
1427
+ # @!attribute [rw] match
1428
+ # The rule match.
1429
+ # @return [Types::RuleMatch]
1430
+ #
1431
+ # @!attribute [rw] name
1432
+ # The name of the listener.
1433
+ # @return [String]
1434
+ #
1435
+ # @!attribute [rw] priority
1436
+ # The priority level for the specified rule.
1437
+ # @return [Integer]
1438
+ #
1439
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetRuleResponse AWS API Documentation
1440
+ #
1441
+ class GetRuleResponse < Struct.new(
1442
+ :action,
1443
+ :arn,
1444
+ :created_at,
1445
+ :id,
1446
+ :is_default,
1447
+ :last_updated_at,
1448
+ :match,
1449
+ :name,
1450
+ :priority)
1451
+ SENSITIVE = []
1452
+ include Aws::Structure
1453
+ end
1454
+
1455
+ # @!attribute [rw] service_network_identifier
1456
+ # The ID or Amazon Resource Name (ARN) of the service network.
1457
+ # @return [String]
1458
+ #
1459
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetServiceNetworkRequest AWS API Documentation
1460
+ #
1461
+ class GetServiceNetworkRequest < Struct.new(
1462
+ :service_network_identifier)
1463
+ SENSITIVE = []
1464
+ include Aws::Structure
1465
+ end
1466
+
1467
+ # @!attribute [rw] arn
1468
+ # The Amazon Resource Name (ARN) of the service network.
1469
+ # @return [String]
1470
+ #
1471
+ # @!attribute [rw] auth_type
1472
+ # The type of IAM policy.
1473
+ # @return [String]
1474
+ #
1475
+ # @!attribute [rw] created_at
1476
+ # The date and time that the service network was created, specified in
1477
+ # ISO-8601 format.
1478
+ # @return [Time]
1479
+ #
1480
+ # @!attribute [rw] id
1481
+ # The ID of the service network.
1482
+ # @return [String]
1483
+ #
1484
+ # @!attribute [rw] last_updated_at
1485
+ # The date and time of the last update, specified in ISO-8601 format.
1486
+ # @return [Time]
1487
+ #
1488
+ # @!attribute [rw] name
1489
+ # The name of the service network.
1490
+ # @return [String]
1491
+ #
1492
+ # @!attribute [rw] number_of_associated_services
1493
+ # The number of services associated with the service network.
1494
+ # @return [Integer]
1495
+ #
1496
+ # @!attribute [rw] number_of_associated_vp_cs
1497
+ # The number of VPCs associated with the service network.
1498
+ # @return [Integer]
1499
+ #
1500
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetServiceNetworkResponse AWS API Documentation
1501
+ #
1502
+ class GetServiceNetworkResponse < Struct.new(
1503
+ :arn,
1504
+ :auth_type,
1505
+ :created_at,
1506
+ :id,
1507
+ :last_updated_at,
1508
+ :name,
1509
+ :number_of_associated_services,
1510
+ :number_of_associated_vp_cs)
1511
+ SENSITIVE = []
1512
+ include Aws::Structure
1513
+ end
1514
+
1515
+ # @!attribute [rw] service_network_service_association_identifier
1516
+ # The ID or Amazon Resource Name (ARN) of the association.
1517
+ # @return [String]
1518
+ #
1519
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetServiceNetworkServiceAssociationRequest AWS API Documentation
1520
+ #
1521
+ class GetServiceNetworkServiceAssociationRequest < Struct.new(
1522
+ :service_network_service_association_identifier)
1523
+ SENSITIVE = []
1524
+ include Aws::Structure
1525
+ end
1526
+
1527
+ # @!attribute [rw] arn
1528
+ # The Amazon Resource Name (ARN) of the association.
1529
+ # @return [String]
1530
+ #
1531
+ # @!attribute [rw] created_at
1532
+ # The date and time that the association was created, specified in
1533
+ # ISO-8601 format.
1534
+ # @return [Time]
1535
+ #
1536
+ # @!attribute [rw] created_by
1537
+ # The account that created the association.
1538
+ # @return [String]
1539
+ #
1540
+ # @!attribute [rw] custom_domain_name
1541
+ # The custom domain name of the service.
1542
+ # @return [String]
1543
+ #
1544
+ # @!attribute [rw] dns_entry
1545
+ # The DNS name of the service.
1546
+ # @return [Types::DnsEntry]
1547
+ #
1548
+ # @!attribute [rw] failure_code
1549
+ # The failure code.
1550
+ # @return [String]
1551
+ #
1552
+ # @!attribute [rw] failure_message
1553
+ # The failure message.
1554
+ # @return [String]
1555
+ #
1556
+ # @!attribute [rw] id
1557
+ # The ID of the service network and service association.
1558
+ # @return [String]
1559
+ #
1560
+ # @!attribute [rw] service_arn
1561
+ # The Amazon Resource Name (ARN) of the service.
1562
+ # @return [String]
1563
+ #
1564
+ # @!attribute [rw] service_id
1565
+ # The ID of the service.
1566
+ # @return [String]
1567
+ #
1568
+ # @!attribute [rw] service_name
1569
+ # The name of the service.
1570
+ # @return [String]
1571
+ #
1572
+ # @!attribute [rw] service_network_arn
1573
+ # The Amazon Resource Name (ARN) of the service network.
1574
+ # @return [String]
1575
+ #
1576
+ # @!attribute [rw] service_network_id
1577
+ # The ID of the service network.
1578
+ # @return [String]
1579
+ #
1580
+ # @!attribute [rw] service_network_name
1581
+ # The name of the service network.
1582
+ # @return [String]
1583
+ #
1584
+ # @!attribute [rw] status
1585
+ # The status of the association.
1586
+ # @return [String]
1587
+ #
1588
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetServiceNetworkServiceAssociationResponse AWS API Documentation
1589
+ #
1590
+ class GetServiceNetworkServiceAssociationResponse < Struct.new(
1591
+ :arn,
1592
+ :created_at,
1593
+ :created_by,
1594
+ :custom_domain_name,
1595
+ :dns_entry,
1596
+ :failure_code,
1597
+ :failure_message,
1598
+ :id,
1599
+ :service_arn,
1600
+ :service_id,
1601
+ :service_name,
1602
+ :service_network_arn,
1603
+ :service_network_id,
1604
+ :service_network_name,
1605
+ :status)
1606
+ SENSITIVE = []
1607
+ include Aws::Structure
1608
+ end
1609
+
1610
+ # @!attribute [rw] service_network_vpc_association_identifier
1611
+ # The ID or Amazon Resource Name (ARN) of the association.
1612
+ # @return [String]
1613
+ #
1614
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetServiceNetworkVpcAssociationRequest AWS API Documentation
1615
+ #
1616
+ class GetServiceNetworkVpcAssociationRequest < Struct.new(
1617
+ :service_network_vpc_association_identifier)
1618
+ SENSITIVE = []
1619
+ include Aws::Structure
1620
+ end
1621
+
1622
+ # @!attribute [rw] arn
1623
+ # The Amazon Resource Name (ARN) of the association.
1624
+ # @return [String]
1625
+ #
1626
+ # @!attribute [rw] created_at
1627
+ # The date and time that the association was created, specified in
1628
+ # ISO-8601 format.
1629
+ # @return [Time]
1630
+ #
1631
+ # @!attribute [rw] created_by
1632
+ # The account that created the association.
1633
+ # @return [String]
1634
+ #
1635
+ # @!attribute [rw] failure_code
1636
+ # The failure code.
1637
+ # @return [String]
1638
+ #
1639
+ # @!attribute [rw] failure_message
1640
+ # The failure message.
1641
+ # @return [String]
1642
+ #
1643
+ # @!attribute [rw] id
1644
+ # The ID of the specified association between the service network and
1645
+ # the VPC.
1646
+ # @return [String]
1647
+ #
1648
+ # @!attribute [rw] last_updated_at
1649
+ # The date and time that the association was last updated, specified
1650
+ # in ISO-8601 format.
1651
+ # @return [Time]
1652
+ #
1653
+ # @!attribute [rw] security_group_ids
1654
+ # The IDs of the security groups.
1655
+ # @return [Array<String>]
1656
+ #
1657
+ # @!attribute [rw] service_network_arn
1658
+ # The Amazon Resource Name (ARN) of the service network.
1659
+ # @return [String]
1660
+ #
1661
+ # @!attribute [rw] service_network_id
1662
+ # The ID of the service network.
1663
+ # @return [String]
1664
+ #
1665
+ # @!attribute [rw] service_network_name
1666
+ # The name of the service network.
1667
+ # @return [String]
1668
+ #
1669
+ # @!attribute [rw] status
1670
+ # The status of the association.
1671
+ # @return [String]
1672
+ #
1673
+ # @!attribute [rw] vpc_id
1674
+ # The ID of the VPC.
1675
+ # @return [String]
1676
+ #
1677
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetServiceNetworkVpcAssociationResponse AWS API Documentation
1678
+ #
1679
+ class GetServiceNetworkVpcAssociationResponse < Struct.new(
1680
+ :arn,
1681
+ :created_at,
1682
+ :created_by,
1683
+ :failure_code,
1684
+ :failure_message,
1685
+ :id,
1686
+ :last_updated_at,
1687
+ :security_group_ids,
1688
+ :service_network_arn,
1689
+ :service_network_id,
1690
+ :service_network_name,
1691
+ :status,
1692
+ :vpc_id)
1693
+ SENSITIVE = []
1694
+ include Aws::Structure
1695
+ end
1696
+
1697
+ # @!attribute [rw] service_identifier
1698
+ # The ID or Amazon Resource Name (ARN) of the service.
1699
+ # @return [String]
1700
+ #
1701
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetServiceRequest AWS API Documentation
1702
+ #
1703
+ class GetServiceRequest < Struct.new(
1704
+ :service_identifier)
1705
+ SENSITIVE = []
1706
+ include Aws::Structure
1707
+ end
1708
+
1709
+ # @!attribute [rw] arn
1710
+ # The Amazon Resource Name (ARN) of the service.
1711
+ # @return [String]
1712
+ #
1713
+ # @!attribute [rw] auth_type
1714
+ # The type of IAM policy.
1715
+ # @return [String]
1716
+ #
1717
+ # @!attribute [rw] certificate_arn
1718
+ # The Amazon Resource Name (ARN) of the certificate.
1719
+ # @return [String]
1720
+ #
1721
+ # @!attribute [rw] created_at
1722
+ # The date and time that the service was created, specified in
1723
+ # ISO-8601 format.
1724
+ # @return [Time]
1725
+ #
1726
+ # @!attribute [rw] custom_domain_name
1727
+ # The custom domain name of the service.
1728
+ # @return [String]
1729
+ #
1730
+ # @!attribute [rw] dns_entry
1731
+ # The DNS name of the service.
1732
+ # @return [Types::DnsEntry]
1733
+ #
1734
+ # @!attribute [rw] failure_code
1735
+ # The failure code.
1736
+ # @return [String]
1737
+ #
1738
+ # @!attribute [rw] failure_message
1739
+ # The failure message.
1740
+ # @return [String]
1741
+ #
1742
+ # @!attribute [rw] id
1743
+ # The ID of the service.
1744
+ # @return [String]
1745
+ #
1746
+ # @!attribute [rw] last_updated_at
1747
+ # The date and time that the service was last updated, specified in
1748
+ # ISO-8601 format.
1749
+ # @return [Time]
1750
+ #
1751
+ # @!attribute [rw] name
1752
+ # The name of the service.
1753
+ # @return [String]
1754
+ #
1755
+ # @!attribute [rw] status
1756
+ # The status of the service.
1757
+ # @return [String]
1758
+ #
1759
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetServiceResponse AWS API Documentation
1760
+ #
1761
+ class GetServiceResponse < Struct.new(
1762
+ :arn,
1763
+ :auth_type,
1764
+ :certificate_arn,
1765
+ :created_at,
1766
+ :custom_domain_name,
1767
+ :dns_entry,
1768
+ :failure_code,
1769
+ :failure_message,
1770
+ :id,
1771
+ :last_updated_at,
1772
+ :name,
1773
+ :status)
1774
+ SENSITIVE = []
1775
+ include Aws::Structure
1776
+ end
1777
+
1778
+ # @!attribute [rw] target_group_identifier
1779
+ # The ID or Amazon Resource Name (ARN) of the target group.
1780
+ # @return [String]
1781
+ #
1782
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetTargetGroupRequest AWS API Documentation
1783
+ #
1784
+ class GetTargetGroupRequest < Struct.new(
1785
+ :target_group_identifier)
1786
+ SENSITIVE = []
1787
+ include Aws::Structure
1788
+ end
1789
+
1790
+ # @!attribute [rw] arn
1791
+ # The Amazon Resource Name (ARN) of the target group.
1792
+ # @return [String]
1793
+ #
1794
+ # @!attribute [rw] config
1795
+ # The target group configuration.
1796
+ # @return [Types::TargetGroupConfig]
1797
+ #
1798
+ # @!attribute [rw] created_at
1799
+ # The date and time that the target group was created, specified in
1800
+ # ISO-8601 format.
1801
+ # @return [Time]
1802
+ #
1803
+ # @!attribute [rw] failure_code
1804
+ # The failure code.
1805
+ # @return [String]
1806
+ #
1807
+ # @!attribute [rw] failure_message
1808
+ # The failure message.
1809
+ # @return [String]
1810
+ #
1811
+ # @!attribute [rw] id
1812
+ # The ID of the target group.
1813
+ # @return [String]
1814
+ #
1815
+ # @!attribute [rw] last_updated_at
1816
+ # The date and time that the target group was last updated, specified
1817
+ # in ISO-8601 format.
1818
+ # @return [Time]
1819
+ #
1820
+ # @!attribute [rw] name
1821
+ # The name of the target group.
1822
+ # @return [String]
1823
+ #
1824
+ # @!attribute [rw] service_arns
1825
+ # The Amazon Resource Names (ARNs) of the service.
1826
+ # @return [Array<String>]
1827
+ #
1828
+ # @!attribute [rw] status
1829
+ # The status.
1830
+ # @return [String]
1831
+ #
1832
+ # @!attribute [rw] type
1833
+ # The target group type.
1834
+ # @return [String]
1835
+ #
1836
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetTargetGroupResponse AWS API Documentation
1837
+ #
1838
+ class GetTargetGroupResponse < Struct.new(
1839
+ :arn,
1840
+ :config,
1841
+ :created_at,
1842
+ :failure_code,
1843
+ :failure_message,
1844
+ :id,
1845
+ :last_updated_at,
1846
+ :name,
1847
+ :service_arns,
1848
+ :status,
1849
+ :type)
1850
+ SENSITIVE = []
1851
+ include Aws::Structure
1852
+ end
1853
+
1854
+ # Describes the constraints for a header match. Matches incoming
1855
+ # requests with rule based on request header value before applying rule
1856
+ # action.
1857
+ #
1858
+ # @!attribute [rw] case_sensitive
1859
+ # Indicates whether the match is case sensitive. Defaults to false.
1860
+ # @return [Boolean]
1861
+ #
1862
+ # @!attribute [rw] match
1863
+ # The header match type.
1864
+ # @return [Types::HeaderMatchType]
1865
+ #
1866
+ # @!attribute [rw] name
1867
+ # The name of the header.
1868
+ # @return [String]
1869
+ #
1870
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/HeaderMatch AWS API Documentation
1871
+ #
1872
+ class HeaderMatch < Struct.new(
1873
+ :case_sensitive,
1874
+ :match,
1875
+ :name)
1876
+ SENSITIVE = []
1877
+ include Aws::Structure
1878
+ end
1879
+
1880
+ # Describes a header match type. Only one can be provided.
1881
+ #
1882
+ # @note HeaderMatchType is a union - when making an API calls you must set exactly one of the members.
1883
+ #
1884
+ # @note HeaderMatchType is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of HeaderMatchType corresponding to the set member.
1885
+ #
1886
+ # @!attribute [rw] contains
1887
+ # Specifies a contains type match.
1888
+ # @return [String]
1889
+ #
1890
+ # @!attribute [rw] exact
1891
+ # Specifies an exact type match.
1892
+ # @return [String]
1893
+ #
1894
+ # @!attribute [rw] prefix
1895
+ # Specifies a prefix type match. Matches the value with the prefix.
1896
+ # @return [String]
1897
+ #
1898
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/HeaderMatchType AWS API Documentation
1899
+ #
1900
+ class HeaderMatchType < Struct.new(
1901
+ :contains,
1902
+ :exact,
1903
+ :prefix,
1904
+ :unknown)
1905
+ SENSITIVE = []
1906
+ include Aws::Structure
1907
+ include Aws::Structure::Union
1908
+
1909
+ class Contains < HeaderMatchType; end
1910
+ class Exact < HeaderMatchType; end
1911
+ class Prefix < HeaderMatchType; end
1912
+ class Unknown < HeaderMatchType; end
1913
+ end
1914
+
1915
+ # The health check configuration of a target group. Health check
1916
+ # configurations aren't used for `LAMBDA` and `ALB` target groups.
1917
+ #
1918
+ # @!attribute [rw] enabled
1919
+ # Indicates whether health checking is enabled.
1920
+ # @return [Boolean]
1921
+ #
1922
+ # @!attribute [rw] health_check_interval_seconds
1923
+ # The approximate amount of time, in seconds, between health checks of
1924
+ # an individual target. The range is 5–300 seconds. The default is 30
1925
+ # seconds.
1926
+ # @return [Integer]
1927
+ #
1928
+ # @!attribute [rw] health_check_timeout_seconds
1929
+ # The amount of time, in seconds, to wait before reporting a target as
1930
+ # unhealthy. The range is 1–120 seconds. The default is 5 seconds.
1931
+ # @return [Integer]
1932
+ #
1933
+ # @!attribute [rw] healthy_threshold_count
1934
+ # The number of consecutive successful health checks required before
1935
+ # considering an unhealthy target healthy. The range is 2–10. The
1936
+ # default is 5.
1937
+ # @return [Integer]
1938
+ #
1939
+ # @!attribute [rw] matcher
1940
+ # The codes to use when checking for a successful response from a
1941
+ # target. These are called *Success codes* in the console.
1942
+ # @return [Types::Matcher]
1943
+ #
1944
+ # @!attribute [rw] path
1945
+ # The destination for health checks on the targets. If the protocol
1946
+ # version is `HTTP/1.1` or `HTTP/2`, specify a valid URI (for example,
1947
+ # `/path?query`). The default path is `/`. Health checks are not
1948
+ # supported if the protocol version is `gRPC`, however, you can choose
1949
+ # `HTTP/1.1` or `HTTP/2` and specify a valid URI.
1950
+ # @return [String]
1951
+ #
1952
+ # @!attribute [rw] port
1953
+ # The port used when performing health checks on targets. The default
1954
+ # setting is the port that a target receives traffic on.
1955
+ # @return [Integer]
1956
+ #
1957
+ # @!attribute [rw] protocol
1958
+ # The protocol used when performing health checks on targets. The
1959
+ # possible protocols are `HTTP` and `HTTPS`. The default is `HTTP`.
1960
+ # @return [String]
1961
+ #
1962
+ # @!attribute [rw] protocol_version
1963
+ # The protocol version used when performing health checks on targets.
1964
+ # The possible protocol versions are `HTTP1` and `HTTP2`.
1965
+ # @return [String]
1966
+ #
1967
+ # @!attribute [rw] unhealthy_threshold_count
1968
+ # The number of consecutive failed health checks required before
1969
+ # considering a target unhealthy. The range is 2–10. The default is 2.
1970
+ # @return [Integer]
1971
+ #
1972
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/HealthCheckConfig AWS API Documentation
1973
+ #
1974
+ class HealthCheckConfig < Struct.new(
1975
+ :enabled,
1976
+ :health_check_interval_seconds,
1977
+ :health_check_timeout_seconds,
1978
+ :healthy_threshold_count,
1979
+ :matcher,
1980
+ :path,
1981
+ :port,
1982
+ :protocol,
1983
+ :protocol_version,
1984
+ :unhealthy_threshold_count)
1985
+ SENSITIVE = []
1986
+ include Aws::Structure
1987
+ end
1988
+
1989
+ # Describes criteria that can be applied to incoming requests.
1990
+ #
1991
+ # @!attribute [rw] header_matches
1992
+ # The header matches. Matches incoming requests with rule based on
1993
+ # request header value before applying rule action.
1994
+ # @return [Array<Types::HeaderMatch>]
1995
+ #
1996
+ # @!attribute [rw] method
1997
+ # The HTTP method type.
1998
+ # @return [String]
1999
+ #
2000
+ # @!attribute [rw] path_match
2001
+ # The path match.
2002
+ # @return [Types::PathMatch]
2003
+ #
2004
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/HttpMatch AWS API Documentation
2005
+ #
2006
+ class HttpMatch < Struct.new(
2007
+ :header_matches,
2008
+ :method,
2009
+ :path_match)
2010
+ SENSITIVE = []
2011
+ include Aws::Structure
2012
+ end
2013
+
2014
+ # An unexpected error occurred while processing the request.
2015
+ #
2016
+ # @!attribute [rw] message
2017
+ # @return [String]
2018
+ #
2019
+ # @!attribute [rw] retry_after_seconds
2020
+ # The number of seconds to wait before retrying.
2021
+ # @return [Integer]
2022
+ #
2023
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/InternalServerException AWS API Documentation
2024
+ #
2025
+ class InternalServerException < Struct.new(
2026
+ :message,
2027
+ :retry_after_seconds)
2028
+ SENSITIVE = []
2029
+ include Aws::Structure
2030
+ end
2031
+
2032
+ # @!attribute [rw] max_results
2033
+ # The maximum number of results to return.
2034
+ # @return [Integer]
2035
+ #
2036
+ # @!attribute [rw] next_token
2037
+ # A pagination token for the next page of results.
2038
+ # @return [String]
2039
+ #
2040
+ # @!attribute [rw] resource_identifier
2041
+ # The ID or Amazon Resource Name (ARN) of the service network or
2042
+ # service.
2043
+ # @return [String]
2044
+ #
2045
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListAccessLogSubscriptionsRequest AWS API Documentation
2046
+ #
2047
+ class ListAccessLogSubscriptionsRequest < Struct.new(
2048
+ :max_results,
2049
+ :next_token,
2050
+ :resource_identifier)
2051
+ SENSITIVE = []
2052
+ include Aws::Structure
2053
+ end
2054
+
2055
+ # @!attribute [rw] items
2056
+ # The access log subscriptions.
2057
+ # @return [Array<Types::AccessLogSubscriptionSummary>]
2058
+ #
2059
+ # @!attribute [rw] next_token
2060
+ # A pagination token for the next page of results.
2061
+ # @return [String]
2062
+ #
2063
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListAccessLogSubscriptionsResponse AWS API Documentation
2064
+ #
2065
+ class ListAccessLogSubscriptionsResponse < Struct.new(
2066
+ :items,
2067
+ :next_token)
2068
+ SENSITIVE = []
2069
+ include Aws::Structure
2070
+ end
2071
+
2072
+ # @!attribute [rw] max_results
2073
+ # The maximum number of results to return.
2074
+ # @return [Integer]
2075
+ #
2076
+ # @!attribute [rw] next_token
2077
+ # A pagination token for the next page of results.
2078
+ # @return [String]
2079
+ #
2080
+ # @!attribute [rw] service_identifier
2081
+ # The ID or Amazon Resource Name (ARN) of the service.
2082
+ # @return [String]
2083
+ #
2084
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListListenersRequest AWS API Documentation
2085
+ #
2086
+ class ListListenersRequest < Struct.new(
2087
+ :max_results,
2088
+ :next_token,
2089
+ :service_identifier)
2090
+ SENSITIVE = []
2091
+ include Aws::Structure
2092
+ end
2093
+
2094
+ # @!attribute [rw] items
2095
+ # Information about the listeners.
2096
+ # @return [Array<Types::ListenerSummary>]
2097
+ #
2098
+ # @!attribute [rw] next_token
2099
+ # If there are additional results, a pagination token for the next
2100
+ # page of results.
2101
+ # @return [String]
2102
+ #
2103
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListListenersResponse AWS API Documentation
2104
+ #
2105
+ class ListListenersResponse < Struct.new(
2106
+ :items,
2107
+ :next_token)
2108
+ SENSITIVE = []
2109
+ include Aws::Structure
2110
+ end
2111
+
2112
+ # @!attribute [rw] listener_identifier
2113
+ # The ID or Amazon Resource Name (ARN) of the listener.
2114
+ # @return [String]
2115
+ #
2116
+ # @!attribute [rw] max_results
2117
+ # The maximum number of results to return.
2118
+ # @return [Integer]
2119
+ #
2120
+ # @!attribute [rw] next_token
2121
+ # A pagination token for the next page of results.
2122
+ # @return [String]
2123
+ #
2124
+ # @!attribute [rw] service_identifier
2125
+ # The ID or Amazon Resource Name (ARN) of the service.
2126
+ # @return [String]
2127
+ #
2128
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListRulesRequest AWS API Documentation
2129
+ #
2130
+ class ListRulesRequest < Struct.new(
2131
+ :listener_identifier,
2132
+ :max_results,
2133
+ :next_token,
2134
+ :service_identifier)
2135
+ SENSITIVE = []
2136
+ include Aws::Structure
2137
+ end
2138
+
2139
+ # @!attribute [rw] items
2140
+ # Information about the rules.
2141
+ # @return [Array<Types::RuleSummary>]
2142
+ #
2143
+ # @!attribute [rw] next_token
2144
+ # If there are additional results, a pagination token for the next
2145
+ # page of results.
2146
+ # @return [String]
2147
+ #
2148
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListRulesResponse AWS API Documentation
2149
+ #
2150
+ class ListRulesResponse < Struct.new(
2151
+ :items,
2152
+ :next_token)
2153
+ SENSITIVE = []
2154
+ include Aws::Structure
2155
+ end
2156
+
2157
+ # @!attribute [rw] max_results
2158
+ # The maximum number of results to return.
2159
+ # @return [Integer]
2160
+ #
2161
+ # @!attribute [rw] next_token
2162
+ # A pagination token for the next page of results.
2163
+ # @return [String]
2164
+ #
2165
+ # @!attribute [rw] service_identifier
2166
+ # The ID or Amazon Resource Name (ARN) of the service.
2167
+ # @return [String]
2168
+ #
2169
+ # @!attribute [rw] service_network_identifier
2170
+ # The ID or Amazon Resource Name (ARN) of the service network.
2171
+ # @return [String]
2172
+ #
2173
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListServiceNetworkServiceAssociationsRequest AWS API Documentation
2174
+ #
2175
+ class ListServiceNetworkServiceAssociationsRequest < Struct.new(
2176
+ :max_results,
2177
+ :next_token,
2178
+ :service_identifier,
2179
+ :service_network_identifier)
2180
+ SENSITIVE = []
2181
+ include Aws::Structure
2182
+ end
2183
+
2184
+ # @!attribute [rw] items
2185
+ # Information about the associations.
2186
+ # @return [Array<Types::ServiceNetworkServiceAssociationSummary>]
2187
+ #
2188
+ # @!attribute [rw] next_token
2189
+ # If there are additional results, a pagination token for the next
2190
+ # page of results.
2191
+ # @return [String]
2192
+ #
2193
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListServiceNetworkServiceAssociationsResponse AWS API Documentation
2194
+ #
2195
+ class ListServiceNetworkServiceAssociationsResponse < Struct.new(
2196
+ :items,
2197
+ :next_token)
2198
+ SENSITIVE = []
2199
+ include Aws::Structure
2200
+ end
2201
+
2202
+ # @!attribute [rw] max_results
2203
+ # The maximum number of results to return.
2204
+ # @return [Integer]
2205
+ #
2206
+ # @!attribute [rw] next_token
2207
+ # A pagination token for the next page of results.
2208
+ # @return [String]
2209
+ #
2210
+ # @!attribute [rw] service_network_identifier
2211
+ # The ID or Amazon Resource Name (ARN) of the service network.
2212
+ # @return [String]
2213
+ #
2214
+ # @!attribute [rw] vpc_identifier
2215
+ # The ID or Amazon Resource Name (ARN) of the VPC.
2216
+ # @return [String]
2217
+ #
2218
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListServiceNetworkVpcAssociationsRequest AWS API Documentation
2219
+ #
2220
+ class ListServiceNetworkVpcAssociationsRequest < Struct.new(
2221
+ :max_results,
2222
+ :next_token,
2223
+ :service_network_identifier,
2224
+ :vpc_identifier)
2225
+ SENSITIVE = []
2226
+ include Aws::Structure
2227
+ end
2228
+
2229
+ # @!attribute [rw] items
2230
+ # Information about the associations.
2231
+ # @return [Array<Types::ServiceNetworkVpcAssociationSummary>]
2232
+ #
2233
+ # @!attribute [rw] next_token
2234
+ # If there are additional results, a pagination token for the next
2235
+ # page of results.
2236
+ # @return [String]
2237
+ #
2238
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListServiceNetworkVpcAssociationsResponse AWS API Documentation
2239
+ #
2240
+ class ListServiceNetworkVpcAssociationsResponse < Struct.new(
2241
+ :items,
2242
+ :next_token)
2243
+ SENSITIVE = []
2244
+ include Aws::Structure
2245
+ end
2246
+
2247
+ # @!attribute [rw] max_results
2248
+ # The maximum number of results to return.
2249
+ # @return [Integer]
2250
+ #
2251
+ # @!attribute [rw] next_token
2252
+ # A pagination token for the next page of results.
2253
+ # @return [String]
2254
+ #
2255
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListServiceNetworksRequest AWS API Documentation
2256
+ #
2257
+ class ListServiceNetworksRequest < Struct.new(
2258
+ :max_results,
2259
+ :next_token)
2260
+ SENSITIVE = []
2261
+ include Aws::Structure
2262
+ end
2263
+
2264
+ # @!attribute [rw] items
2265
+ # Information about the service networks.
2266
+ # @return [Array<Types::ServiceNetworkSummary>]
2267
+ #
2268
+ # @!attribute [rw] next_token
2269
+ # If there are additional results, a pagination token for the next
2270
+ # page of results.
2271
+ # @return [String]
2272
+ #
2273
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListServiceNetworksResponse AWS API Documentation
2274
+ #
2275
+ class ListServiceNetworksResponse < Struct.new(
2276
+ :items,
2277
+ :next_token)
2278
+ SENSITIVE = []
2279
+ include Aws::Structure
2280
+ end
2281
+
2282
+ # @!attribute [rw] max_results
2283
+ # The maximum number of results to return.
2284
+ # @return [Integer]
2285
+ #
2286
+ # @!attribute [rw] next_token
2287
+ # A pagination token for the next page of results.
2288
+ # @return [String]
2289
+ #
2290
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListServicesRequest AWS API Documentation
2291
+ #
2292
+ class ListServicesRequest < Struct.new(
2293
+ :max_results,
2294
+ :next_token)
2295
+ SENSITIVE = []
2296
+ include Aws::Structure
2297
+ end
2298
+
2299
+ # @!attribute [rw] items
2300
+ # The services.
2301
+ # @return [Array<Types::ServiceSummary>]
2302
+ #
2303
+ # @!attribute [rw] next_token
2304
+ # If there are additional results, a pagination token for the next
2305
+ # page of results.
2306
+ # @return [String]
2307
+ #
2308
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListServicesResponse AWS API Documentation
2309
+ #
2310
+ class ListServicesResponse < Struct.new(
2311
+ :items,
2312
+ :next_token)
2313
+ SENSITIVE = []
2314
+ include Aws::Structure
2315
+ end
2316
+
2317
+ # @!attribute [rw] resource_arn
2318
+ # The Amazon Resource Name (ARN) of the resource.
2319
+ # @return [String]
2320
+ #
2321
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListTagsForResourceRequest AWS API Documentation
2322
+ #
2323
+ class ListTagsForResourceRequest < Struct.new(
2324
+ :resource_arn)
2325
+ SENSITIVE = []
2326
+ include Aws::Structure
2327
+ end
2328
+
2329
+ # @!attribute [rw] tags
2330
+ # The tags.
2331
+ # @return [Hash<String,String>]
2332
+ #
2333
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListTagsForResourceResponse AWS API Documentation
2334
+ #
2335
+ class ListTagsForResourceResponse < Struct.new(
2336
+ :tags)
2337
+ SENSITIVE = []
2338
+ include Aws::Structure
2339
+ end
2340
+
2341
+ # @!attribute [rw] max_results
2342
+ # The maximum number of results to return.
2343
+ # @return [Integer]
2344
+ #
2345
+ # @!attribute [rw] next_token
2346
+ # A pagination token for the next page of results.
2347
+ # @return [String]
2348
+ #
2349
+ # @!attribute [rw] target_group_type
2350
+ # The target group type.
2351
+ # @return [String]
2352
+ #
2353
+ # @!attribute [rw] vpc_identifier
2354
+ # The ID or Amazon Resource Name (ARN) of the service.
2355
+ # @return [String]
2356
+ #
2357
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListTargetGroupsRequest AWS API Documentation
2358
+ #
2359
+ class ListTargetGroupsRequest < Struct.new(
2360
+ :max_results,
2361
+ :next_token,
2362
+ :target_group_type,
2363
+ :vpc_identifier)
2364
+ SENSITIVE = []
2365
+ include Aws::Structure
2366
+ end
2367
+
2368
+ # @!attribute [rw] items
2369
+ # Information about the target groups.
2370
+ # @return [Array<Types::TargetGroupSummary>]
2371
+ #
2372
+ # @!attribute [rw] next_token
2373
+ # If there are additional results, a pagination token for the next
2374
+ # page of results.
2375
+ # @return [String]
2376
+ #
2377
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListTargetGroupsResponse AWS API Documentation
2378
+ #
2379
+ class ListTargetGroupsResponse < Struct.new(
2380
+ :items,
2381
+ :next_token)
2382
+ SENSITIVE = []
2383
+ include Aws::Structure
2384
+ end
2385
+
2386
+ # @!attribute [rw] max_results
2387
+ # The maximum number of results to return.
2388
+ # @return [Integer]
2389
+ #
2390
+ # @!attribute [rw] next_token
2391
+ # A pagination token for the next page of results.
2392
+ # @return [String]
2393
+ #
2394
+ # @!attribute [rw] target_group_identifier
2395
+ # The ID or Amazon Resource Name (ARN) of the target group.
2396
+ # @return [String]
2397
+ #
2398
+ # @!attribute [rw] targets
2399
+ # The targets to list.
2400
+ # @return [Array<Types::Target>]
2401
+ #
2402
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListTargetsRequest AWS API Documentation
2403
+ #
2404
+ class ListTargetsRequest < Struct.new(
2405
+ :max_results,
2406
+ :next_token,
2407
+ :target_group_identifier,
2408
+ :targets)
2409
+ SENSITIVE = []
2410
+ include Aws::Structure
2411
+ end
2412
+
2413
+ # @!attribute [rw] items
2414
+ # Information about the targets.
2415
+ # @return [Array<Types::TargetSummary>]
2416
+ #
2417
+ # @!attribute [rw] next_token
2418
+ # If there are additional results, a pagination token for the next
2419
+ # page of results.
2420
+ # @return [String]
2421
+ #
2422
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListTargetsResponse AWS API Documentation
2423
+ #
2424
+ class ListTargetsResponse < Struct.new(
2425
+ :items,
2426
+ :next_token)
2427
+ SENSITIVE = []
2428
+ include Aws::Structure
2429
+ end
2430
+
2431
+ # Summary information about a listener.
2432
+ #
2433
+ # @!attribute [rw] arn
2434
+ # The Amazon Resource Name (ARN) of the listener.
2435
+ # @return [String]
2436
+ #
2437
+ # @!attribute [rw] created_at
2438
+ # The date and time that the listener was created, specified in
2439
+ # ISO-8601 format.
2440
+ # @return [Time]
2441
+ #
2442
+ # @!attribute [rw] id
2443
+ # The ID of the listener.
2444
+ # @return [String]
2445
+ #
2446
+ # @!attribute [rw] last_updated_at
2447
+ # The date and time that the listener was last updated, specified in
2448
+ # ISO-8601 format.
2449
+ # @return [Time]
2450
+ #
2451
+ # @!attribute [rw] name
2452
+ # The name of the listener.
2453
+ # @return [String]
2454
+ #
2455
+ # @!attribute [rw] port
2456
+ # The listener port.
2457
+ # @return [Integer]
2458
+ #
2459
+ # @!attribute [rw] protocol
2460
+ # The listener protocol.
2461
+ # @return [String]
2462
+ #
2463
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListenerSummary AWS API Documentation
2464
+ #
2465
+ class ListenerSummary < Struct.new(
2466
+ :arn,
2467
+ :created_at,
2468
+ :id,
2469
+ :last_updated_at,
2470
+ :name,
2471
+ :port,
2472
+ :protocol)
2473
+ SENSITIVE = []
2474
+ include Aws::Structure
2475
+ end
2476
+
2477
+ # The codes to use when checking for a successful response from a target
2478
+ # for health checks.
2479
+ #
2480
+ # @note Matcher is a union - when making an API calls you must set exactly one of the members.
2481
+ #
2482
+ # @note Matcher is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of Matcher corresponding to the set member.
2483
+ #
2484
+ # @!attribute [rw] http_code
2485
+ # The HTTP code to use when checking for a successful response from a
2486
+ # target.
2487
+ # @return [String]
2488
+ #
2489
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/Matcher AWS API Documentation
2490
+ #
2491
+ class Matcher < Struct.new(
2492
+ :http_code,
2493
+ :unknown)
2494
+ SENSITIVE = []
2495
+ include Aws::Structure
2496
+ include Aws::Structure::Union
2497
+
2498
+ class HttpCode < Matcher; end
2499
+ class Unknown < Matcher; end
2500
+ end
2501
+
2502
+ # Describes the conditions that can be applied when matching a path for
2503
+ # incoming requests.
2504
+ #
2505
+ # @!attribute [rw] case_sensitive
2506
+ # Indicates whether the match is case sensitive. Defaults to false.
2507
+ # @return [Boolean]
2508
+ #
2509
+ # @!attribute [rw] match
2510
+ # The type of path match.
2511
+ # @return [Types::PathMatchType]
2512
+ #
2513
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/PathMatch AWS API Documentation
2514
+ #
2515
+ class PathMatch < Struct.new(
2516
+ :case_sensitive,
2517
+ :match)
2518
+ SENSITIVE = []
2519
+ include Aws::Structure
2520
+ end
2521
+
2522
+ # Describes a path match type. Each rule can include only one of the
2523
+ # following types of paths.
2524
+ #
2525
+ # @note PathMatchType is a union - when making an API calls you must set exactly one of the members.
2526
+ #
2527
+ # @note PathMatchType is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of PathMatchType corresponding to the set member.
2528
+ #
2529
+ # @!attribute [rw] exact
2530
+ # An exact match of the path.
2531
+ # @return [String]
2532
+ #
2533
+ # @!attribute [rw] prefix
2534
+ # A prefix match of the path.
2535
+ # @return [String]
2536
+ #
2537
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/PathMatchType AWS API Documentation
2538
+ #
2539
+ class PathMatchType < Struct.new(
2540
+ :exact,
2541
+ :prefix,
2542
+ :unknown)
2543
+ SENSITIVE = []
2544
+ include Aws::Structure
2545
+ include Aws::Structure::Union
2546
+
2547
+ class Exact < PathMatchType; end
2548
+ class Prefix < PathMatchType; end
2549
+ class Unknown < PathMatchType; end
2550
+ end
2551
+
2552
+ # @!attribute [rw] policy
2553
+ # The auth policy.
2554
+ # @return [String]
2555
+ #
2556
+ # @!attribute [rw] resource_identifier
2557
+ # The ID or Amazon Resource Name (ARN) of the service network or
2558
+ # service for which the policy is created.
2559
+ # @return [String]
2560
+ #
2561
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/PutAuthPolicyRequest AWS API Documentation
2562
+ #
2563
+ class PutAuthPolicyRequest < Struct.new(
2564
+ :policy,
2565
+ :resource_identifier)
2566
+ SENSITIVE = []
2567
+ include Aws::Structure
2568
+ end
2569
+
2570
+ # @!attribute [rw] policy
2571
+ # The auth policy.
2572
+ # @return [String]
2573
+ #
2574
+ # @!attribute [rw] state
2575
+ # The state of the auth policy. The auth policy is only active when
2576
+ # the auth type is set to `Amazon Web Services_IAM`. If you provide a
2577
+ # policy, then authentication and authorization decisions are made
2578
+ # based on this policy and the client's IAM policy. If the Auth type
2579
+ # is `NONE`, then, any auth policy you provide will remain inactive.
2580
+ # For more information, see [Create a service network][1] in the
2581
+ # *Amazon VPC Lattice User Guide*.
2582
+ #
2583
+ #
2584
+ #
2585
+ # [1]: https://docs.aws.amazon.com/vpc-lattice/latest/ug/service-networks.html#create-service-network
2586
+ # @return [String]
2587
+ #
2588
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/PutAuthPolicyResponse AWS API Documentation
2589
+ #
2590
+ class PutAuthPolicyResponse < Struct.new(
2591
+ :policy,
2592
+ :state)
2593
+ SENSITIVE = []
2594
+ include Aws::Structure
2595
+ end
2596
+
2597
+ # @!attribute [rw] policy
2598
+ # An IAM policy.
2599
+ # @return [String]
2600
+ #
2601
+ # @!attribute [rw] resource_arn
2602
+ # The ID or Amazon Resource Name (ARN) of the service network or
2603
+ # service for which the policy is created.
2604
+ # @return [String]
2605
+ #
2606
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/PutResourcePolicyRequest AWS API Documentation
2607
+ #
2608
+ class PutResourcePolicyRequest < Struct.new(
2609
+ :policy,
2610
+ :resource_arn)
2611
+ SENSITIVE = []
2612
+ include Aws::Structure
2613
+ end
2614
+
2615
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/PutResourcePolicyResponse AWS API Documentation
2616
+ #
2617
+ class PutResourcePolicyResponse < Aws::EmptyStructure; end
2618
+
2619
+ # @!attribute [rw] target_group_identifier
2620
+ # The ID or Amazon Resource Name (ARN) of the target group.
2621
+ # @return [String]
2622
+ #
2623
+ # @!attribute [rw] targets
2624
+ # The targets.
2625
+ # @return [Array<Types::Target>]
2626
+ #
2627
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/RegisterTargetsRequest AWS API Documentation
2628
+ #
2629
+ class RegisterTargetsRequest < Struct.new(
2630
+ :target_group_identifier,
2631
+ :targets)
2632
+ SENSITIVE = []
2633
+ include Aws::Structure
2634
+ end
2635
+
2636
+ # @!attribute [rw] successful
2637
+ # The targets that were successfully registered.
2638
+ # @return [Array<Types::Target>]
2639
+ #
2640
+ # @!attribute [rw] unsuccessful
2641
+ # The targets that were not registered.
2642
+ # @return [Array<Types::TargetFailure>]
2643
+ #
2644
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/RegisterTargetsResponse AWS API Documentation
2645
+ #
2646
+ class RegisterTargetsResponse < Struct.new(
2647
+ :successful,
2648
+ :unsuccessful)
2649
+ SENSITIVE = []
2650
+ include Aws::Structure
2651
+ end
2652
+
2653
+ # The request references a resource that does not exist.
2654
+ #
2655
+ # @!attribute [rw] message
2656
+ # @return [String]
2657
+ #
2658
+ # @!attribute [rw] resource_id
2659
+ # The resource ID.
2660
+ # @return [String]
2661
+ #
2662
+ # @!attribute [rw] resource_type
2663
+ # The resource type.
2664
+ # @return [String]
2665
+ #
2666
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ResourceNotFoundException AWS API Documentation
2667
+ #
2668
+ class ResourceNotFoundException < Struct.new(
2669
+ :message,
2670
+ :resource_id,
2671
+ :resource_type)
2672
+ SENSITIVE = []
2673
+ include Aws::Structure
2674
+ end
2675
+
2676
+ # Describes the action for a rule. Each rule must include exactly one of
2677
+ # the following types of actions: `forward `or `fixed-response`, and it
2678
+ # must be the last action to be performed.
2679
+ #
2680
+ # @note RuleAction is a union - when making an API calls you must set exactly one of the members.
2681
+ #
2682
+ # @note RuleAction is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of RuleAction corresponding to the set member.
2683
+ #
2684
+ # @!attribute [rw] fixed_response
2685
+ # Describes the rule action that returns a custom HTTP response.
2686
+ # @return [Types::FixedResponseAction]
2687
+ #
2688
+ # @!attribute [rw] forward
2689
+ # The forward action. Traffic that matches the rule is forwarded to
2690
+ # the specified target groups.
2691
+ # @return [Types::ForwardAction]
2692
+ #
2693
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/RuleAction AWS API Documentation
2694
+ #
2695
+ class RuleAction < Struct.new(
2696
+ :fixed_response,
2697
+ :forward,
2698
+ :unknown)
2699
+ SENSITIVE = []
2700
+ include Aws::Structure
2701
+ include Aws::Structure::Union
2702
+
2703
+ class FixedResponse < RuleAction; end
2704
+ class Forward < RuleAction; end
2705
+ class Unknown < RuleAction; end
2706
+ end
2707
+
2708
+ # Describes a rule match.
2709
+ #
2710
+ # @note RuleMatch is a union - when making an API calls you must set exactly one of the members.
2711
+ #
2712
+ # @note RuleMatch is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of RuleMatch corresponding to the set member.
2713
+ #
2714
+ # @!attribute [rw] http_match
2715
+ # The HTTP criteria that a rule must match.
2716
+ # @return [Types::HttpMatch]
2717
+ #
2718
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/RuleMatch AWS API Documentation
2719
+ #
2720
+ class RuleMatch < Struct.new(
2721
+ :http_match,
2722
+ :unknown)
2723
+ SENSITIVE = []
2724
+ include Aws::Structure
2725
+ include Aws::Structure::Union
2726
+
2727
+ class HttpMatch < RuleMatch; end
2728
+ class Unknown < RuleMatch; end
2729
+ end
2730
+
2731
+ # Summary information about the listener rule.
2732
+ #
2733
+ # @!attribute [rw] arn
2734
+ # The Amazon Resource Name (ARN) of the rule.
2735
+ # @return [String]
2736
+ #
2737
+ # @!attribute [rw] created_at
2738
+ # The date and time that the listener rule was created, specified in
2739
+ # ISO-8601 format.
2740
+ # @return [Time]
2741
+ #
2742
+ # @!attribute [rw] id
2743
+ # The ID of the rule.
2744
+ # @return [String]
2745
+ #
2746
+ # @!attribute [rw] is_default
2747
+ # Indicates whether this is the default rule. Listener rules are
2748
+ # created when you create a listener. Each listener has a default rule
2749
+ # for checking connection requests.
2750
+ # @return [Boolean]
2751
+ #
2752
+ # @!attribute [rw] last_updated_at
2753
+ # The date and time that the listener rule was last updated, specified
2754
+ # in ISO-8601 format.
2755
+ # @return [Time]
2756
+ #
2757
+ # @!attribute [rw] name
2758
+ # The name of the rule.
2759
+ # @return [String]
2760
+ #
2761
+ # @!attribute [rw] priority
2762
+ # The priority of the rule.
2763
+ # @return [Integer]
2764
+ #
2765
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/RuleSummary AWS API Documentation
2766
+ #
2767
+ class RuleSummary < Struct.new(
2768
+ :arn,
2769
+ :created_at,
2770
+ :id,
2771
+ :is_default,
2772
+ :last_updated_at,
2773
+ :name,
2774
+ :priority)
2775
+ SENSITIVE = []
2776
+ include Aws::Structure
2777
+ end
2778
+
2779
+ # Represents an object when updating a rule.
2780
+ #
2781
+ # @!attribute [rw] action
2782
+ # The rule action.
2783
+ # @return [Types::RuleAction]
2784
+ #
2785
+ # @!attribute [rw] match
2786
+ # The rule match.
2787
+ # @return [Types::RuleMatch]
2788
+ #
2789
+ # @!attribute [rw] priority
2790
+ # The rule priority. A listener can't have multiple rules with the
2791
+ # same priority.
2792
+ # @return [Integer]
2793
+ #
2794
+ # @!attribute [rw] rule_identifier
2795
+ # The ID or Amazon Resource Name (ARN) of the rule.
2796
+ # @return [String]
2797
+ #
2798
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/RuleUpdate AWS API Documentation
2799
+ #
2800
+ class RuleUpdate < Struct.new(
2801
+ :action,
2802
+ :match,
2803
+ :priority,
2804
+ :rule_identifier)
2805
+ SENSITIVE = []
2806
+ include Aws::Structure
2807
+ end
2808
+
2809
+ # Describes a rule update that failed.
2810
+ #
2811
+ # @!attribute [rw] failure_code
2812
+ # The failure code.
2813
+ # @return [String]
2814
+ #
2815
+ # @!attribute [rw] failure_message
2816
+ # The failure message.
2817
+ # @return [String]
2818
+ #
2819
+ # @!attribute [rw] rule_identifier
2820
+ # The ID or Amazon Resource Name (ARN) of the rule.
2821
+ # @return [String]
2822
+ #
2823
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/RuleUpdateFailure AWS API Documentation
2824
+ #
2825
+ class RuleUpdateFailure < Struct.new(
2826
+ :failure_code,
2827
+ :failure_message,
2828
+ :rule_identifier)
2829
+ SENSITIVE = []
2830
+ include Aws::Structure
2831
+ end
2832
+
2833
+ # Describes a successful rule update.
2834
+ #
2835
+ # @!attribute [rw] action
2836
+ # The action for the default rule.
2837
+ # @return [Types::RuleAction]
2838
+ #
2839
+ # @!attribute [rw] arn
2840
+ # The Amazon Resource Name (ARN) of the listener.
2841
+ # @return [String]
2842
+ #
2843
+ # @!attribute [rw] id
2844
+ # The ID of the listener.
2845
+ # @return [String]
2846
+ #
2847
+ # @!attribute [rw] is_default
2848
+ # Indicates whether this is the default rule.
2849
+ # @return [Boolean]
2850
+ #
2851
+ # @!attribute [rw] match
2852
+ # The rule match.
2853
+ # @return [Types::RuleMatch]
2854
+ #
2855
+ # @!attribute [rw] name
2856
+ # The name of the listener.
2857
+ # @return [String]
2858
+ #
2859
+ # @!attribute [rw] priority
2860
+ # The rule priority.
2861
+ # @return [Integer]
2862
+ #
2863
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/RuleUpdateSuccess AWS API Documentation
2864
+ #
2865
+ class RuleUpdateSuccess < Struct.new(
2866
+ :action,
2867
+ :arn,
2868
+ :id,
2869
+ :is_default,
2870
+ :match,
2871
+ :name,
2872
+ :priority)
2873
+ SENSITIVE = []
2874
+ include Aws::Structure
2875
+ end
2876
+
2877
+ # Summary information about the association between a service network
2878
+ # and a service.
2879
+ #
2880
+ # @!attribute [rw] arn
2881
+ # The Amazon Resource Name (ARN) of the association.
2882
+ # @return [String]
2883
+ #
2884
+ # @!attribute [rw] created_at
2885
+ # The date and time that the association was created, specified in
2886
+ # ISO-8601 format.
2887
+ # @return [Time]
2888
+ #
2889
+ # @!attribute [rw] created_by
2890
+ # The account that created the association.
2891
+ # @return [String]
2892
+ #
2893
+ # @!attribute [rw] custom_domain_name
2894
+ # The custom domain name of the service.
2895
+ # @return [String]
2896
+ #
2897
+ # @!attribute [rw] dns_entry
2898
+ # DNS information about the service.
2899
+ # @return [Types::DnsEntry]
2900
+ #
2901
+ # @!attribute [rw] id
2902
+ # The ID of the association.
2903
+ # @return [String]
2904
+ #
2905
+ # @!attribute [rw] service_arn
2906
+ # The Amazon Resource Name (ARN) of the service.
2907
+ # @return [String]
2908
+ #
2909
+ # @!attribute [rw] service_id
2910
+ # The ID of the service.
2911
+ # @return [String]
2912
+ #
2913
+ # @!attribute [rw] service_name
2914
+ # The name of the service.
2915
+ # @return [String]
2916
+ #
2917
+ # @!attribute [rw] service_network_arn
2918
+ # The Amazon Resource Name (ARN) of the service network.
2919
+ # @return [String]
2920
+ #
2921
+ # @!attribute [rw] service_network_id
2922
+ # The ID of the service network.
2923
+ # @return [String]
2924
+ #
2925
+ # @!attribute [rw] service_network_name
2926
+ # The name of the service network.
2927
+ # @return [String]
2928
+ #
2929
+ # @!attribute [rw] status
2930
+ # The status. If the deletion fails, try to delete again.
2931
+ # @return [String]
2932
+ #
2933
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ServiceNetworkServiceAssociationSummary AWS API Documentation
2934
+ #
2935
+ class ServiceNetworkServiceAssociationSummary < Struct.new(
2936
+ :arn,
2937
+ :created_at,
2938
+ :created_by,
2939
+ :custom_domain_name,
2940
+ :dns_entry,
2941
+ :id,
2942
+ :service_arn,
2943
+ :service_id,
2944
+ :service_name,
2945
+ :service_network_arn,
2946
+ :service_network_id,
2947
+ :service_network_name,
2948
+ :status)
2949
+ SENSITIVE = []
2950
+ include Aws::Structure
2951
+ end
2952
+
2953
+ # Summary information about a service network.
2954
+ #
2955
+ # @!attribute [rw] arn
2956
+ # The Amazon Resource Name (ARN) of the service network.
2957
+ # @return [String]
2958
+ #
2959
+ # @!attribute [rw] created_at
2960
+ # The date and time that the service network was created, specified in
2961
+ # ISO-8601 format.
2962
+ # @return [Time]
2963
+ #
2964
+ # @!attribute [rw] id
2965
+ # The ID of the service network.
2966
+ # @return [String]
2967
+ #
2968
+ # @!attribute [rw] last_updated_at
2969
+ # The date and time that the service network was last updated,
2970
+ # specified in ISO-8601 format.
2971
+ # @return [Time]
2972
+ #
2973
+ # @!attribute [rw] name
2974
+ # The name of the service network.
2975
+ # @return [String]
2976
+ #
2977
+ # @!attribute [rw] number_of_associated_services
2978
+ # The number of services associated with the service network.
2979
+ # @return [Integer]
2980
+ #
2981
+ # @!attribute [rw] number_of_associated_vp_cs
2982
+ # The number of VPCs associated with the service network.
2983
+ # @return [Integer]
2984
+ #
2985
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ServiceNetworkSummary AWS API Documentation
2986
+ #
2987
+ class ServiceNetworkSummary < Struct.new(
2988
+ :arn,
2989
+ :created_at,
2990
+ :id,
2991
+ :last_updated_at,
2992
+ :name,
2993
+ :number_of_associated_services,
2994
+ :number_of_associated_vp_cs)
2995
+ SENSITIVE = []
2996
+ include Aws::Structure
2997
+ end
2998
+
2999
+ # Summary information about an association between a service network and
3000
+ # a VPC.
3001
+ #
3002
+ # @!attribute [rw] arn
3003
+ # The Amazon Resource Name (ARN) of the association.
3004
+ # @return [String]
3005
+ #
3006
+ # @!attribute [rw] created_at
3007
+ # The date and time that the association was created, specified in
3008
+ # ISO-8601 format.
3009
+ # @return [Time]
3010
+ #
3011
+ # @!attribute [rw] created_by
3012
+ # The account that created the association.
3013
+ # @return [String]
3014
+ #
3015
+ # @!attribute [rw] id
3016
+ # The ID of the association.
3017
+ # @return [String]
3018
+ #
3019
+ # @!attribute [rw] last_updated_at
3020
+ # The date and time that the association was last updated, specified
3021
+ # in ISO-8601 format.
3022
+ # @return [Time]
3023
+ #
3024
+ # @!attribute [rw] service_network_arn
3025
+ # The Amazon Resource Name (ARN) of the service network.
3026
+ # @return [String]
3027
+ #
3028
+ # @!attribute [rw] service_network_id
3029
+ # The ID of the service network.
3030
+ # @return [String]
3031
+ #
3032
+ # @!attribute [rw] service_network_name
3033
+ # The name of the service network.
3034
+ # @return [String]
3035
+ #
3036
+ # @!attribute [rw] status
3037
+ # The status.
3038
+ # @return [String]
3039
+ #
3040
+ # @!attribute [rw] vpc_id
3041
+ # The ID of the VPC.
3042
+ # @return [String]
3043
+ #
3044
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ServiceNetworkVpcAssociationSummary AWS API Documentation
3045
+ #
3046
+ class ServiceNetworkVpcAssociationSummary < Struct.new(
3047
+ :arn,
3048
+ :created_at,
3049
+ :created_by,
3050
+ :id,
3051
+ :last_updated_at,
3052
+ :service_network_arn,
3053
+ :service_network_id,
3054
+ :service_network_name,
3055
+ :status,
3056
+ :vpc_id)
3057
+ SENSITIVE = []
3058
+ include Aws::Structure
3059
+ end
3060
+
3061
+ # The request would cause a service quota to be exceeded.
3062
+ #
3063
+ # @!attribute [rw] message
3064
+ # @return [String]
3065
+ #
3066
+ # @!attribute [rw] quota_code
3067
+ # The ID of the service quota that was exceeded.
3068
+ # @return [String]
3069
+ #
3070
+ # @!attribute [rw] resource_id
3071
+ # The resource ID.
3072
+ # @return [String]
3073
+ #
3074
+ # @!attribute [rw] resource_type
3075
+ # The resource type.
3076
+ # @return [String]
3077
+ #
3078
+ # @!attribute [rw] service_code
3079
+ # The service code.
3080
+ # @return [String]
3081
+ #
3082
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ServiceQuotaExceededException AWS API Documentation
3083
+ #
3084
+ class ServiceQuotaExceededException < Struct.new(
3085
+ :message,
3086
+ :quota_code,
3087
+ :resource_id,
3088
+ :resource_type,
3089
+ :service_code)
3090
+ SENSITIVE = []
3091
+ include Aws::Structure
3092
+ end
3093
+
3094
+ # Summary information about a service.
3095
+ #
3096
+ # @!attribute [rw] arn
3097
+ # The Amazon Resource Name (ARN) of the service.
3098
+ # @return [String]
3099
+ #
3100
+ # @!attribute [rw] created_at
3101
+ # The date and time that the service was created, specified in
3102
+ # ISO-8601 format.
3103
+ # @return [Time]
3104
+ #
3105
+ # @!attribute [rw] custom_domain_name
3106
+ # The custom domain name of the service.
3107
+ # @return [String]
3108
+ #
3109
+ # @!attribute [rw] dns_entry
3110
+ # DNS information about the service.
3111
+ # @return [Types::DnsEntry]
3112
+ #
3113
+ # @!attribute [rw] id
3114
+ # The ID of the service.
3115
+ # @return [String]
3116
+ #
3117
+ # @!attribute [rw] last_updated_at
3118
+ # The date and time that the service was last updated. The format is
3119
+ # ISO-8601.
3120
+ # @return [Time]
3121
+ #
3122
+ # @!attribute [rw] name
3123
+ # The name of the service.
3124
+ # @return [String]
3125
+ #
3126
+ # @!attribute [rw] status
3127
+ # The status.
3128
+ # @return [String]
3129
+ #
3130
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ServiceSummary AWS API Documentation
3131
+ #
3132
+ class ServiceSummary < Struct.new(
3133
+ :arn,
3134
+ :created_at,
3135
+ :custom_domain_name,
3136
+ :dns_entry,
3137
+ :id,
3138
+ :last_updated_at,
3139
+ :name,
3140
+ :status)
3141
+ SENSITIVE = []
3142
+ include Aws::Structure
3143
+ end
3144
+
3145
+ # @!attribute [rw] resource_arn
3146
+ # The Amazon Resource Name (ARN) of the resource.
3147
+ # @return [String]
3148
+ #
3149
+ # @!attribute [rw] tags
3150
+ # The tags for the resource.
3151
+ # @return [Hash<String,String>]
3152
+ #
3153
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/TagResourceRequest AWS API Documentation
3154
+ #
3155
+ class TagResourceRequest < Struct.new(
3156
+ :resource_arn,
3157
+ :tags)
3158
+ SENSITIVE = []
3159
+ include Aws::Structure
3160
+ end
3161
+
3162
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/TagResourceResponse AWS API Documentation
3163
+ #
3164
+ class TagResourceResponse < Aws::EmptyStructure; end
3165
+
3166
+ # Describes a target.
3167
+ #
3168
+ # @!attribute [rw] id
3169
+ # The ID of the target. If the target type of the target group is
3170
+ # `INSTANCE`, this is an instance ID. If the target type is `IP` ,
3171
+ # this is an IP address. If the target type is `LAMBDA`, this is the
3172
+ # ARN of the Lambda function. If the target type is `ALB`, this is the
3173
+ # ARN of the Application Load Balancer.
3174
+ # @return [String]
3175
+ #
3176
+ # @!attribute [rw] port
3177
+ # The port on which the target is listening. For HTTP, the default is
3178
+ # `80`. For HTTPS, the default is `443`.
3179
+ # @return [Integer]
3180
+ #
3181
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/Target AWS API Documentation
3182
+ #
3183
+ class Target < Struct.new(
3184
+ :id,
3185
+ :port)
3186
+ SENSITIVE = []
3187
+ include Aws::Structure
3188
+ end
3189
+
3190
+ # Describes a target failure.
3191
+ #
3192
+ # @!attribute [rw] failure_code
3193
+ # The failure code.
3194
+ # @return [String]
3195
+ #
3196
+ # @!attribute [rw] failure_message
3197
+ # The failure message.
3198
+ # @return [String]
3199
+ #
3200
+ # @!attribute [rw] id
3201
+ # The ID of the target. If the target type of the target group is
3202
+ # `INSTANCE`, this is an instance ID. If the target type is `IP` ,
3203
+ # this is an IP address. If the target type is `LAMBDA`, this is the
3204
+ # ARN of the Lambda function. If the target type is `ALB`, this is the
3205
+ # ARN of the Application Load Balancer.
3206
+ # @return [String]
3207
+ #
3208
+ # @!attribute [rw] port
3209
+ # The port on which the target is listening. This parameter doesn't
3210
+ # apply if the target is a Lambda function.
3211
+ # @return [Integer]
3212
+ #
3213
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/TargetFailure AWS API Documentation
3214
+ #
3215
+ class TargetFailure < Struct.new(
3216
+ :failure_code,
3217
+ :failure_message,
3218
+ :id,
3219
+ :port)
3220
+ SENSITIVE = []
3221
+ include Aws::Structure
3222
+ end
3223
+
3224
+ # Describes the configuration of a target group. Lambda functions don't
3225
+ # support target group configuration.
3226
+ #
3227
+ # @!attribute [rw] health_check
3228
+ # The health check configuration.
3229
+ # @return [Types::HealthCheckConfig]
3230
+ #
3231
+ # @!attribute [rw] ip_address_type
3232
+ # The type of IP address used for the target group. The possible
3233
+ # values are `ipv4` and `ipv6`. This is an optional parameter. If not
3234
+ # specified, the IP address type defaults to `ipv4`.
3235
+ # @return [String]
3236
+ #
3237
+ # @!attribute [rw] port
3238
+ # The port on which the targets are listening. For HTTP, the default
3239
+ # is `80`. For HTTPS, the default is `443`
3240
+ # @return [Integer]
3241
+ #
3242
+ # @!attribute [rw] protocol
3243
+ # The protocol to use for routing traffic to the targets. Default is
3244
+ # the protocol of a target group.
3245
+ # @return [String]
3246
+ #
3247
+ # @!attribute [rw] protocol_version
3248
+ # The protocol version. Default value is `HTTP1`.
3249
+ # @return [String]
3250
+ #
3251
+ # @!attribute [rw] vpc_identifier
3252
+ # The ID of the VPC.
3253
+ # @return [String]
3254
+ #
3255
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/TargetGroupConfig AWS API Documentation
3256
+ #
3257
+ class TargetGroupConfig < Struct.new(
3258
+ :health_check,
3259
+ :ip_address_type,
3260
+ :port,
3261
+ :protocol,
3262
+ :protocol_version,
3263
+ :vpc_identifier)
3264
+ SENSITIVE = []
3265
+ include Aws::Structure
3266
+ end
3267
+
3268
+ # Summary information about a target group.
3269
+ #
3270
+ # @!attribute [rw] arn
3271
+ # The ARN (Amazon Resource Name) of the target group.
3272
+ # @return [String]
3273
+ #
3274
+ # @!attribute [rw] created_at
3275
+ # The date and time that the target group was created, specified in
3276
+ # ISO-8601 format.
3277
+ # @return [Time]
3278
+ #
3279
+ # @!attribute [rw] id
3280
+ # The ID of the target group.
3281
+ # @return [String]
3282
+ #
3283
+ # @!attribute [rw] ip_address_type
3284
+ # The type of IP address used for the target group. The possible
3285
+ # values are `ipv4` and `ipv6`. This is an optional parameter. If not
3286
+ # specified, the IP address type defaults to `ipv4`.
3287
+ # @return [String]
3288
+ #
3289
+ # @!attribute [rw] last_updated_at
3290
+ # The date and time that the target group was last updated, specified
3291
+ # in ISO-8601 format.
3292
+ # @return [Time]
3293
+ #
3294
+ # @!attribute [rw] name
3295
+ # The name of the target group.
3296
+ # @return [String]
3297
+ #
3298
+ # @!attribute [rw] port
3299
+ # The port of the target group.
3300
+ # @return [Integer]
3301
+ #
3302
+ # @!attribute [rw] protocol
3303
+ # The protocol of the target group.
3304
+ # @return [String]
3305
+ #
3306
+ # @!attribute [rw] service_arns
3307
+ # The list of Amazon Resource Names (ARNs) of the service.
3308
+ # @return [Array<String>]
3309
+ #
3310
+ # @!attribute [rw] status
3311
+ # The status.
3312
+ # @return [String]
3313
+ #
3314
+ # @!attribute [rw] type
3315
+ # The target group type.
3316
+ # @return [String]
3317
+ #
3318
+ # @!attribute [rw] vpc_identifier
3319
+ # The ID of the VPC of the target group.
3320
+ # @return [String]
3321
+ #
3322
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/TargetGroupSummary AWS API Documentation
3323
+ #
3324
+ class TargetGroupSummary < Struct.new(
3325
+ :arn,
3326
+ :created_at,
3327
+ :id,
3328
+ :ip_address_type,
3329
+ :last_updated_at,
3330
+ :name,
3331
+ :port,
3332
+ :protocol,
3333
+ :service_arns,
3334
+ :status,
3335
+ :type,
3336
+ :vpc_identifier)
3337
+ SENSITIVE = []
3338
+ include Aws::Structure
3339
+ end
3340
+
3341
+ # Summary information about a target.
3342
+ #
3343
+ # @!attribute [rw] id
3344
+ # The ID of the target. If the target type of the target group is
3345
+ # `INSTANCE`, this is an instance ID. If the target type is `IP` ,
3346
+ # this is an IP address. If the target type is `LAMBDA`, this is the
3347
+ # ARN of the Lambda function. If the target type is `ALB`, this is the
3348
+ # ARN of the Application Load Balancer.
3349
+ # @return [String]
3350
+ #
3351
+ # @!attribute [rw] port
3352
+ # The port on which the target is listening.
3353
+ # @return [Integer]
3354
+ #
3355
+ # @!attribute [rw] reason_code
3356
+ # The code for why the target status is what it is.
3357
+ # @return [String]
3358
+ #
3359
+ # @!attribute [rw] status
3360
+ # The status of the target.
3361
+ #
3362
+ # * `Draining`: The target is being deregistered. No new connections
3363
+ # will be sent to this target while current connections are being
3364
+ # drained. Default draining time is 5 minutes.
3365
+ #
3366
+ # * `Unavailable`: Health checks are unavailable for the target group.
3367
+ #
3368
+ # * `Healthy`: The target is healthy.
3369
+ #
3370
+ # * `Unhealthy`: The target is unhealthy.
3371
+ #
3372
+ # * `Initial`: Initial health checks on the target are being
3373
+ # performed.
3374
+ #
3375
+ # * `Unused`: Target group is not used in a service.
3376
+ # @return [String]
3377
+ #
3378
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/TargetSummary AWS API Documentation
3379
+ #
3380
+ class TargetSummary < Struct.new(
3381
+ :id,
3382
+ :port,
3383
+ :reason_code,
3384
+ :status)
3385
+ SENSITIVE = []
3386
+ include Aws::Structure
3387
+ end
3388
+
3389
+ # The limit on the number of requests per second was exceeded.
3390
+ #
3391
+ # @!attribute [rw] message
3392
+ # @return [String]
3393
+ #
3394
+ # @!attribute [rw] quota_code
3395
+ # The ID of the service quota that was exceeded.
3396
+ # @return [String]
3397
+ #
3398
+ # @!attribute [rw] retry_after_seconds
3399
+ # The number of seconds to wait before retrying.
3400
+ # @return [Integer]
3401
+ #
3402
+ # @!attribute [rw] service_code
3403
+ # The service code.
3404
+ # @return [String]
3405
+ #
3406
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ThrottlingException AWS API Documentation
3407
+ #
3408
+ class ThrottlingException < Struct.new(
3409
+ :message,
3410
+ :quota_code,
3411
+ :retry_after_seconds,
3412
+ :service_code)
3413
+ SENSITIVE = []
3414
+ include Aws::Structure
3415
+ end
3416
+
3417
+ # @!attribute [rw] resource_arn
3418
+ # The Amazon Resource Name (ARN) of the resource.
3419
+ # @return [String]
3420
+ #
3421
+ # @!attribute [rw] tag_keys
3422
+ # The tag keys of the tags to remove.
3423
+ # @return [Array<String>]
3424
+ #
3425
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/UntagResourceRequest AWS API Documentation
3426
+ #
3427
+ class UntagResourceRequest < Struct.new(
3428
+ :resource_arn,
3429
+ :tag_keys)
3430
+ SENSITIVE = []
3431
+ include Aws::Structure
3432
+ end
3433
+
3434
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/UntagResourceResponse AWS API Documentation
3435
+ #
3436
+ class UntagResourceResponse < Aws::EmptyStructure; end
3437
+
3438
+ # @!attribute [rw] access_log_subscription_identifier
3439
+ # The ID or Amazon Resource Name (ARN) of the access log subscription.
3440
+ # @return [String]
3441
+ #
3442
+ # @!attribute [rw] destination_arn
3443
+ # The Amazon Resource Name (ARN) of the access log destination.
3444
+ # @return [String]
3445
+ #
3446
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/UpdateAccessLogSubscriptionRequest AWS API Documentation
3447
+ #
3448
+ class UpdateAccessLogSubscriptionRequest < Struct.new(
3449
+ :access_log_subscription_identifier,
3450
+ :destination_arn)
3451
+ SENSITIVE = []
3452
+ include Aws::Structure
3453
+ end
3454
+
3455
+ # @!attribute [rw] arn
3456
+ # The Amazon Resource Name (ARN) of the access log subscription.
3457
+ # @return [String]
3458
+ #
3459
+ # @!attribute [rw] destination_arn
3460
+ # The Amazon Resource Name (ARN) of the access log destination.
3461
+ # @return [String]
3462
+ #
3463
+ # @!attribute [rw] id
3464
+ # The ID of the access log subscription.
3465
+ # @return [String]
3466
+ #
3467
+ # @!attribute [rw] resource_arn
3468
+ # The Amazon Resource Name (ARN) of the access log subscription.
3469
+ # @return [String]
3470
+ #
3471
+ # @!attribute [rw] resource_id
3472
+ # The ID of the resource.
3473
+ # @return [String]
3474
+ #
3475
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/UpdateAccessLogSubscriptionResponse AWS API Documentation
3476
+ #
3477
+ class UpdateAccessLogSubscriptionResponse < Struct.new(
3478
+ :arn,
3479
+ :destination_arn,
3480
+ :id,
3481
+ :resource_arn,
3482
+ :resource_id)
3483
+ SENSITIVE = []
3484
+ include Aws::Structure
3485
+ end
3486
+
3487
+ # @!attribute [rw] default_action
3488
+ # The action for the default rule.
3489
+ # @return [Types::RuleAction]
3490
+ #
3491
+ # @!attribute [rw] listener_identifier
3492
+ # The ID or Amazon Resource Name (ARN) of the listener.
3493
+ # @return [String]
3494
+ #
3495
+ # @!attribute [rw] service_identifier
3496
+ # The ID or Amazon Resource Name (ARN) of the service.
3497
+ # @return [String]
3498
+ #
3499
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/UpdateListenerRequest AWS API Documentation
3500
+ #
3501
+ class UpdateListenerRequest < Struct.new(
3502
+ :default_action,
3503
+ :listener_identifier,
3504
+ :service_identifier)
3505
+ SENSITIVE = []
3506
+ include Aws::Structure
3507
+ end
3508
+
3509
+ # @!attribute [rw] arn
3510
+ # The Amazon Resource Name (ARN) of the listener.
3511
+ # @return [String]
3512
+ #
3513
+ # @!attribute [rw] default_action
3514
+ # The action for the default rule.
3515
+ # @return [Types::RuleAction]
3516
+ #
3517
+ # @!attribute [rw] id
3518
+ # The ID of the listener.
3519
+ # @return [String]
3520
+ #
3521
+ # @!attribute [rw] name
3522
+ # The name of the listener.
3523
+ # @return [String]
3524
+ #
3525
+ # @!attribute [rw] port
3526
+ # The listener port.
3527
+ # @return [Integer]
3528
+ #
3529
+ # @!attribute [rw] protocol
3530
+ # The protocol of the listener.
3531
+ # @return [String]
3532
+ #
3533
+ # @!attribute [rw] service_arn
3534
+ # The Amazon Resource Name (ARN) of the service.
3535
+ # @return [String]
3536
+ #
3537
+ # @!attribute [rw] service_id
3538
+ # The ID of the service.
3539
+ # @return [String]
3540
+ #
3541
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/UpdateListenerResponse AWS API Documentation
3542
+ #
3543
+ class UpdateListenerResponse < Struct.new(
3544
+ :arn,
3545
+ :default_action,
3546
+ :id,
3547
+ :name,
3548
+ :port,
3549
+ :protocol,
3550
+ :service_arn,
3551
+ :service_id)
3552
+ SENSITIVE = []
3553
+ include Aws::Structure
3554
+ end
3555
+
3556
+ # @!attribute [rw] action
3557
+ # Information about the action for the specified listener rule.
3558
+ # @return [Types::RuleAction]
3559
+ #
3560
+ # @!attribute [rw] listener_identifier
3561
+ # The ID or Amazon Resource Name (ARN) of the listener.
3562
+ # @return [String]
3563
+ #
3564
+ # @!attribute [rw] match
3565
+ # The rule match.
3566
+ # @return [Types::RuleMatch]
3567
+ #
3568
+ # @!attribute [rw] priority
3569
+ # The rule priority. A listener can't have multiple rules with the
3570
+ # same priority.
3571
+ # @return [Integer]
3572
+ #
3573
+ # @!attribute [rw] rule_identifier
3574
+ # The ID or Amazon Resource Name (ARN) of the rule.
3575
+ # @return [String]
3576
+ #
3577
+ # @!attribute [rw] service_identifier
3578
+ # The ID or Amazon Resource Name (ARN) of the service.
3579
+ # @return [String]
3580
+ #
3581
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/UpdateRuleRequest AWS API Documentation
3582
+ #
3583
+ class UpdateRuleRequest < Struct.new(
3584
+ :action,
3585
+ :listener_identifier,
3586
+ :match,
3587
+ :priority,
3588
+ :rule_identifier,
3589
+ :service_identifier)
3590
+ SENSITIVE = []
3591
+ include Aws::Structure
3592
+ end
3593
+
3594
+ # @!attribute [rw] action
3595
+ # Information about the action for the specified listener rule.
3596
+ # @return [Types::RuleAction]
3597
+ #
3598
+ # @!attribute [rw] arn
3599
+ # The Amazon Resource Name (ARN) of the listener.
3600
+ # @return [String]
3601
+ #
3602
+ # @!attribute [rw] id
3603
+ # The ID of the listener.
3604
+ # @return [String]
3605
+ #
3606
+ # @!attribute [rw] is_default
3607
+ # Indicates whether this is the default rule.
3608
+ # @return [Boolean]
3609
+ #
3610
+ # @!attribute [rw] match
3611
+ # The rule match.
3612
+ # @return [Types::RuleMatch]
3613
+ #
3614
+ # @!attribute [rw] name
3615
+ # The name of the listener.
3616
+ # @return [String]
3617
+ #
3618
+ # @!attribute [rw] priority
3619
+ # The rule priority.
3620
+ # @return [Integer]
3621
+ #
3622
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/UpdateRuleResponse AWS API Documentation
3623
+ #
3624
+ class UpdateRuleResponse < Struct.new(
3625
+ :action,
3626
+ :arn,
3627
+ :id,
3628
+ :is_default,
3629
+ :match,
3630
+ :name,
3631
+ :priority)
3632
+ SENSITIVE = []
3633
+ include Aws::Structure
3634
+ end
3635
+
3636
+ # @!attribute [rw] auth_type
3637
+ # The type of IAM policy.
3638
+ #
3639
+ # * `NONE`: The resource does not use an IAM policy. This is the
3640
+ # default.
3641
+ #
3642
+ # * `AWS_IAM`: The resource uses an IAM policy. When this type is
3643
+ # used, auth is enabled and an auth policy is required.
3644
+ # @return [String]
3645
+ #
3646
+ # @!attribute [rw] service_network_identifier
3647
+ # The ID or Amazon Resource Name (ARN) of the service network.
3648
+ # @return [String]
3649
+ #
3650
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/UpdateServiceNetworkRequest AWS API Documentation
3651
+ #
3652
+ class UpdateServiceNetworkRequest < Struct.new(
3653
+ :auth_type,
3654
+ :service_network_identifier)
3655
+ SENSITIVE = []
3656
+ include Aws::Structure
3657
+ end
3658
+
3659
+ # @!attribute [rw] arn
3660
+ # The Amazon Resource Name (ARN) of the service network.
3661
+ # @return [String]
3662
+ #
3663
+ # @!attribute [rw] auth_type
3664
+ # The type of IAM policy.
3665
+ # @return [String]
3666
+ #
3667
+ # @!attribute [rw] id
3668
+ # The ID of the service network.
3669
+ # @return [String]
3670
+ #
3671
+ # @!attribute [rw] name
3672
+ # The name of the service network.
3673
+ # @return [String]
3674
+ #
3675
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/UpdateServiceNetworkResponse AWS API Documentation
3676
+ #
3677
+ class UpdateServiceNetworkResponse < Struct.new(
3678
+ :arn,
3679
+ :auth_type,
3680
+ :id,
3681
+ :name)
3682
+ SENSITIVE = []
3683
+ include Aws::Structure
3684
+ end
3685
+
3686
+ # @!attribute [rw] security_group_ids
3687
+ # The IDs of the security groups. Once you add a security group, it
3688
+ # cannot be removed.
3689
+ # @return [Array<String>]
3690
+ #
3691
+ # @!attribute [rw] service_network_vpc_association_identifier
3692
+ # The ID or Amazon Resource Name (ARN) of the association.
3693
+ # @return [String]
3694
+ #
3695
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/UpdateServiceNetworkVpcAssociationRequest AWS API Documentation
3696
+ #
3697
+ class UpdateServiceNetworkVpcAssociationRequest < Struct.new(
3698
+ :security_group_ids,
3699
+ :service_network_vpc_association_identifier)
3700
+ SENSITIVE = []
3701
+ include Aws::Structure
3702
+ end
3703
+
3704
+ # @!attribute [rw] arn
3705
+ # The Amazon Resource Name (ARN) of the association.
3706
+ # @return [String]
3707
+ #
3708
+ # @!attribute [rw] created_by
3709
+ # The account that created the association.
3710
+ # @return [String]
3711
+ #
3712
+ # @!attribute [rw] id
3713
+ # The ID of the association.
3714
+ # @return [String]
3715
+ #
3716
+ # @!attribute [rw] security_group_ids
3717
+ # The IDs of the security groups.
3718
+ # @return [Array<String>]
3719
+ #
3720
+ # @!attribute [rw] status
3721
+ # The status. You can retry the operation if the status is
3722
+ # `DELETE_FAILED`. However, if you retry it while the status is
3723
+ # `DELETE_IN_PROGRESS`, there is no change in the status.
3724
+ # @return [String]
3725
+ #
3726
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/UpdateServiceNetworkVpcAssociationResponse AWS API Documentation
3727
+ #
3728
+ class UpdateServiceNetworkVpcAssociationResponse < Struct.new(
3729
+ :arn,
3730
+ :created_by,
3731
+ :id,
3732
+ :security_group_ids,
3733
+ :status)
3734
+ SENSITIVE = []
3735
+ include Aws::Structure
3736
+ end
3737
+
3738
+ # @!attribute [rw] auth_type
3739
+ # The type of IAM policy.
3740
+ #
3741
+ # * `NONE`: The resource does not use an IAM policy. This is the
3742
+ # default.
3743
+ #
3744
+ # * `AWS_IAM`: The resource uses an IAM policy. When this type is
3745
+ # used, auth is enabled and an auth policy is required.
3746
+ # @return [String]
3747
+ #
3748
+ # @!attribute [rw] certificate_arn
3749
+ # The Amazon Resource Name (ARN) of the certificate.
3750
+ # @return [String]
3751
+ #
3752
+ # @!attribute [rw] service_identifier
3753
+ # The ID or Amazon Resource Name (ARN) of the service.
3754
+ # @return [String]
3755
+ #
3756
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/UpdateServiceRequest AWS API Documentation
3757
+ #
3758
+ class UpdateServiceRequest < Struct.new(
3759
+ :auth_type,
3760
+ :certificate_arn,
3761
+ :service_identifier)
3762
+ SENSITIVE = []
3763
+ include Aws::Structure
3764
+ end
3765
+
3766
+ # @!attribute [rw] arn
3767
+ # The Amazon Resource Name (ARN) of the service.
3768
+ # @return [String]
3769
+ #
3770
+ # @!attribute [rw] auth_type
3771
+ # The type of IAM policy.
3772
+ # @return [String]
3773
+ #
3774
+ # @!attribute [rw] certificate_arn
3775
+ # The Amazon Resource Name (ARN) of the certificate.
3776
+ # @return [String]
3777
+ #
3778
+ # @!attribute [rw] custom_domain_name
3779
+ # The custom domain name of the service.
3780
+ # @return [String]
3781
+ #
3782
+ # @!attribute [rw] id
3783
+ # The ID of the service.
3784
+ # @return [String]
3785
+ #
3786
+ # @!attribute [rw] name
3787
+ # The name of the service.
3788
+ # @return [String]
3789
+ #
3790
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/UpdateServiceResponse AWS API Documentation
3791
+ #
3792
+ class UpdateServiceResponse < Struct.new(
3793
+ :arn,
3794
+ :auth_type,
3795
+ :certificate_arn,
3796
+ :custom_domain_name,
3797
+ :id,
3798
+ :name)
3799
+ SENSITIVE = []
3800
+ include Aws::Structure
3801
+ end
3802
+
3803
+ # @!attribute [rw] health_check
3804
+ # The health check configuration.
3805
+ # @return [Types::HealthCheckConfig]
3806
+ #
3807
+ # @!attribute [rw] target_group_identifier
3808
+ # The ID or Amazon Resource Name (ARN) of the target group.
3809
+ # @return [String]
3810
+ #
3811
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/UpdateTargetGroupRequest AWS API Documentation
3812
+ #
3813
+ class UpdateTargetGroupRequest < Struct.new(
3814
+ :health_check,
3815
+ :target_group_identifier)
3816
+ SENSITIVE = []
3817
+ include Aws::Structure
3818
+ end
3819
+
3820
+ # @!attribute [rw] arn
3821
+ # The Amazon Resource Name (ARN) of the target group.
3822
+ # @return [String]
3823
+ #
3824
+ # @!attribute [rw] config
3825
+ # The target group configuration.
3826
+ # @return [Types::TargetGroupConfig]
3827
+ #
3828
+ # @!attribute [rw] id
3829
+ # The ID of the target group.
3830
+ # @return [String]
3831
+ #
3832
+ # @!attribute [rw] name
3833
+ # The name of the target group.
3834
+ # @return [String]
3835
+ #
3836
+ # @!attribute [rw] status
3837
+ # The status.
3838
+ # @return [String]
3839
+ #
3840
+ # @!attribute [rw] type
3841
+ # The target group type.
3842
+ # @return [String]
3843
+ #
3844
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/UpdateTargetGroupResponse AWS API Documentation
3845
+ #
3846
+ class UpdateTargetGroupResponse < Struct.new(
3847
+ :arn,
3848
+ :config,
3849
+ :id,
3850
+ :name,
3851
+ :status,
3852
+ :type)
3853
+ SENSITIVE = []
3854
+ include Aws::Structure
3855
+ end
3856
+
3857
+ # The input does not satisfy the constraints specified by an Amazon Web
3858
+ # Services service.
3859
+ #
3860
+ # @!attribute [rw] field_list
3861
+ # The fields that failed validation.
3862
+ # @return [Array<Types::ValidationExceptionField>]
3863
+ #
3864
+ # @!attribute [rw] message
3865
+ # @return [String]
3866
+ #
3867
+ # @!attribute [rw] reason
3868
+ # The reason.
3869
+ # @return [String]
3870
+ #
3871
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ValidationException AWS API Documentation
3872
+ #
3873
+ class ValidationException < Struct.new(
3874
+ :field_list,
3875
+ :message,
3876
+ :reason)
3877
+ SENSITIVE = []
3878
+ include Aws::Structure
3879
+ end
3880
+
3881
+ # Describes a validation failure.
3882
+ #
3883
+ # @!attribute [rw] message
3884
+ # Additional details about why the validation failed.
3885
+ # @return [String]
3886
+ #
3887
+ # @!attribute [rw] name
3888
+ # The name of the validation exception.
3889
+ # @return [String]
3890
+ #
3891
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ValidationExceptionField AWS API Documentation
3892
+ #
3893
+ class ValidationExceptionField < Struct.new(
3894
+ :message,
3895
+ :name)
3896
+ SENSITIVE = []
3897
+ include Aws::Structure
3898
+ end
3899
+
3900
+ # Describes the weight of a target group.
3901
+ #
3902
+ # @!attribute [rw] target_group_identifier
3903
+ # The ID or Amazon Resource Name (ARN) of the target group.
3904
+ # @return [String]
3905
+ #
3906
+ # @!attribute [rw] weight
3907
+ # Only required if you specify multiple target groups for a forward
3908
+ # action. The "weight" determines how requests are distributed to
3909
+ # the target group. For example, if you specify two target groups,
3910
+ # each with a weight of 10, each target group receives half the
3911
+ # requests. If you specify two target groups, one with a weight of 10
3912
+ # and the other with a weight of 20, the target group with a weight of
3913
+ # 20 receives twice as many requests as the other target group. If
3914
+ # there's only one target group specified, then the default value is
3915
+ # 100.
3916
+ # @return [Integer]
3917
+ #
3918
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/WeightedTargetGroup AWS API Documentation
3919
+ #
3920
+ class WeightedTargetGroup < Struct.new(
3921
+ :target_group_identifier,
3922
+ :weight)
3923
+ SENSITIVE = []
3924
+ include Aws::Structure
3925
+ end
3926
+
3927
+ end
3928
+ end