aws-sdk-vpclattice 1.23.0 → 1.25.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -461,13 +461,13 @@ module Aws::VPCLattice
461
461
  # [1]: https://docs.aws.amazon.com/vpc-lattice/latest/ug/security_iam_service-with-iam.html
462
462
  #
463
463
  # @option params [required, String] :listener_identifier
464
- # The ID or Amazon Resource Name (ARN) of the listener.
464
+ # The ID or ARN of the listener.
465
465
  #
466
466
  # @option params [required, Array<Types::RuleUpdate>] :rules
467
467
  # The rules for the specified listener.
468
468
  #
469
469
  # @option params [required, String] :service_identifier
470
- # The ID or Amazon Resource Name (ARN) of the service.
470
+ # The ID or ARN of the service.
471
471
  #
472
472
  # @return [Types::BatchUpdateRuleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
473
473
  #
@@ -588,8 +588,11 @@ module Aws::VPCLattice
588
588
  # delivery streams, and Amazon S3 buckets.
589
589
  #
590
590
  # @option params [required, String] :resource_identifier
591
- # The ID or Amazon Resource Name (ARN) of the service network or
592
- # service.
591
+ # The ID or ARN of the service network or service.
592
+ #
593
+ # @option params [String] :service_network_log_type
594
+ # The type of log that monitors your Amazon VPC Lattice service
595
+ # networks.
593
596
  #
594
597
  # @option params [Hash<String,String>] :tags
595
598
  # The tags for the access log subscription.
@@ -601,6 +604,7 @@ module Aws::VPCLattice
601
604
  # * {Types::CreateAccessLogSubscriptionResponse#id #id} => String
602
605
  # * {Types::CreateAccessLogSubscriptionResponse#resource_arn #resource_arn} => String
603
606
  # * {Types::CreateAccessLogSubscriptionResponse#resource_id #resource_id} => String
607
+ # * {Types::CreateAccessLogSubscriptionResponse#service_network_log_type #service_network_log_type} => String
604
608
  #
605
609
  # @example Request syntax with placeholder values
606
610
  #
@@ -608,6 +612,7 @@ module Aws::VPCLattice
608
612
  # client_token: "ClientToken",
609
613
  # destination_arn: "AccessLogDestinationArn", # required
610
614
  # resource_identifier: "ResourceIdentifier", # required
615
+ # service_network_log_type: "SERVICE", # accepts SERVICE, RESOURCE
611
616
  # tags: {
612
617
  # "TagKey" => "TagValue",
613
618
  # },
@@ -620,6 +625,7 @@ module Aws::VPCLattice
620
625
  # resp.id #=> String
621
626
  # resp.resource_arn #=> String
622
627
  # resp.resource_id #=> String
628
+ # resp.service_network_log_type #=> String, one of "SERVICE", "RESOURCE"
623
629
  #
624
630
  # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/CreateAccessLogSubscription AWS API Documentation
625
631
  #
@@ -668,7 +674,7 @@ module Aws::VPCLattice
668
674
  # The listener protocol.
669
675
  #
670
676
  # @option params [required, String] :service_identifier
671
- # The ID or Amazon Resource Name (ARN) of the service.
677
+ # The ID or ARN of the service.
672
678
  #
673
679
  # @option params [Hash<String,String>] :tags
674
680
  # The tags for the listener.
@@ -733,6 +739,219 @@ module Aws::VPCLattice
733
739
  req.send_request(options)
734
740
  end
735
741
 
742
+ # Creates a resource configuration. A resource configuration defines a
743
+ # specific resource. You can associate a resource configuration with a
744
+ # service network or a VPC endpoint.
745
+ #
746
+ # @option params [Boolean] :allow_association_to_shareable_service_network
747
+ # (SINGLE, GROUP, ARN) Specifies whether the resource configuration can
748
+ # be associated with a sharable service network. The default is false.
749
+ #
750
+ # @option params [String] :client_token
751
+ # A unique, case-sensitive identifier that you provide to ensure the
752
+ # idempotency of the request. If you retry a request that completed
753
+ # successfully using the same client token and parameters, the retry
754
+ # succeeds without performing any actions. If the parameters aren't
755
+ # identical, the retry fails.
756
+ #
757
+ # **A suitable default value is auto-generated.** You should normally
758
+ # not need to pass this option.**
759
+ #
760
+ # @option params [required, String] :name
761
+ # The name of the resource configuration. The name must be unique within
762
+ # the account. The valid characters are a-z, 0-9, and hyphens (-). You
763
+ # can't use a hyphen as the first or last character, or immediately
764
+ # after another hyphen.
765
+ #
766
+ # @option params [Array<String>] :port_ranges
767
+ # (SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to
768
+ # access a resource configuration (for example: 1-65535). You can
769
+ # separate port ranges using commas (for example: 1,2,22-30).
770
+ #
771
+ # @option params [String] :protocol
772
+ # (SINGLE, GROUP) The protocol accepted by the resource configuration.
773
+ #
774
+ # @option params [Types::ResourceConfigurationDefinition] :resource_configuration_definition
775
+ # (SINGLE, CHILD, ARN) The resource configuration.
776
+ #
777
+ # @option params [String] :resource_configuration_group_identifier
778
+ # (CHILD) The ID or ARN of the parent resource configuration (type is
779
+ # `GROUP`). This is used to associate a child resource configuration
780
+ # with a group resource configuration.
781
+ #
782
+ # @option params [String] :resource_gateway_identifier
783
+ # (SINGLE, GROUP, ARN) The ID or ARN of the resource gateway used to
784
+ # connect to the resource configuration. For a child resource
785
+ # configuration, this value is inherited from the parent resource
786
+ # configuration.
787
+ #
788
+ # @option params [Hash<String,String>] :tags
789
+ # The tags for the resource configuration.
790
+ #
791
+ # @option params [required, String] :type
792
+ # The type of resource configuration.
793
+ #
794
+ # * `SINGLE` - A single resource.
795
+ #
796
+ # * `GROUP` - A group of resources. You must create a group resource
797
+ # configuration before you create a child resource configuration.
798
+ #
799
+ # * `CHILD` - A single resource that is part of a group resource
800
+ # configuration.
801
+ #
802
+ # * `ARN` - An Amazon Web Services resource.
803
+ #
804
+ # @return [Types::CreateResourceConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
805
+ #
806
+ # * {Types::CreateResourceConfigurationResponse#allow_association_to_shareable_service_network #allow_association_to_shareable_service_network} => Boolean
807
+ # * {Types::CreateResourceConfigurationResponse#arn #arn} => String
808
+ # * {Types::CreateResourceConfigurationResponse#created_at #created_at} => Time
809
+ # * {Types::CreateResourceConfigurationResponse#failure_reason #failure_reason} => String
810
+ # * {Types::CreateResourceConfigurationResponse#id #id} => String
811
+ # * {Types::CreateResourceConfigurationResponse#name #name} => String
812
+ # * {Types::CreateResourceConfigurationResponse#port_ranges #port_ranges} => Array&lt;String&gt;
813
+ # * {Types::CreateResourceConfigurationResponse#protocol #protocol} => String
814
+ # * {Types::CreateResourceConfigurationResponse#resource_configuration_definition #resource_configuration_definition} => Types::ResourceConfigurationDefinition
815
+ # * {Types::CreateResourceConfigurationResponse#resource_configuration_group_id #resource_configuration_group_id} => String
816
+ # * {Types::CreateResourceConfigurationResponse#resource_gateway_id #resource_gateway_id} => String
817
+ # * {Types::CreateResourceConfigurationResponse#status #status} => String
818
+ # * {Types::CreateResourceConfigurationResponse#type #type} => String
819
+ #
820
+ # @example Request syntax with placeholder values
821
+ #
822
+ # resp = client.create_resource_configuration({
823
+ # allow_association_to_shareable_service_network: false,
824
+ # client_token: "ClientToken",
825
+ # name: "ResourceConfigurationName", # required
826
+ # port_ranges: ["PortRange"],
827
+ # protocol: "TCP", # accepts TCP
828
+ # resource_configuration_definition: {
829
+ # arn_resource: {
830
+ # arn: "WildcardArn",
831
+ # },
832
+ # dns_resource: {
833
+ # domain_name: "DomainName",
834
+ # ip_address_type: "IPV4", # accepts IPV4, IPV6, DUALSTACK
835
+ # },
836
+ # ip_resource: {
837
+ # ip_address: "IpAddress",
838
+ # },
839
+ # },
840
+ # resource_configuration_group_identifier: "ResourceConfigurationIdentifier",
841
+ # resource_gateway_identifier: "ResourceGatewayIdentifier",
842
+ # tags: {
843
+ # "TagKey" => "TagValue",
844
+ # },
845
+ # type: "GROUP", # required, accepts GROUP, CHILD, SINGLE, ARN
846
+ # })
847
+ #
848
+ # @example Response structure
849
+ #
850
+ # resp.allow_association_to_shareable_service_network #=> Boolean
851
+ # resp.arn #=> String
852
+ # resp.created_at #=> Time
853
+ # resp.failure_reason #=> String
854
+ # resp.id #=> String
855
+ # resp.name #=> String
856
+ # resp.port_ranges #=> Array
857
+ # resp.port_ranges[0] #=> String
858
+ # resp.protocol #=> String, one of "TCP"
859
+ # resp.resource_configuration_definition.arn_resource.arn #=> String
860
+ # resp.resource_configuration_definition.dns_resource.domain_name #=> String
861
+ # resp.resource_configuration_definition.dns_resource.ip_address_type #=> String, one of "IPV4", "IPV6", "DUALSTACK"
862
+ # resp.resource_configuration_definition.ip_resource.ip_address #=> String
863
+ # resp.resource_configuration_group_id #=> String
864
+ # resp.resource_gateway_id #=> String
865
+ # resp.status #=> String, one of "ACTIVE", "CREATE_IN_PROGRESS", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
866
+ # resp.type #=> String, one of "GROUP", "CHILD", "SINGLE", "ARN"
867
+ #
868
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/CreateResourceConfiguration AWS API Documentation
869
+ #
870
+ # @overload create_resource_configuration(params = {})
871
+ # @param [Hash] params ({})
872
+ def create_resource_configuration(params = {}, options = {})
873
+ req = build_request(:create_resource_configuration, params)
874
+ req.send_request(options)
875
+ end
876
+
877
+ # Creates a resource gateway.
878
+ #
879
+ # @option params [String] :client_token
880
+ # A unique, case-sensitive identifier that you provide to ensure the
881
+ # idempotency of the request. If you retry a request that completed
882
+ # successfully using the same client token and parameters, the retry
883
+ # succeeds without performing any actions. If the parameters aren't
884
+ # identical, the retry fails.
885
+ #
886
+ # **A suitable default value is auto-generated.** You should normally
887
+ # not need to pass this option.**
888
+ #
889
+ # @option params [String] :ip_address_type
890
+ # The type of IP address used by the resource gateway.
891
+ #
892
+ # @option params [required, String] :name
893
+ # The name of the resource gateway.
894
+ #
895
+ # @option params [Array<String>] :security_group_ids
896
+ # The IDs of the security groups to apply to the resource gateway. The
897
+ # security groups must be in the same VPC.
898
+ #
899
+ # @option params [required, Array<String>] :subnet_ids
900
+ # The IDs of the VPC subnets in which to create the resource gateway.
901
+ #
902
+ # @option params [Hash<String,String>] :tags
903
+ # The tags for the resource gateway.
904
+ #
905
+ # @option params [required, String] :vpc_identifier
906
+ # The ID of the VPC for the resource gateway.
907
+ #
908
+ # @return [Types::CreateResourceGatewayResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
909
+ #
910
+ # * {Types::CreateResourceGatewayResponse#arn #arn} => String
911
+ # * {Types::CreateResourceGatewayResponse#id #id} => String
912
+ # * {Types::CreateResourceGatewayResponse#ip_address_type #ip_address_type} => String
913
+ # * {Types::CreateResourceGatewayResponse#name #name} => String
914
+ # * {Types::CreateResourceGatewayResponse#security_group_ids #security_group_ids} => Array&lt;String&gt;
915
+ # * {Types::CreateResourceGatewayResponse#status #status} => String
916
+ # * {Types::CreateResourceGatewayResponse#subnet_ids #subnet_ids} => Array&lt;String&gt;
917
+ # * {Types::CreateResourceGatewayResponse#vpc_identifier #vpc_identifier} => String
918
+ #
919
+ # @example Request syntax with placeholder values
920
+ #
921
+ # resp = client.create_resource_gateway({
922
+ # client_token: "ClientToken",
923
+ # ip_address_type: "IPV4", # accepts IPV4, IPV6, DUALSTACK
924
+ # name: "ResourceGatewayName", # required
925
+ # security_group_ids: ["SecurityGroupId"],
926
+ # subnet_ids: ["SubnetId"], # required
927
+ # tags: {
928
+ # "TagKey" => "TagValue",
929
+ # },
930
+ # vpc_identifier: "VpcId", # required
931
+ # })
932
+ #
933
+ # @example Response structure
934
+ #
935
+ # resp.arn #=> String
936
+ # resp.id #=> String
937
+ # resp.ip_address_type #=> String, one of "IPV4", "IPV6", "DUALSTACK"
938
+ # resp.name #=> String
939
+ # resp.security_group_ids #=> Array
940
+ # resp.security_group_ids[0] #=> String
941
+ # resp.status #=> String, one of "ACTIVE", "CREATE_IN_PROGRESS", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
942
+ # resp.subnet_ids #=> Array
943
+ # resp.subnet_ids[0] #=> String
944
+ # resp.vpc_identifier #=> String
945
+ #
946
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/CreateResourceGateway AWS API Documentation
947
+ #
948
+ # @overload create_resource_gateway(params = {})
949
+ # @param [Hash] params ({})
950
+ def create_resource_gateway(params = {}, options = {})
951
+ req = build_request(:create_resource_gateway, params)
952
+ req.send_request(options)
953
+ end
954
+
736
955
  # Creates a listener rule. Each listener has a default rule for checking
737
956
  # connection requests, but you can define additional rules. Each rule
738
957
  # consists of a priority, one or more actions, and one or more
@@ -757,7 +976,7 @@ module Aws::VPCLattice
757
976
  # not need to pass this option.**
758
977
  #
759
978
  # @option params [required, String] :listener_identifier
760
- # The ID or Amazon Resource Name (ARN) of the listener.
979
+ # The ID or ARN of the listener.
761
980
  #
762
981
  # @option params [required, Types::RuleMatch] :match
763
982
  # The rule match.
@@ -774,7 +993,7 @@ module Aws::VPCLattice
774
993
  # the priority.
775
994
  #
776
995
  # @option params [required, String] :service_identifier
777
- # The ID or Amazon Resource Name (ARN) of the service.
996
+ # The ID or ARN of the service.
778
997
  #
779
998
  # @option params [Hash<String,String>] :tags
780
999
  # The tags for the rule.
@@ -993,6 +1212,9 @@ module Aws::VPCLattice
993
1212
  # can't use a hyphen as the first or last character, or immediately
994
1213
  # after another hyphen.
995
1214
  #
1215
+ # @option params [Types::SharingConfig] :sharing_config
1216
+ # Specify if the service network should be enabled for sharing.
1217
+ #
996
1218
  # @option params [Hash<String,String>] :tags
997
1219
  # The tags for the service network.
998
1220
  #
@@ -1002,6 +1224,7 @@ module Aws::VPCLattice
1002
1224
  # * {Types::CreateServiceNetworkResponse#auth_type #auth_type} => String
1003
1225
  # * {Types::CreateServiceNetworkResponse#id #id} => String
1004
1226
  # * {Types::CreateServiceNetworkResponse#name #name} => String
1227
+ # * {Types::CreateServiceNetworkResponse#sharing_config #sharing_config} => Types::SharingConfig
1005
1228
  #
1006
1229
  # @example Request syntax with placeholder values
1007
1230
  #
@@ -1009,6 +1232,9 @@ module Aws::VPCLattice
1009
1232
  # auth_type: "NONE", # accepts NONE, AWS_IAM
1010
1233
  # client_token: "ClientToken",
1011
1234
  # name: "ServiceNetworkName", # required
1235
+ # sharing_config: {
1236
+ # enabled: false,
1237
+ # },
1012
1238
  # tags: {
1013
1239
  # "TagKey" => "TagValue",
1014
1240
  # },
@@ -1020,6 +1246,7 @@ module Aws::VPCLattice
1020
1246
  # resp.auth_type #=> String, one of "NONE", "AWS_IAM"
1021
1247
  # resp.id #=> String
1022
1248
  # resp.name #=> String
1249
+ # resp.sharing_config.enabled #=> Boolean
1023
1250
  #
1024
1251
  # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/CreateServiceNetwork AWS API Documentation
1025
1252
  #
@@ -1030,9 +1257,69 @@ module Aws::VPCLattice
1030
1257
  req.send_request(options)
1031
1258
  end
1032
1259
 
1033
- # Associates a service with a service network. For more information, see
1034
- # [Manage service associations][1] in the *Amazon VPC Lattice User
1035
- # Guide*.
1260
+ # Associates the specified service network with the specified resource
1261
+ # configuration. This allows the resource configuration to receive
1262
+ # connections through the service network, including through a service
1263
+ # network VPC endpoint.
1264
+ #
1265
+ # @option params [String] :client_token
1266
+ # A unique, case-sensitive identifier that you provide to ensure the
1267
+ # idempotency of the request. If you retry a request that completed
1268
+ # successfully using the same client token and parameters, the retry
1269
+ # succeeds without performing any actions. If the parameters aren't
1270
+ # identical, the retry fails.
1271
+ #
1272
+ # **A suitable default value is auto-generated.** You should normally
1273
+ # not need to pass this option.**
1274
+ #
1275
+ # @option params [required, String] :resource_configuration_identifier
1276
+ # The ID of the resource configuration to associate with the service
1277
+ # network.
1278
+ #
1279
+ # @option params [required, String] :service_network_identifier
1280
+ # The ID of the service network to associate with the resource
1281
+ # configuration.
1282
+ #
1283
+ # @option params [Hash<String,String>] :tags
1284
+ # The tags for the association.
1285
+ #
1286
+ # @return [Types::CreateServiceNetworkResourceAssociationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1287
+ #
1288
+ # * {Types::CreateServiceNetworkResourceAssociationResponse#arn #arn} => String
1289
+ # * {Types::CreateServiceNetworkResourceAssociationResponse#created_by #created_by} => String
1290
+ # * {Types::CreateServiceNetworkResourceAssociationResponse#id #id} => String
1291
+ # * {Types::CreateServiceNetworkResourceAssociationResponse#status #status} => String
1292
+ #
1293
+ # @example Request syntax with placeholder values
1294
+ #
1295
+ # resp = client.create_service_network_resource_association({
1296
+ # client_token: "ClientToken",
1297
+ # resource_configuration_identifier: "ResourceConfigurationIdentifier", # required
1298
+ # service_network_identifier: "ServiceNetworkIdentifierWithoutRegex", # required
1299
+ # tags: {
1300
+ # "TagKey" => "TagValue",
1301
+ # },
1302
+ # })
1303
+ #
1304
+ # @example Response structure
1305
+ #
1306
+ # resp.arn #=> String
1307
+ # resp.created_by #=> String
1308
+ # resp.id #=> String
1309
+ # resp.status #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "PARTIAL", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED"
1310
+ #
1311
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/CreateServiceNetworkResourceAssociation AWS API Documentation
1312
+ #
1313
+ # @overload create_service_network_resource_association(params = {})
1314
+ # @param [Hash] params ({})
1315
+ def create_service_network_resource_association(params = {}, options = {})
1316
+ req = build_request(:create_service_network_resource_association, params)
1317
+ req.send_request(options)
1318
+ end
1319
+
1320
+ # Associates the specified service with the specified service network.
1321
+ # For more information, see [Manage service associations][1] in the
1322
+ # *Amazon VPC Lattice User Guide*.
1036
1323
  #
1037
1324
  # You can't use this operation if the service and service network are
1038
1325
  # already associated or if there is a disassociation or deletion in
@@ -1061,12 +1348,11 @@ module Aws::VPCLattice
1061
1348
  # not need to pass this option.**
1062
1349
  #
1063
1350
  # @option params [required, String] :service_identifier
1064
- # The ID or Amazon Resource Name (ARN) of the service.
1351
+ # The ID or ARN of the service.
1065
1352
  #
1066
1353
  # @option params [required, String] :service_network_identifier
1067
- # The ID or Amazon Resource Name (ARN) of the service network. You must
1068
- # use the ARN if the resources specified in the operation are in
1069
- # different accounts.
1354
+ # The ID or ARN of the service network. You must use an ARN if the
1355
+ # resources are in different accounts.
1070
1356
  #
1071
1357
  # @option params [Hash<String,String>] :tags
1072
1358
  # The tags for the association.
@@ -1155,9 +1441,8 @@ module Aws::VPCLattice
1155
1441
  # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html
1156
1442
  #
1157
1443
  # @option params [required, String] :service_network_identifier
1158
- # The ID or Amazon Resource Name (ARN) of the service network. You must
1159
- # use the ARN when the resources specified in the operation are in
1160
- # different accounts.
1444
+ # The ID or ARN of the service network. You must use an ARN if the
1445
+ # resources are in different accounts.
1161
1446
  #
1162
1447
  # @option params [Hash<String,String>] :tags
1163
1448
  # The tags for the association.
@@ -1317,7 +1602,7 @@ module Aws::VPCLattice
1317
1602
  # Deletes the specified access log subscription.
1318
1603
  #
1319
1604
  # @option params [required, String] :access_log_subscription_identifier
1320
- # The ID or Amazon Resource Name (ARN) of the access log subscription.
1605
+ # The ID or ARN of the access log subscription.
1321
1606
  #
1322
1607
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1323
1608
  #
@@ -1343,7 +1628,7 @@ module Aws::VPCLattice
1343
1628
  # all requests are denied.
1344
1629
  #
1345
1630
  # @option params [required, String] :resource_identifier
1346
- # The ID or Amazon Resource Name (ARN) of the resource.
1631
+ # The ID or ARN of the resource.
1347
1632
  #
1348
1633
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1349
1634
  #
@@ -1365,10 +1650,10 @@ module Aws::VPCLattice
1365
1650
  # Deletes the specified listener.
1366
1651
  #
1367
1652
  # @option params [required, String] :listener_identifier
1368
- # The ID or Amazon Resource Name (ARN) of the listener.
1653
+ # The ID or ARN of the listener.
1369
1654
  #
1370
1655
  # @option params [required, String] :service_identifier
1371
- # The ID or Amazon Resource Name (ARN) of the service.
1656
+ # The ID or ARN of the service.
1372
1657
  #
1373
1658
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1374
1659
  #
@@ -1388,6 +1673,99 @@ module Aws::VPCLattice
1388
1673
  req.send_request(options)
1389
1674
  end
1390
1675
 
1676
+ # Deletes the specified resource configuration.
1677
+ #
1678
+ # @option params [required, String] :resource_configuration_identifier
1679
+ # The ID or ARN of the resource configuration.
1680
+ #
1681
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1682
+ #
1683
+ # @example Request syntax with placeholder values
1684
+ #
1685
+ # resp = client.delete_resource_configuration({
1686
+ # resource_configuration_identifier: "ResourceConfigurationIdentifier", # required
1687
+ # })
1688
+ #
1689
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteResourceConfiguration AWS API Documentation
1690
+ #
1691
+ # @overload delete_resource_configuration(params = {})
1692
+ # @param [Hash] params ({})
1693
+ def delete_resource_configuration(params = {}, options = {})
1694
+ req = build_request(:delete_resource_configuration, params)
1695
+ req.send_request(options)
1696
+ end
1697
+
1698
+ # Disassociates the resource configuration from the resource VPC
1699
+ # endpoint.
1700
+ #
1701
+ # @option params [required, String] :resource_endpoint_association_identifier
1702
+ # The ID or ARN of the association.
1703
+ #
1704
+ # @return [Types::DeleteResourceEndpointAssociationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1705
+ #
1706
+ # * {Types::DeleteResourceEndpointAssociationResponse#arn #arn} => String
1707
+ # * {Types::DeleteResourceEndpointAssociationResponse#id #id} => String
1708
+ # * {Types::DeleteResourceEndpointAssociationResponse#resource_configuration_arn #resource_configuration_arn} => String
1709
+ # * {Types::DeleteResourceEndpointAssociationResponse#resource_configuration_id #resource_configuration_id} => String
1710
+ # * {Types::DeleteResourceEndpointAssociationResponse#vpc_endpoint_id #vpc_endpoint_id} => String
1711
+ #
1712
+ # @example Request syntax with placeholder values
1713
+ #
1714
+ # resp = client.delete_resource_endpoint_association({
1715
+ # resource_endpoint_association_identifier: "ResourceEndpointAssociationIdentifier", # required
1716
+ # })
1717
+ #
1718
+ # @example Response structure
1719
+ #
1720
+ # resp.arn #=> String
1721
+ # resp.id #=> String
1722
+ # resp.resource_configuration_arn #=> String
1723
+ # resp.resource_configuration_id #=> String
1724
+ # resp.vpc_endpoint_id #=> String
1725
+ #
1726
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteResourceEndpointAssociation AWS API Documentation
1727
+ #
1728
+ # @overload delete_resource_endpoint_association(params = {})
1729
+ # @param [Hash] params ({})
1730
+ def delete_resource_endpoint_association(params = {}, options = {})
1731
+ req = build_request(:delete_resource_endpoint_association, params)
1732
+ req.send_request(options)
1733
+ end
1734
+
1735
+ # Deletes the specified resource gateway.
1736
+ #
1737
+ # @option params [required, String] :resource_gateway_identifier
1738
+ # The ID or ARN of the resource gateway.
1739
+ #
1740
+ # @return [Types::DeleteResourceGatewayResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1741
+ #
1742
+ # * {Types::DeleteResourceGatewayResponse#arn #arn} => String
1743
+ # * {Types::DeleteResourceGatewayResponse#id #id} => String
1744
+ # * {Types::DeleteResourceGatewayResponse#name #name} => String
1745
+ # * {Types::DeleteResourceGatewayResponse#status #status} => String
1746
+ #
1747
+ # @example Request syntax with placeholder values
1748
+ #
1749
+ # resp = client.delete_resource_gateway({
1750
+ # resource_gateway_identifier: "ResourceGatewayIdentifier", # required
1751
+ # })
1752
+ #
1753
+ # @example Response structure
1754
+ #
1755
+ # resp.arn #=> String
1756
+ # resp.id #=> String
1757
+ # resp.name #=> String
1758
+ # resp.status #=> String, one of "ACTIVE", "CREATE_IN_PROGRESS", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
1759
+ #
1760
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteResourceGateway AWS API Documentation
1761
+ #
1762
+ # @overload delete_resource_gateway(params = {})
1763
+ # @param [Hash] params ({})
1764
+ def delete_resource_gateway(params = {}, options = {})
1765
+ req = build_request(:delete_resource_gateway, params)
1766
+ req.send_request(options)
1767
+ end
1768
+
1391
1769
  # Deletes the specified resource policy.
1392
1770
  #
1393
1771
  # @option params [required, String] :resource_arn
@@ -1424,13 +1802,13 @@ module Aws::VPCLattice
1424
1802
  # [1]: https://docs.aws.amazon.com/vpc-lattice/latest/ug/listeners.html#listener-rules
1425
1803
  #
1426
1804
  # @option params [required, String] :listener_identifier
1427
- # The ID or Amazon Resource Name (ARN) of the listener.
1805
+ # The ID or ARN of the listener.
1428
1806
  #
1429
1807
  # @option params [required, String] :rule_identifier
1430
- # The ID or Amazon Resource Name (ARN) of the rule.
1808
+ # The ID or ARN of the rule.
1431
1809
  #
1432
1810
  # @option params [required, String] :service_identifier
1433
- # The ID or Amazon Resource Name (ARN) of the service.
1811
+ # The ID or ARN of the service.
1434
1812
  #
1435
1813
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1436
1814
  #
@@ -1463,7 +1841,7 @@ module Aws::VPCLattice
1463
1841
  # [1]: https://docs.aws.amazon.com/vpc-lattice/latest/ug/services.html#delete-service
1464
1842
  #
1465
1843
  # @option params [required, String] :service_identifier
1466
- # The ID or Amazon Resource Name (ARN) of the service.
1844
+ # The ID or ARN of the service.
1467
1845
  #
1468
1846
  # @return [Types::DeleteServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1469
1847
  #
@@ -1506,7 +1884,7 @@ module Aws::VPCLattice
1506
1884
  # [1]: https://docs.aws.amazon.com/vpc-lattice/latest/ug/service-networks.html#delete-service-network
1507
1885
  #
1508
1886
  # @option params [required, String] :service_network_identifier
1509
- # The Amazon Resource Name (ARN) or ID of the service network.
1887
+ # The ID or ARN of the service network.
1510
1888
  #
1511
1889
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1512
1890
  #
@@ -1525,12 +1903,44 @@ module Aws::VPCLattice
1525
1903
  req.send_request(options)
1526
1904
  end
1527
1905
 
1528
- # Deletes the association between a specified service and the specific
1529
- # service network. This operation fails if an association is still in
1530
- # progress.
1906
+ # Deletes the association between a service network and a resource
1907
+ # configuration.
1908
+ #
1909
+ # @option params [required, String] :service_network_resource_association_identifier
1910
+ # The ID of the association.
1911
+ #
1912
+ # @return [Types::DeleteServiceNetworkResourceAssociationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1913
+ #
1914
+ # * {Types::DeleteServiceNetworkResourceAssociationResponse#arn #arn} => String
1915
+ # * {Types::DeleteServiceNetworkResourceAssociationResponse#id #id} => String
1916
+ # * {Types::DeleteServiceNetworkResourceAssociationResponse#status #status} => String
1917
+ #
1918
+ # @example Request syntax with placeholder values
1919
+ #
1920
+ # resp = client.delete_service_network_resource_association({
1921
+ # service_network_resource_association_identifier: "ServiceNetworkResourceAssociationIdentifier", # required
1922
+ # })
1923
+ #
1924
+ # @example Response structure
1925
+ #
1926
+ # resp.arn #=> String
1927
+ # resp.id #=> String
1928
+ # resp.status #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "PARTIAL", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED"
1929
+ #
1930
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/DeleteServiceNetworkResourceAssociation AWS API Documentation
1931
+ #
1932
+ # @overload delete_service_network_resource_association(params = {})
1933
+ # @param [Hash] params ({})
1934
+ def delete_service_network_resource_association(params = {}, options = {})
1935
+ req = build_request(:delete_service_network_resource_association, params)
1936
+ req.send_request(options)
1937
+ end
1938
+
1939
+ # Deletes the association between a service and a service network. This
1940
+ # operation fails if an association is still in progress.
1531
1941
  #
1532
1942
  # @option params [required, String] :service_network_service_association_identifier
1533
- # The ID or Amazon Resource Name (ARN) of the association.
1943
+ # The ID or ARN of the association.
1534
1944
  #
1535
1945
  # @return [Types::DeleteServiceNetworkServiceAssociationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1536
1946
  #
@@ -1564,7 +1974,7 @@ module Aws::VPCLattice
1564
1974
  # progress.
1565
1975
  #
1566
1976
  # @option params [required, String] :service_network_vpc_association_identifier
1567
- # The ID or Amazon Resource Name (ARN) of the association.
1977
+ # The ID or ARN of the association.
1568
1978
  #
1569
1979
  # @return [Types::DeleteServiceNetworkVpcAssociationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1570
1980
  #
@@ -1597,7 +2007,7 @@ module Aws::VPCLattice
1597
2007
  # in a listener rule or if the target group creation is in progress.
1598
2008
  #
1599
2009
  # @option params [required, String] :target_group_identifier
1600
- # The ID or Amazon Resource Name (ARN) of the target group.
2010
+ # The ID or ARN of the target group.
1601
2011
  #
1602
2012
  # @return [Types::DeleteTargetGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1603
2013
  #
@@ -1629,7 +2039,7 @@ module Aws::VPCLattice
1629
2039
  # Deregisters the specified targets from the specified target group.
1630
2040
  #
1631
2041
  # @option params [required, String] :target_group_identifier
1632
- # The ID or Amazon Resource Name (ARN) of the target group.
2042
+ # The ID or ARN of the target group.
1633
2043
  #
1634
2044
  # @option params [required, Array<Types::Target>] :targets
1635
2045
  # The targets to deregister.
@@ -1674,7 +2084,7 @@ module Aws::VPCLattice
1674
2084
  # Retrieves information about the specified access log subscription.
1675
2085
  #
1676
2086
  # @option params [required, String] :access_log_subscription_identifier
1677
- # The ID or Amazon Resource Name (ARN) of the access log subscription.
2087
+ # The ID or ARN of the access log subscription.
1678
2088
  #
1679
2089
  # @return [Types::GetAccessLogSubscriptionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1680
2090
  #
@@ -1685,6 +2095,7 @@ module Aws::VPCLattice
1685
2095
  # * {Types::GetAccessLogSubscriptionResponse#last_updated_at #last_updated_at} => Time
1686
2096
  # * {Types::GetAccessLogSubscriptionResponse#resource_arn #resource_arn} => String
1687
2097
  # * {Types::GetAccessLogSubscriptionResponse#resource_id #resource_id} => String
2098
+ # * {Types::GetAccessLogSubscriptionResponse#service_network_log_type #service_network_log_type} => String
1688
2099
  #
1689
2100
  # @example Request syntax with placeholder values
1690
2101
  #
@@ -1701,6 +2112,7 @@ module Aws::VPCLattice
1701
2112
  # resp.last_updated_at #=> Time
1702
2113
  # resp.resource_arn #=> String
1703
2114
  # resp.resource_id #=> String
2115
+ # resp.service_network_log_type #=> String, one of "SERVICE", "RESOURCE"
1704
2116
  #
1705
2117
  # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetAccessLogSubscription AWS API Documentation
1706
2118
  #
@@ -1715,8 +2127,7 @@ module Aws::VPCLattice
1715
2127
  # or service network.
1716
2128
  #
1717
2129
  # @option params [required, String] :resource_identifier
1718
- # The ID or Amazon Resource Name (ARN) of the service network or
1719
- # service.
2130
+ # The ID or ARN of the service network or service.
1720
2131
  #
1721
2132
  # @return [Types::GetAuthPolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1722
2133
  #
@@ -1751,10 +2162,10 @@ module Aws::VPCLattice
1751
2162
  # service.
1752
2163
  #
1753
2164
  # @option params [required, String] :listener_identifier
1754
- # The ID or Amazon Resource Name (ARN) of the listener.
2165
+ # The ID or ARN of the listener.
1755
2166
  #
1756
2167
  # @option params [required, String] :service_identifier
1757
- # The ID or Amazon Resource Name (ARN) of the service.
2168
+ # The ID or ARN of the service.
1758
2169
  #
1759
2170
  # @return [Types::GetListenerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1760
2171
  #
@@ -1801,9 +2212,119 @@ module Aws::VPCLattice
1801
2212
  req.send_request(options)
1802
2213
  end
1803
2214
 
1804
- # Retrieves information about the resource policy. The resource policy
1805
- # is an IAM policy created on behalf of the resource owner when they
1806
- # share a resource.
2215
+ # Retrieves information about the specified resource configuration.
2216
+ #
2217
+ # @option params [required, String] :resource_configuration_identifier
2218
+ # The ID of the resource configuration.
2219
+ #
2220
+ # @return [Types::GetResourceConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2221
+ #
2222
+ # * {Types::GetResourceConfigurationResponse#allow_association_to_shareable_service_network #allow_association_to_shareable_service_network} => Boolean
2223
+ # * {Types::GetResourceConfigurationResponse#amazon_managed #amazon_managed} => Boolean
2224
+ # * {Types::GetResourceConfigurationResponse#arn #arn} => String
2225
+ # * {Types::GetResourceConfigurationResponse#created_at #created_at} => Time
2226
+ # * {Types::GetResourceConfigurationResponse#custom_domain_name #custom_domain_name} => String
2227
+ # * {Types::GetResourceConfigurationResponse#failure_reason #failure_reason} => String
2228
+ # * {Types::GetResourceConfigurationResponse#id #id} => String
2229
+ # * {Types::GetResourceConfigurationResponse#last_updated_at #last_updated_at} => Time
2230
+ # * {Types::GetResourceConfigurationResponse#name #name} => String
2231
+ # * {Types::GetResourceConfigurationResponse#port_ranges #port_ranges} => Array&lt;String&gt;
2232
+ # * {Types::GetResourceConfigurationResponse#protocol #protocol} => String
2233
+ # * {Types::GetResourceConfigurationResponse#resource_configuration_definition #resource_configuration_definition} => Types::ResourceConfigurationDefinition
2234
+ # * {Types::GetResourceConfigurationResponse#resource_configuration_group_id #resource_configuration_group_id} => String
2235
+ # * {Types::GetResourceConfigurationResponse#resource_gateway_id #resource_gateway_id} => String
2236
+ # * {Types::GetResourceConfigurationResponse#status #status} => String
2237
+ # * {Types::GetResourceConfigurationResponse#type #type} => String
2238
+ #
2239
+ # @example Request syntax with placeholder values
2240
+ #
2241
+ # resp = client.get_resource_configuration({
2242
+ # resource_configuration_identifier: "ResourceConfigurationIdentifier", # required
2243
+ # })
2244
+ #
2245
+ # @example Response structure
2246
+ #
2247
+ # resp.allow_association_to_shareable_service_network #=> Boolean
2248
+ # resp.amazon_managed #=> Boolean
2249
+ # resp.arn #=> String
2250
+ # resp.created_at #=> Time
2251
+ # resp.custom_domain_name #=> String
2252
+ # resp.failure_reason #=> String
2253
+ # resp.id #=> String
2254
+ # resp.last_updated_at #=> Time
2255
+ # resp.name #=> String
2256
+ # resp.port_ranges #=> Array
2257
+ # resp.port_ranges[0] #=> String
2258
+ # resp.protocol #=> String, one of "TCP"
2259
+ # resp.resource_configuration_definition.arn_resource.arn #=> String
2260
+ # resp.resource_configuration_definition.dns_resource.domain_name #=> String
2261
+ # resp.resource_configuration_definition.dns_resource.ip_address_type #=> String, one of "IPV4", "IPV6", "DUALSTACK"
2262
+ # resp.resource_configuration_definition.ip_resource.ip_address #=> String
2263
+ # resp.resource_configuration_group_id #=> String
2264
+ # resp.resource_gateway_id #=> String
2265
+ # resp.status #=> String, one of "ACTIVE", "CREATE_IN_PROGRESS", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
2266
+ # resp.type #=> String, one of "GROUP", "CHILD", "SINGLE", "ARN"
2267
+ #
2268
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetResourceConfiguration AWS API Documentation
2269
+ #
2270
+ # @overload get_resource_configuration(params = {})
2271
+ # @param [Hash] params ({})
2272
+ def get_resource_configuration(params = {}, options = {})
2273
+ req = build_request(:get_resource_configuration, params)
2274
+ req.send_request(options)
2275
+ end
2276
+
2277
+ # Retrieves information about the specified resource gateway.
2278
+ #
2279
+ # @option params [required, String] :resource_gateway_identifier
2280
+ # The ID of the resource gateway.
2281
+ #
2282
+ # @return [Types::GetResourceGatewayResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2283
+ #
2284
+ # * {Types::GetResourceGatewayResponse#arn #arn} => String
2285
+ # * {Types::GetResourceGatewayResponse#created_at #created_at} => Time
2286
+ # * {Types::GetResourceGatewayResponse#id #id} => String
2287
+ # * {Types::GetResourceGatewayResponse#ip_address_type #ip_address_type} => String
2288
+ # * {Types::GetResourceGatewayResponse#last_updated_at #last_updated_at} => Time
2289
+ # * {Types::GetResourceGatewayResponse#name #name} => String
2290
+ # * {Types::GetResourceGatewayResponse#security_group_ids #security_group_ids} => Array&lt;String&gt;
2291
+ # * {Types::GetResourceGatewayResponse#status #status} => String
2292
+ # * {Types::GetResourceGatewayResponse#subnet_ids #subnet_ids} => Array&lt;String&gt;
2293
+ # * {Types::GetResourceGatewayResponse#vpc_id #vpc_id} => String
2294
+ #
2295
+ # @example Request syntax with placeholder values
2296
+ #
2297
+ # resp = client.get_resource_gateway({
2298
+ # resource_gateway_identifier: "ResourceGatewayIdentifier", # required
2299
+ # })
2300
+ #
2301
+ # @example Response structure
2302
+ #
2303
+ # resp.arn #=> String
2304
+ # resp.created_at #=> Time
2305
+ # resp.id #=> String
2306
+ # resp.ip_address_type #=> String, one of "IPV4", "IPV6", "DUALSTACK"
2307
+ # resp.last_updated_at #=> Time
2308
+ # resp.name #=> String
2309
+ # resp.security_group_ids #=> Array
2310
+ # resp.security_group_ids[0] #=> String
2311
+ # resp.status #=> String, one of "ACTIVE", "CREATE_IN_PROGRESS", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
2312
+ # resp.subnet_ids #=> Array
2313
+ # resp.subnet_ids[0] #=> String
2314
+ # resp.vpc_id #=> String
2315
+ #
2316
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetResourceGateway AWS API Documentation
2317
+ #
2318
+ # @overload get_resource_gateway(params = {})
2319
+ # @param [Hash] params ({})
2320
+ def get_resource_gateway(params = {}, options = {})
2321
+ req = build_request(:get_resource_gateway, params)
2322
+ req.send_request(options)
2323
+ end
2324
+
2325
+ # Retrieves information about the specified resource policy. The
2326
+ # resource policy is an IAM policy created on behalf of the resource
2327
+ # owner when they share a resource.
1807
2328
  #
1808
2329
  # @option params [required, String] :resource_arn
1809
2330
  # The Amazon Resource Name (ARN) of the service network or service.
@@ -1831,22 +2352,23 @@ module Aws::VPCLattice
1831
2352
  req.send_request(options)
1832
2353
  end
1833
2354
 
1834
- # Retrieves information about listener rules. You can also retrieve
1835
- # information about the default listener rule. For more information, see
1836
- # [Listener rules][1] in the *Amazon VPC Lattice User Guide*.
2355
+ # Retrieves information about the specified listener rules. You can also
2356
+ # retrieve information about the default listener rule. For more
2357
+ # information, see [Listener rules][1] in the *Amazon VPC Lattice User
2358
+ # Guide*.
1837
2359
  #
1838
2360
  #
1839
2361
  #
1840
2362
  # [1]: https://docs.aws.amazon.com/vpc-lattice/latest/ug/listeners.html#listener-rules
1841
2363
  #
1842
2364
  # @option params [required, String] :listener_identifier
1843
- # The ID or Amazon Resource Name (ARN) of the listener.
2365
+ # The ID or ARN of the listener.
1844
2366
  #
1845
2367
  # @option params [required, String] :rule_identifier
1846
- # The ID or Amazon Resource Name (ARN) of the listener rule.
2368
+ # The ID or ARN of the listener rule.
1847
2369
  #
1848
2370
  # @option params [required, String] :service_identifier
1849
- # The ID or Amazon Resource Name (ARN) of the service.
2371
+ # The ID or ARN of the service.
1850
2372
  #
1851
2373
  # @return [Types::GetRuleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1852
2374
  #
@@ -1904,7 +2426,7 @@ module Aws::VPCLattice
1904
2426
  # Retrieves information about the specified service.
1905
2427
  #
1906
2428
  # @option params [required, String] :service_identifier
1907
- # The ID or Amazon Resource Name (ARN) of the service.
2429
+ # The ID or ARN of the service.
1908
2430
  #
1909
2431
  # @return [Types::GetServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1910
2432
  #
@@ -1955,7 +2477,7 @@ module Aws::VPCLattice
1955
2477
  # Retrieves information about the specified service network.
1956
2478
  #
1957
2479
  # @option params [required, String] :service_network_identifier
1958
- # The ID or Amazon Resource Name (ARN) of the service network.
2480
+ # The ID or ARN of the service network.
1959
2481
  #
1960
2482
  # @return [Types::GetServiceNetworkResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1961
2483
  #
@@ -1967,6 +2489,7 @@ module Aws::VPCLattice
1967
2489
  # * {Types::GetServiceNetworkResponse#name #name} => String
1968
2490
  # * {Types::GetServiceNetworkResponse#number_of_associated_services #number_of_associated_services} => Integer
1969
2491
  # * {Types::GetServiceNetworkResponse#number_of_associated_vp_cs #number_of_associated_vp_cs} => Integer
2492
+ # * {Types::GetServiceNetworkResponse#sharing_config #sharing_config} => Types::SharingConfig
1970
2493
  #
1971
2494
  # @example Request syntax with placeholder values
1972
2495
  #
@@ -1984,6 +2507,7 @@ module Aws::VPCLattice
1984
2507
  # resp.name #=> String
1985
2508
  # resp.number_of_associated_services #=> Integer
1986
2509
  # resp.number_of_associated_vp_cs #=> Integer
2510
+ # resp.sharing_config.enabled #=> Boolean
1987
2511
  #
1988
2512
  # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetServiceNetwork AWS API Documentation
1989
2513
  #
@@ -1994,11 +2518,74 @@ module Aws::VPCLattice
1994
2518
  req.send_request(options)
1995
2519
  end
1996
2520
 
2521
+ # Retrieves information about the specified association between a
2522
+ # service network and a resource configuration.
2523
+ #
2524
+ # @option params [required, String] :service_network_resource_association_identifier
2525
+ # The ID of the association.
2526
+ #
2527
+ # @return [Types::GetServiceNetworkResourceAssociationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2528
+ #
2529
+ # * {Types::GetServiceNetworkResourceAssociationResponse#arn #arn} => String
2530
+ # * {Types::GetServiceNetworkResourceAssociationResponse#created_at #created_at} => Time
2531
+ # * {Types::GetServiceNetworkResourceAssociationResponse#created_by #created_by} => String
2532
+ # * {Types::GetServiceNetworkResourceAssociationResponse#dns_entry #dns_entry} => Types::DnsEntry
2533
+ # * {Types::GetServiceNetworkResourceAssociationResponse#failure_code #failure_code} => String
2534
+ # * {Types::GetServiceNetworkResourceAssociationResponse#failure_reason #failure_reason} => String
2535
+ # * {Types::GetServiceNetworkResourceAssociationResponse#id #id} => String
2536
+ # * {Types::GetServiceNetworkResourceAssociationResponse#is_managed_association #is_managed_association} => Boolean
2537
+ # * {Types::GetServiceNetworkResourceAssociationResponse#last_updated_at #last_updated_at} => Time
2538
+ # * {Types::GetServiceNetworkResourceAssociationResponse#private_dns_entry #private_dns_entry} => Types::DnsEntry
2539
+ # * {Types::GetServiceNetworkResourceAssociationResponse#resource_configuration_arn #resource_configuration_arn} => String
2540
+ # * {Types::GetServiceNetworkResourceAssociationResponse#resource_configuration_id #resource_configuration_id} => String
2541
+ # * {Types::GetServiceNetworkResourceAssociationResponse#resource_configuration_name #resource_configuration_name} => String
2542
+ # * {Types::GetServiceNetworkResourceAssociationResponse#service_network_arn #service_network_arn} => String
2543
+ # * {Types::GetServiceNetworkResourceAssociationResponse#service_network_id #service_network_id} => String
2544
+ # * {Types::GetServiceNetworkResourceAssociationResponse#service_network_name #service_network_name} => String
2545
+ # * {Types::GetServiceNetworkResourceAssociationResponse#status #status} => String
2546
+ #
2547
+ # @example Request syntax with placeholder values
2548
+ #
2549
+ # resp = client.get_service_network_resource_association({
2550
+ # service_network_resource_association_identifier: "ServiceNetworkResourceAssociationIdentifier", # required
2551
+ # })
2552
+ #
2553
+ # @example Response structure
2554
+ #
2555
+ # resp.arn #=> String
2556
+ # resp.created_at #=> Time
2557
+ # resp.created_by #=> String
2558
+ # resp.dns_entry.domain_name #=> String
2559
+ # resp.dns_entry.hosted_zone_id #=> String
2560
+ # resp.failure_code #=> String
2561
+ # resp.failure_reason #=> String
2562
+ # resp.id #=> String
2563
+ # resp.is_managed_association #=> Boolean
2564
+ # resp.last_updated_at #=> Time
2565
+ # resp.private_dns_entry.domain_name #=> String
2566
+ # resp.private_dns_entry.hosted_zone_id #=> String
2567
+ # resp.resource_configuration_arn #=> String
2568
+ # resp.resource_configuration_id #=> String
2569
+ # resp.resource_configuration_name #=> String
2570
+ # resp.service_network_arn #=> String
2571
+ # resp.service_network_id #=> String
2572
+ # resp.service_network_name #=> String
2573
+ # resp.status #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "PARTIAL", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED"
2574
+ #
2575
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/GetServiceNetworkResourceAssociation AWS API Documentation
2576
+ #
2577
+ # @overload get_service_network_resource_association(params = {})
2578
+ # @param [Hash] params ({})
2579
+ def get_service_network_resource_association(params = {}, options = {})
2580
+ req = build_request(:get_service_network_resource_association, params)
2581
+ req.send_request(options)
2582
+ end
2583
+
1997
2584
  # Retrieves information about the specified association between a
1998
2585
  # service network and a service.
1999
2586
  #
2000
2587
  # @option params [required, String] :service_network_service_association_identifier
2001
- # The ID or Amazon Resource Name (ARN) of the association.
2588
+ # The ID or ARN of the association.
2002
2589
  #
2003
2590
  # @return [Types::GetServiceNetworkServiceAssociationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2004
2591
  #
@@ -2052,11 +2639,11 @@ module Aws::VPCLattice
2052
2639
  req.send_request(options)
2053
2640
  end
2054
2641
 
2055
- # Retrieves information about the association between a service network
2056
- # and a VPC.
2642
+ # Retrieves information about the specified association between a
2643
+ # service network and a VPC.
2057
2644
  #
2058
2645
  # @option params [required, String] :service_network_vpc_association_identifier
2059
- # The ID or Amazon Resource Name (ARN) of the association.
2646
+ # The ID or ARN of the association.
2060
2647
  #
2061
2648
  # @return [Types::GetServiceNetworkVpcAssociationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2062
2649
  #
@@ -2109,7 +2696,7 @@ module Aws::VPCLattice
2109
2696
  # Retrieves information about the specified target group.
2110
2697
  #
2111
2698
  # @option params [required, String] :target_group_identifier
2112
- # The ID or Amazon Resource Name (ARN) of the target group.
2699
+ # The ID or ARN of the target group.
2113
2700
  #
2114
2701
  # @return [Types::GetTargetGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2115
2702
  #
@@ -2170,7 +2757,7 @@ module Aws::VPCLattice
2170
2757
  req.send_request(options)
2171
2758
  end
2172
2759
 
2173
- # Lists all access log subscriptions for the specified service network
2760
+ # Lists the access log subscriptions for the specified service network
2174
2761
  # or service.
2175
2762
  #
2176
2763
  # @option params [Integer] :max_results
@@ -2180,8 +2767,7 @@ module Aws::VPCLattice
2180
2767
  # A pagination token for the next page of results.
2181
2768
  #
2182
2769
  # @option params [required, String] :resource_identifier
2183
- # The ID or Amazon Resource Name (ARN) of the service network or
2184
- # service.
2770
+ # The ID or ARN of the service network or service.
2185
2771
  #
2186
2772
  # @return [Types::ListAccessLogSubscriptionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2187
2773
  #
@@ -2208,6 +2794,7 @@ module Aws::VPCLattice
2208
2794
  # resp.items[0].last_updated_at #=> Time
2209
2795
  # resp.items[0].resource_arn #=> String
2210
2796
  # resp.items[0].resource_id #=> String
2797
+ # resp.items[0].service_network_log_type #=> String, one of "SERVICE", "RESOURCE"
2211
2798
  # resp.next_token #=> String
2212
2799
  #
2213
2800
  # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListAccessLogSubscriptions AWS API Documentation
@@ -2228,7 +2815,7 @@ module Aws::VPCLattice
2228
2815
  # A pagination token for the next page of results.
2229
2816
  #
2230
2817
  # @option params [required, String] :service_identifier
2231
- # The ID or Amazon Resource Name (ARN) of the service.
2818
+ # The ID or ARN of the service.
2232
2819
  #
2233
2820
  # @return [Types::ListListenersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2234
2821
  #
@@ -2266,10 +2853,176 @@ module Aws::VPCLattice
2266
2853
  req.send_request(options)
2267
2854
  end
2268
2855
 
2269
- # Lists the rules for the listener.
2856
+ # Lists the resource configurations owned by or shared with this
2857
+ # account.
2858
+ #
2859
+ # @option params [Integer] :max_results
2860
+ # The maximum page size.
2861
+ #
2862
+ # @option params [String] :next_token
2863
+ # A pagination token for the next page of results.
2864
+ #
2865
+ # @option params [String] :resource_configuration_group_identifier
2866
+ # The ID of the group resource configuration.
2867
+ #
2868
+ # @option params [String] :resource_gateway_identifier
2869
+ # The ID of the resource gateway for the resource configuration.
2870
+ #
2871
+ # @return [Types::ListResourceConfigurationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2872
+ #
2873
+ # * {Types::ListResourceConfigurationsResponse#items #items} => Array&lt;Types::ResourceConfigurationSummary&gt;
2874
+ # * {Types::ListResourceConfigurationsResponse#next_token #next_token} => String
2875
+ #
2876
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2877
+ #
2878
+ # @example Request syntax with placeholder values
2879
+ #
2880
+ # resp = client.list_resource_configurations({
2881
+ # max_results: 1,
2882
+ # next_token: "NextToken",
2883
+ # resource_configuration_group_identifier: "ResourceConfigurationIdentifier",
2884
+ # resource_gateway_identifier: "ResourceGatewayIdentifier",
2885
+ # })
2886
+ #
2887
+ # @example Response structure
2888
+ #
2889
+ # resp.items #=> Array
2890
+ # resp.items[0].amazon_managed #=> Boolean
2891
+ # resp.items[0].arn #=> String
2892
+ # resp.items[0].created_at #=> Time
2893
+ # resp.items[0].id #=> String
2894
+ # resp.items[0].last_updated_at #=> Time
2895
+ # resp.items[0].name #=> String
2896
+ # resp.items[0].resource_configuration_group_id #=> String
2897
+ # resp.items[0].resource_gateway_id #=> String
2898
+ # resp.items[0].status #=> String, one of "ACTIVE", "CREATE_IN_PROGRESS", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
2899
+ # resp.items[0].type #=> String, one of "GROUP", "CHILD", "SINGLE", "ARN"
2900
+ # resp.next_token #=> String
2901
+ #
2902
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListResourceConfigurations AWS API Documentation
2903
+ #
2904
+ # @overload list_resource_configurations(params = {})
2905
+ # @param [Hash] params ({})
2906
+ def list_resource_configurations(params = {}, options = {})
2907
+ req = build_request(:list_resource_configurations, params)
2908
+ req.send_request(options)
2909
+ end
2910
+
2911
+ # Lists the associations for the specified VPC endpoint.
2912
+ #
2913
+ # @option params [Integer] :max_results
2914
+ # The maximum page size.
2915
+ #
2916
+ # @option params [String] :next_token
2917
+ # A pagination token for the next page of results.
2918
+ #
2919
+ # @option params [required, String] :resource_configuration_identifier
2920
+ # The ID for the resource configuration associated with the VPC
2921
+ # endpoint.
2922
+ #
2923
+ # @option params [String] :resource_endpoint_association_identifier
2924
+ # The ID of the association.
2925
+ #
2926
+ # @option params [String] :vpc_endpoint_id
2927
+ # The ID of the VPC endpoint in the association.
2928
+ #
2929
+ # @option params [String] :vpc_endpoint_owner
2930
+ # The owner of the VPC endpoint in the association.
2931
+ #
2932
+ # @return [Types::ListResourceEndpointAssociationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2933
+ #
2934
+ # * {Types::ListResourceEndpointAssociationsResponse#items #items} => Array&lt;Types::ResourceEndpointAssociationSummary&gt;
2935
+ # * {Types::ListResourceEndpointAssociationsResponse#next_token #next_token} => String
2936
+ #
2937
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2938
+ #
2939
+ # @example Request syntax with placeholder values
2940
+ #
2941
+ # resp = client.list_resource_endpoint_associations({
2942
+ # max_results: 1,
2943
+ # next_token: "NextToken",
2944
+ # resource_configuration_identifier: "ResourceConfigurationIdentifier", # required
2945
+ # resource_endpoint_association_identifier: "ResourceEndpointAssociationIdentifier",
2946
+ # vpc_endpoint_id: "VpcEndpointId",
2947
+ # vpc_endpoint_owner: "VpcEndpointOwner",
2948
+ # })
2949
+ #
2950
+ # @example Response structure
2951
+ #
2952
+ # resp.items #=> Array
2953
+ # resp.items[0].arn #=> String
2954
+ # resp.items[0].created_at #=> Time
2955
+ # resp.items[0].created_by #=> String
2956
+ # resp.items[0].id #=> String
2957
+ # resp.items[0].resource_configuration_arn #=> String
2958
+ # resp.items[0].resource_configuration_id #=> String
2959
+ # resp.items[0].resource_configuration_name #=> String
2960
+ # resp.items[0].vpc_endpoint_id #=> String
2961
+ # resp.items[0].vpc_endpoint_owner #=> String
2962
+ # resp.next_token #=> String
2963
+ #
2964
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListResourceEndpointAssociations AWS API Documentation
2965
+ #
2966
+ # @overload list_resource_endpoint_associations(params = {})
2967
+ # @param [Hash] params ({})
2968
+ def list_resource_endpoint_associations(params = {}, options = {})
2969
+ req = build_request(:list_resource_endpoint_associations, params)
2970
+ req.send_request(options)
2971
+ end
2972
+
2973
+ # Lists the resource gateways that you own or that were shared with you.
2974
+ #
2975
+ # @option params [Integer] :max_results
2976
+ # The maximum page size.
2977
+ #
2978
+ # @option params [String] :next_token
2979
+ # If there are additional results, a pagination token for the next page
2980
+ # of results.
2981
+ #
2982
+ # @return [Types::ListResourceGatewaysResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2983
+ #
2984
+ # * {Types::ListResourceGatewaysResponse#items #items} => Array&lt;Types::ResourceGatewaySummary&gt;
2985
+ # * {Types::ListResourceGatewaysResponse#next_token #next_token} => String
2986
+ #
2987
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2988
+ #
2989
+ # @example Request syntax with placeholder values
2990
+ #
2991
+ # resp = client.list_resource_gateways({
2992
+ # max_results: 1,
2993
+ # next_token: "NextToken",
2994
+ # })
2995
+ #
2996
+ # @example Response structure
2997
+ #
2998
+ # resp.items #=> Array
2999
+ # resp.items[0].arn #=> String
3000
+ # resp.items[0].created_at #=> Time
3001
+ # resp.items[0].id #=> String
3002
+ # resp.items[0].ip_address_type #=> String, one of "IPV4", "IPV6", "DUALSTACK"
3003
+ # resp.items[0].last_updated_at #=> Time
3004
+ # resp.items[0].name #=> String
3005
+ # resp.items[0].security_group_ids #=> Array
3006
+ # resp.items[0].security_group_ids[0] #=> String
3007
+ # resp.items[0].status #=> String, one of "ACTIVE", "CREATE_IN_PROGRESS", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
3008
+ # resp.items[0].subnet_ids #=> Array
3009
+ # resp.items[0].subnet_ids[0] #=> String
3010
+ # resp.items[0].vpc_identifier #=> String
3011
+ # resp.next_token #=> String
3012
+ #
3013
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListResourceGateways AWS API Documentation
3014
+ #
3015
+ # @overload list_resource_gateways(params = {})
3016
+ # @param [Hash] params ({})
3017
+ def list_resource_gateways(params = {}, options = {})
3018
+ req = build_request(:list_resource_gateways, params)
3019
+ req.send_request(options)
3020
+ end
3021
+
3022
+ # Lists the rules for the specified listener.
2270
3023
  #
2271
3024
  # @option params [required, String] :listener_identifier
2272
- # The ID or Amazon Resource Name (ARN) of the listener.
3025
+ # The ID or ARN of the listener.
2273
3026
  #
2274
3027
  # @option params [Integer] :max_results
2275
3028
  # The maximum number of results to return.
@@ -2278,7 +3031,7 @@ module Aws::VPCLattice
2278
3031
  # A pagination token for the next page of results.
2279
3032
  #
2280
3033
  # @option params [required, String] :service_identifier
2281
- # The ID or Amazon Resource Name (ARN) of the service.
3034
+ # The ID or ARN of the service.
2282
3035
  #
2283
3036
  # @return [Types::ListRulesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2284
3037
  #
@@ -2317,17 +3070,79 @@ module Aws::VPCLattice
2317
3070
  req.send_request(options)
2318
3071
  end
2319
3072
 
2320
- # Lists the associations between the service network and the service.
2321
- # You can filter the list either by service or service network. You must
3073
+ # Lists the associations between a service network and a resource
3074
+ # configuration.
3075
+ #
3076
+ # @option params [Integer] :max_results
3077
+ # The maximum page size.
3078
+ #
3079
+ # @option params [String] :next_token
3080
+ # If there are additional results, a pagination token for the next page
3081
+ # of results.
3082
+ #
3083
+ # @option params [String] :resource_configuration_identifier
3084
+ # The ID of the resource configurationk.
3085
+ #
3086
+ # @option params [String] :service_network_identifier
3087
+ # The ID of the service network.
3088
+ #
3089
+ # @return [Types::ListServiceNetworkResourceAssociationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3090
+ #
3091
+ # * {Types::ListServiceNetworkResourceAssociationsResponse#items #items} => Array&lt;Types::ServiceNetworkResourceAssociationSummary&gt;
3092
+ # * {Types::ListServiceNetworkResourceAssociationsResponse#next_token #next_token} => String
3093
+ #
3094
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3095
+ #
3096
+ # @example Request syntax with placeholder values
3097
+ #
3098
+ # resp = client.list_service_network_resource_associations({
3099
+ # max_results: 1,
3100
+ # next_token: "NextToken",
3101
+ # resource_configuration_identifier: "ResourceConfigurationIdentifier",
3102
+ # service_network_identifier: "ServiceNetworkIdentifier",
3103
+ # })
3104
+ #
3105
+ # @example Response structure
3106
+ #
3107
+ # resp.items #=> Array
3108
+ # resp.items[0].arn #=> String
3109
+ # resp.items[0].created_at #=> Time
3110
+ # resp.items[0].created_by #=> String
3111
+ # resp.items[0].dns_entry.domain_name #=> String
3112
+ # resp.items[0].dns_entry.hosted_zone_id #=> String
3113
+ # resp.items[0].failure_code #=> String
3114
+ # resp.items[0].id #=> String
3115
+ # resp.items[0].is_managed_association #=> Boolean
3116
+ # resp.items[0].private_dns_entry.domain_name #=> String
3117
+ # resp.items[0].private_dns_entry.hosted_zone_id #=> String
3118
+ # resp.items[0].resource_configuration_arn #=> String
3119
+ # resp.items[0].resource_configuration_id #=> String
3120
+ # resp.items[0].resource_configuration_name #=> String
3121
+ # resp.items[0].service_network_arn #=> String
3122
+ # resp.items[0].service_network_id #=> String
3123
+ # resp.items[0].service_network_name #=> String
3124
+ # resp.items[0].status #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "PARTIAL", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED"
3125
+ # resp.next_token #=> String
3126
+ #
3127
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListServiceNetworkResourceAssociations AWS API Documentation
3128
+ #
3129
+ # @overload list_service_network_resource_associations(params = {})
3130
+ # @param [Hash] params ({})
3131
+ def list_service_network_resource_associations(params = {}, options = {})
3132
+ req = build_request(:list_service_network_resource_associations, params)
3133
+ req.send_request(options)
3134
+ end
3135
+
3136
+ # Lists the associations between a service network and a service. You
3137
+ # can filter the list either by service or service network. You must
2322
3138
  # provide either the service network identifier or the service
2323
3139
  # identifier.
2324
3140
  #
2325
- # Every association in Amazon VPC Lattice is given a unique Amazon
2326
- # Resource Name (ARN), such as when a service network is associated with
2327
- # a VPC or when a service is associated with a service network. If the
2328
- # association is for a resource that is shared with another account, the
2329
- # association includes the local account ID as the prefix in the ARN for
2330
- # each account the resource is shared with.
3141
+ # Every association in Amazon VPC Lattice has a unique Amazon Resource
3142
+ # Name (ARN), such as when a service network is associated with a VPC or
3143
+ # when a service is associated with a service network. If the
3144
+ # association is for a resource is shared with another account, the
3145
+ # association includes the local account ID as the prefix in the ARN.
2331
3146
  #
2332
3147
  # @option params [Integer] :max_results
2333
3148
  # The maximum number of results to return.
@@ -2336,10 +3151,10 @@ module Aws::VPCLattice
2336
3151
  # A pagination token for the next page of results.
2337
3152
  #
2338
3153
  # @option params [String] :service_identifier
2339
- # The ID or Amazon Resource Name (ARN) of the service.
3154
+ # The ID or ARN of the service.
2340
3155
  #
2341
3156
  # @option params [String] :service_network_identifier
2342
- # The ID or Amazon Resource Name (ARN) of the service network.
3157
+ # The ID or ARN of the service network.
2343
3158
  #
2344
3159
  # @return [Types::ListServiceNetworkServiceAssociationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2345
3160
  #
@@ -2385,9 +3200,9 @@ module Aws::VPCLattice
2385
3200
  req.send_request(options)
2386
3201
  end
2387
3202
 
2388
- # Lists the service network and VPC associations. You can filter the
2389
- # list either by VPC or service network. You must provide either the
2390
- # service network identifier or the VPC identifier.
3203
+ # Lists the associations between a service network and a VPC. You can
3204
+ # filter the list either by VPC or service network. You must provide
3205
+ # either the ID of the service network identifier or the ID of the VPC.
2391
3206
  #
2392
3207
  # @option params [Integer] :max_results
2393
3208
  # The maximum number of results to return.
@@ -2396,10 +3211,10 @@ module Aws::VPCLattice
2396
3211
  # A pagination token for the next page of results.
2397
3212
  #
2398
3213
  # @option params [String] :service_network_identifier
2399
- # The ID or Amazon Resource Name (ARN) of the service network.
3214
+ # The ID or ARN of the service network.
2400
3215
  #
2401
3216
  # @option params [String] :vpc_identifier
2402
- # The ID or Amazon Resource Name (ARN) of the VPC.
3217
+ # The ID or ARN of the VPC.
2403
3218
  #
2404
3219
  # @return [Types::ListServiceNetworkVpcAssociationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2405
3220
  #
@@ -2441,9 +3256,56 @@ module Aws::VPCLattice
2441
3256
  req.send_request(options)
2442
3257
  end
2443
3258
 
2444
- # Lists the service networks owned by the caller account or shared with
2445
- # the caller account. Also includes the account ID in the ARN to show
2446
- # which account owns the service network.
3259
+ # Lists the associations between a service network and a VPC endpoint.
3260
+ #
3261
+ # @option params [Integer] :max_results
3262
+ # The maximum page size.
3263
+ #
3264
+ # @option params [String] :next_token
3265
+ # If there are additional results, a pagination token for the next page
3266
+ # of results.
3267
+ #
3268
+ # @option params [required, String] :service_network_identifier
3269
+ # The ID of the service network associated with the VPC endpoint.
3270
+ #
3271
+ # @return [Types::ListServiceNetworkVpcEndpointAssociationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3272
+ #
3273
+ # * {Types::ListServiceNetworkVpcEndpointAssociationsResponse#items #items} => Array&lt;Types::ServiceNetworkEndpointAssociation&gt;
3274
+ # * {Types::ListServiceNetworkVpcEndpointAssociationsResponse#next_token #next_token} => String
3275
+ #
3276
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3277
+ #
3278
+ # @example Request syntax with placeholder values
3279
+ #
3280
+ # resp = client.list_service_network_vpc_endpoint_associations({
3281
+ # max_results: 1,
3282
+ # next_token: "NextToken",
3283
+ # service_network_identifier: "ServiceNetworkIdentifier", # required
3284
+ # })
3285
+ #
3286
+ # @example Response structure
3287
+ #
3288
+ # resp.items #=> Array
3289
+ # resp.items[0].created_at #=> Time
3290
+ # resp.items[0].id #=> String
3291
+ # resp.items[0].service_network_arn #=> String
3292
+ # resp.items[0].state #=> String
3293
+ # resp.items[0].vpc_endpoint_id #=> String
3294
+ # resp.items[0].vpc_endpoint_owner_id #=> String
3295
+ # resp.items[0].vpc_id #=> String
3296
+ # resp.next_token #=> String
3297
+ #
3298
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/ListServiceNetworkVpcEndpointAssociations AWS API Documentation
3299
+ #
3300
+ # @overload list_service_network_vpc_endpoint_associations(params = {})
3301
+ # @param [Hash] params ({})
3302
+ def list_service_network_vpc_endpoint_associations(params = {}, options = {})
3303
+ req = build_request(:list_service_network_vpc_endpoint_associations, params)
3304
+ req.send_request(options)
3305
+ end
3306
+
3307
+ # Lists the service networks owned by or shared with this account. The
3308
+ # account ID in the ARN shows which account owns the service network.
2447
3309
  #
2448
3310
  # @option params [Integer] :max_results
2449
3311
  # The maximum number of results to return.
@@ -2473,6 +3335,7 @@ module Aws::VPCLattice
2473
3335
  # resp.items[0].id #=> String
2474
3336
  # resp.items[0].last_updated_at #=> Time
2475
3337
  # resp.items[0].name #=> String
3338
+ # resp.items[0].number_of_associated_resource_configurations #=> Integer
2476
3339
  # resp.items[0].number_of_associated_services #=> Integer
2477
3340
  # resp.items[0].number_of_associated_vp_cs #=> Integer
2478
3341
  # resp.next_token #=> String
@@ -2574,7 +3437,7 @@ module Aws::VPCLattice
2574
3437
  # The target group type.
2575
3438
  #
2576
3439
  # @option params [String] :vpc_identifier
2577
- # The ID or Amazon Resource Name (ARN) of the VPC.
3440
+ # The ID or ARN of the VPC.
2578
3441
  #
2579
3442
  # @return [Types::ListTargetGroupsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2580
3443
  #
@@ -2631,7 +3494,7 @@ module Aws::VPCLattice
2631
3494
  # A pagination token for the next page of results.
2632
3495
  #
2633
3496
  # @option params [required, String] :target_group_identifier
2634
- # The ID or Amazon Resource Name (ARN) of the target group.
3497
+ # The ID or ARN of the target group.
2635
3498
  #
2636
3499
  # @option params [Array<Types::Target>] :targets
2637
3500
  # The targets.
@@ -2690,8 +3553,8 @@ module Aws::VPCLattice
2690
3553
  # or blank lines.
2691
3554
  #
2692
3555
  # @option params [required, String] :resource_identifier
2693
- # The ID or Amazon Resource Name (ARN) of the service network or service
2694
- # for which the policy is created.
3556
+ # The ID or ARN of the service network or service for which the policy
3557
+ # is created.
2695
3558
  #
2696
3559
  # @return [Types::PutAuthPolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2697
3560
  #
@@ -2729,8 +3592,8 @@ module Aws::VPCLattice
2729
3592
  # blank lines.
2730
3593
  #
2731
3594
  # @option params [required, String] :resource_arn
2732
- # The ID or Amazon Resource Name (ARN) of the service network or service
2733
- # for which the policy is created.
3595
+ # The ID or ARN of the service network or service for which the policy
3596
+ # is created.
2734
3597
  #
2735
3598
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2736
3599
  #
@@ -2754,7 +3617,7 @@ module Aws::VPCLattice
2754
3617
  # you can only have one target in a target group.
2755
3618
  #
2756
3619
  # @option params [required, String] :target_group_identifier
2757
- # The ID or Amazon Resource Name (ARN) of the target group.
3620
+ # The ID or ARN of the target group.
2758
3621
  #
2759
3622
  # @option params [required, Array<Types::Target>] :targets
2760
3623
  # The targets.
@@ -2853,7 +3716,7 @@ module Aws::VPCLattice
2853
3716
  # Updates the specified access log subscription.
2854
3717
  #
2855
3718
  # @option params [required, String] :access_log_subscription_identifier
2856
- # The ID or Amazon Resource Name (ARN) of the access log subscription.
3719
+ # The ID or ARN of the access log subscription.
2857
3720
  #
2858
3721
  # @option params [required, String] :destination_arn
2859
3722
  # The Amazon Resource Name (ARN) of the access log destination.
@@ -2896,10 +3759,10 @@ module Aws::VPCLattice
2896
3759
  # The action for the default rule.
2897
3760
  #
2898
3761
  # @option params [required, String] :listener_identifier
2899
- # The ID or Amazon Resource Name (ARN) of the listener.
3762
+ # The ID or ARN of the listener.
2900
3763
  #
2901
3764
  # @option params [required, String] :service_identifier
2902
- # The ID or Amazon Resource Name (ARN) of the service.
3765
+ # The ID or ARN of the service.
2903
3766
  #
2904
3767
  # @return [Types::UpdateListenerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2905
3768
  #
@@ -2955,14 +3818,141 @@ module Aws::VPCLattice
2955
3818
  req.send_request(options)
2956
3819
  end
2957
3820
 
2958
- # Updates a rule for the listener. You can't modify a default listener
2959
- # rule. To modify a default listener rule, use `UpdateListener`.
3821
+ # Updates the specified resource configuration.
3822
+ #
3823
+ # @option params [Boolean] :allow_association_to_shareable_service_network
3824
+ # Indicates whether to add the resource configuration to service
3825
+ # networks that are shared with other accounts.
3826
+ #
3827
+ # @option params [Array<String>] :port_ranges
3828
+ # The TCP port ranges that a consumer can use to access a resource
3829
+ # configuration. You can separate port ranges with a comma. Example:
3830
+ # 1-65535 or 1,2,22-30
3831
+ #
3832
+ # @option params [Types::ResourceConfigurationDefinition] :resource_configuration_definition
3833
+ # The resource configuration.
3834
+ #
3835
+ # @option params [required, String] :resource_configuration_identifier
3836
+ # The ID of the resource configuration.
3837
+ #
3838
+ # @return [Types::UpdateResourceConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3839
+ #
3840
+ # * {Types::UpdateResourceConfigurationResponse#allow_association_to_shareable_service_network #allow_association_to_shareable_service_network} => Boolean
3841
+ # * {Types::UpdateResourceConfigurationResponse#arn #arn} => String
3842
+ # * {Types::UpdateResourceConfigurationResponse#id #id} => String
3843
+ # * {Types::UpdateResourceConfigurationResponse#name #name} => String
3844
+ # * {Types::UpdateResourceConfigurationResponse#port_ranges #port_ranges} => Array&lt;String&gt;
3845
+ # * {Types::UpdateResourceConfigurationResponse#protocol #protocol} => String
3846
+ # * {Types::UpdateResourceConfigurationResponse#resource_configuration_definition #resource_configuration_definition} => Types::ResourceConfigurationDefinition
3847
+ # * {Types::UpdateResourceConfigurationResponse#resource_configuration_group_id #resource_configuration_group_id} => String
3848
+ # * {Types::UpdateResourceConfigurationResponse#resource_gateway_id #resource_gateway_id} => String
3849
+ # * {Types::UpdateResourceConfigurationResponse#status #status} => String
3850
+ # * {Types::UpdateResourceConfigurationResponse#type #type} => String
3851
+ #
3852
+ # @example Request syntax with placeholder values
3853
+ #
3854
+ # resp = client.update_resource_configuration({
3855
+ # allow_association_to_shareable_service_network: false,
3856
+ # port_ranges: ["PortRange"],
3857
+ # resource_configuration_definition: {
3858
+ # arn_resource: {
3859
+ # arn: "WildcardArn",
3860
+ # },
3861
+ # dns_resource: {
3862
+ # domain_name: "DomainName",
3863
+ # ip_address_type: "IPV4", # accepts IPV4, IPV6, DUALSTACK
3864
+ # },
3865
+ # ip_resource: {
3866
+ # ip_address: "IpAddress",
3867
+ # },
3868
+ # },
3869
+ # resource_configuration_identifier: "ResourceConfigurationIdentifier", # required
3870
+ # })
3871
+ #
3872
+ # @example Response structure
3873
+ #
3874
+ # resp.allow_association_to_shareable_service_network #=> Boolean
3875
+ # resp.arn #=> String
3876
+ # resp.id #=> String
3877
+ # resp.name #=> String
3878
+ # resp.port_ranges #=> Array
3879
+ # resp.port_ranges[0] #=> String
3880
+ # resp.protocol #=> String, one of "TCP"
3881
+ # resp.resource_configuration_definition.arn_resource.arn #=> String
3882
+ # resp.resource_configuration_definition.dns_resource.domain_name #=> String
3883
+ # resp.resource_configuration_definition.dns_resource.ip_address_type #=> String, one of "IPV4", "IPV6", "DUALSTACK"
3884
+ # resp.resource_configuration_definition.ip_resource.ip_address #=> String
3885
+ # resp.resource_configuration_group_id #=> String
3886
+ # resp.resource_gateway_id #=> String
3887
+ # resp.status #=> String, one of "ACTIVE", "CREATE_IN_PROGRESS", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
3888
+ # resp.type #=> String, one of "GROUP", "CHILD", "SINGLE", "ARN"
3889
+ #
3890
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/UpdateResourceConfiguration AWS API Documentation
3891
+ #
3892
+ # @overload update_resource_configuration(params = {})
3893
+ # @param [Hash] params ({})
3894
+ def update_resource_configuration(params = {}, options = {})
3895
+ req = build_request(:update_resource_configuration, params)
3896
+ req.send_request(options)
3897
+ end
3898
+
3899
+ # Updates the specified resource gateway.
3900
+ #
3901
+ # @option params [required, String] :resource_gateway_identifier
3902
+ # The ID or ARN of the resource gateway.
3903
+ #
3904
+ # @option params [Array<String>] :security_group_ids
3905
+ # The IDs of the security groups associated with the resource gateway.
3906
+ #
3907
+ # @return [Types::UpdateResourceGatewayResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3908
+ #
3909
+ # * {Types::UpdateResourceGatewayResponse#arn #arn} => String
3910
+ # * {Types::UpdateResourceGatewayResponse#id #id} => String
3911
+ # * {Types::UpdateResourceGatewayResponse#ip_address_type #ip_address_type} => String
3912
+ # * {Types::UpdateResourceGatewayResponse#name #name} => String
3913
+ # * {Types::UpdateResourceGatewayResponse#security_group_ids #security_group_ids} => Array&lt;String&gt;
3914
+ # * {Types::UpdateResourceGatewayResponse#status #status} => String
3915
+ # * {Types::UpdateResourceGatewayResponse#subnet_ids #subnet_ids} => Array&lt;String&gt;
3916
+ # * {Types::UpdateResourceGatewayResponse#vpc_id #vpc_id} => String
3917
+ #
3918
+ # @example Request syntax with placeholder values
3919
+ #
3920
+ # resp = client.update_resource_gateway({
3921
+ # resource_gateway_identifier: "ResourceGatewayIdentifier", # required
3922
+ # security_group_ids: ["SecurityGroupId"],
3923
+ # })
3924
+ #
3925
+ # @example Response structure
3926
+ #
3927
+ # resp.arn #=> String
3928
+ # resp.id #=> String
3929
+ # resp.ip_address_type #=> String, one of "IPV4", "IPV6"
3930
+ # resp.name #=> String
3931
+ # resp.security_group_ids #=> Array
3932
+ # resp.security_group_ids[0] #=> String
3933
+ # resp.status #=> String, one of "ACTIVE", "CREATE_IN_PROGRESS", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
3934
+ # resp.subnet_ids #=> Array
3935
+ # resp.subnet_ids[0] #=> String
3936
+ # resp.vpc_id #=> String
3937
+ #
3938
+ # @see http://docs.aws.amazon.com/goto/WebAPI/vpc-lattice-2022-11-30/UpdateResourceGateway AWS API Documentation
3939
+ #
3940
+ # @overload update_resource_gateway(params = {})
3941
+ # @param [Hash] params ({})
3942
+ def update_resource_gateway(params = {}, options = {})
3943
+ req = build_request(:update_resource_gateway, params)
3944
+ req.send_request(options)
3945
+ end
3946
+
3947
+ # Updates a specified rule for the listener. You can't modify a default
3948
+ # listener rule. To modify a default listener rule, use
3949
+ # `UpdateListener`.
2960
3950
  #
2961
3951
  # @option params [Types::RuleAction] :action
2962
3952
  # Information about the action for the specified listener rule.
2963
3953
  #
2964
3954
  # @option params [required, String] :listener_identifier
2965
- # The ID or Amazon Resource Name (ARN) of the listener.
3955
+ # The ID or ARN of the listener.
2966
3956
  #
2967
3957
  # @option params [Types::RuleMatch] :match
2968
3958
  # The rule match.
@@ -2972,10 +3962,10 @@ module Aws::VPCLattice
2972
3962
  # priority.
2973
3963
  #
2974
3964
  # @option params [required, String] :rule_identifier
2975
- # The ID or Amazon Resource Name (ARN) of the rule.
3965
+ # The ID or ARN of the rule.
2976
3966
  #
2977
3967
  # @option params [required, String] :service_identifier
2978
- # The ID or Amazon Resource Name (ARN) of the service.
3968
+ # The ID or ARN of the service.
2979
3969
  #
2980
3970
  # @return [Types::UpdateRuleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2981
3971
  #
@@ -3078,7 +4068,7 @@ module Aws::VPCLattice
3078
4068
  # The Amazon Resource Name (ARN) of the certificate.
3079
4069
  #
3080
4070
  # @option params [required, String] :service_identifier
3081
- # The ID or Amazon Resource Name (ARN) of the service.
4071
+ # The ID or ARN of the service.
3082
4072
  #
3083
4073
  # @return [Types::UpdateServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3084
4074
  #
@@ -3127,7 +4117,7 @@ module Aws::VPCLattice
3127
4117
  # auth is enabled and an auth policy is required.
3128
4118
  #
3129
4119
  # @option params [required, String] :service_network_identifier
3130
- # The ID or Amazon Resource Name (ARN) of the service network.
4120
+ # The ID or ARN of the service network.
3131
4121
  #
3132
4122
  # @return [Types::UpdateServiceNetworkResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3133
4123
  #
@@ -3161,16 +4151,16 @@ module Aws::VPCLattice
3161
4151
 
3162
4152
  # Updates the service network and VPC association. If you add a security
3163
4153
  # group to the service network and VPC association, the association must
3164
- # continue to always have at least one security group. You can add or
3165
- # edit security groups at any time. However, to remove all security
3166
- # groups, you must first delete the association and recreate it without
4154
+ # continue to have at least one security group. You can add or edit
4155
+ # security groups at any time. However, to remove all security groups,
4156
+ # you must first delete the association and then recreate it without
3167
4157
  # security groups.
3168
4158
  #
3169
4159
  # @option params [required, Array<String>] :security_group_ids
3170
4160
  # The IDs of the security groups.
3171
4161
  #
3172
4162
  # @option params [required, String] :service_network_vpc_association_identifier
3173
- # The ID or Amazon Resource Name (ARN) of the association.
4163
+ # The ID or ARN of the association.
3174
4164
  #
3175
4165
  # @return [Types::UpdateServiceNetworkVpcAssociationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3176
4166
  #
@@ -3211,7 +4201,7 @@ module Aws::VPCLattice
3211
4201
  # The health check configuration.
3212
4202
  #
3213
4203
  # @option params [required, String] :target_group_identifier
3214
- # The ID or Amazon Resource Name (ARN) of the target group.
4204
+ # The ID or ARN of the target group.
3215
4205
  #
3216
4206
  # @return [Types::UpdateTargetGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3217
4207
  #
@@ -3293,7 +4283,7 @@ module Aws::VPCLattice
3293
4283
  tracer: tracer
3294
4284
  )
3295
4285
  context[:gem_name] = 'aws-sdk-vpclattice'
3296
- context[:gem_version] = '1.23.0'
4286
+ context[:gem_version] = '1.25.0'
3297
4287
  Seahorse::Client::Request.new(handlers, context)
3298
4288
  end
3299
4289