aws-sdk-ec2 1.550.0 → 1.552.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.
@@ -498,6 +498,8 @@ module Aws::EC2
498
498
  CreateFpgaImageResult = Shapes::StructureShape.new(name: 'CreateFpgaImageResult')
499
499
  CreateImageRequest = Shapes::StructureShape.new(name: 'CreateImageRequest')
500
500
  CreateImageResult = Shapes::StructureShape.new(name: 'CreateImageResult')
501
+ CreateImageUsageReportRequest = Shapes::StructureShape.new(name: 'CreateImageUsageReportRequest')
502
+ CreateImageUsageReportResult = Shapes::StructureShape.new(name: 'CreateImageUsageReportResult')
501
503
  CreateInstanceConnectEndpointRequest = Shapes::StructureShape.new(name: 'CreateInstanceConnectEndpointRequest')
502
504
  CreateInstanceConnectEndpointResult = Shapes::StructureShape.new(name: 'CreateInstanceConnectEndpointResult')
503
505
  CreateInstanceEventWindowRequest = Shapes::StructureShape.new(name: 'CreateInstanceEventWindowRequest')
@@ -714,6 +716,8 @@ module Aws::EC2
714
716
  DeleteFlowLogsResult = Shapes::StructureShape.new(name: 'DeleteFlowLogsResult')
715
717
  DeleteFpgaImageRequest = Shapes::StructureShape.new(name: 'DeleteFpgaImageRequest')
716
718
  DeleteFpgaImageResult = Shapes::StructureShape.new(name: 'DeleteFpgaImageResult')
719
+ DeleteImageUsageReportRequest = Shapes::StructureShape.new(name: 'DeleteImageUsageReportRequest')
720
+ DeleteImageUsageReportResult = Shapes::StructureShape.new(name: 'DeleteImageUsageReportResult')
717
721
  DeleteInstanceConnectEndpointRequest = Shapes::StructureShape.new(name: 'DeleteInstanceConnectEndpointRequest')
718
722
  DeleteInstanceConnectEndpointResult = Shapes::StructureShape.new(name: 'DeleteInstanceConnectEndpointResult')
719
723
  DeleteInstanceEventWindowRequest = Shapes::StructureShape.new(name: 'DeleteInstanceEventWindowRequest')
@@ -994,6 +998,17 @@ module Aws::EC2
994
998
  DescribeIdentityIdFormatRequest = Shapes::StructureShape.new(name: 'DescribeIdentityIdFormatRequest')
995
999
  DescribeIdentityIdFormatResult = Shapes::StructureShape.new(name: 'DescribeIdentityIdFormatResult')
996
1000
  DescribeImageAttributeRequest = Shapes::StructureShape.new(name: 'DescribeImageAttributeRequest')
1001
+ DescribeImageReferencesImageIdStringList = Shapes::ListShape.new(name: 'DescribeImageReferencesImageIdStringList')
1002
+ DescribeImageReferencesMaxResults = Shapes::IntegerShape.new(name: 'DescribeImageReferencesMaxResults')
1003
+ DescribeImageReferencesRequest = Shapes::StructureShape.new(name: 'DescribeImageReferencesRequest')
1004
+ DescribeImageReferencesResult = Shapes::StructureShape.new(name: 'DescribeImageReferencesResult')
1005
+ DescribeImageUsageReportEntriesMaxResults = Shapes::IntegerShape.new(name: 'DescribeImageUsageReportEntriesMaxResults')
1006
+ DescribeImageUsageReportEntriesRequest = Shapes::StructureShape.new(name: 'DescribeImageUsageReportEntriesRequest')
1007
+ DescribeImageUsageReportEntriesResult = Shapes::StructureShape.new(name: 'DescribeImageUsageReportEntriesResult')
1008
+ DescribeImageUsageReportsImageIdStringList = Shapes::ListShape.new(name: 'DescribeImageUsageReportsImageIdStringList')
1009
+ DescribeImageUsageReportsMaxResults = Shapes::IntegerShape.new(name: 'DescribeImageUsageReportsMaxResults')
1010
+ DescribeImageUsageReportsRequest = Shapes::StructureShape.new(name: 'DescribeImageUsageReportsRequest')
1011
+ DescribeImageUsageReportsResult = Shapes::StructureShape.new(name: 'DescribeImageUsageReportsResult')
997
1012
  DescribeImagesRequest = Shapes::StructureShape.new(name: 'DescribeImagesRequest')
998
1013
  DescribeImagesResult = Shapes::StructureShape.new(name: 'DescribeImagesResult')
999
1014
  DescribeImportImageTasksRequest = Shapes::StructureShape.new(name: 'DescribeImportImageTasksRequest')
@@ -1501,6 +1516,7 @@ module Aws::EC2
1501
1516
  EnclaveOptionsRequest = Shapes::StructureShape.new(name: 'EnclaveOptionsRequest')
1502
1517
  EncryptionInTransitSupported = Shapes::BooleanShape.new(name: 'EncryptionInTransitSupported')
1503
1518
  EndDateType = Shapes::StringShape.new(name: 'EndDateType')
1519
+ EndpointIpAddressType = Shapes::StringShape.new(name: 'EndpointIpAddressType')
1504
1520
  EndpointSet = Shapes::ListShape.new(name: 'EndpointSet')
1505
1521
  EphemeralNvmeSupport = Shapes::StringShape.new(name: 'EphemeralNvmeSupport')
1506
1522
  ErrorSet = Shapes::ListShape.new(name: 'ErrorSet')
@@ -1814,8 +1830,32 @@ module Aws::EC2
1814
1830
  ImageProviderRequestList = Shapes::ListShape.new(name: 'ImageProviderRequestList')
1815
1831
  ImageRecycleBinInfo = Shapes::StructureShape.new(name: 'ImageRecycleBinInfo')
1816
1832
  ImageRecycleBinInfoList = Shapes::ListShape.new(name: 'ImageRecycleBinInfoList')
1833
+ ImageReference = Shapes::StructureShape.new(name: 'ImageReference')
1834
+ ImageReferenceList = Shapes::ListShape.new(name: 'ImageReferenceList')
1835
+ ImageReferenceOptionName = Shapes::StringShape.new(name: 'ImageReferenceOptionName')
1836
+ ImageReferenceResourceType = Shapes::StringShape.new(name: 'ImageReferenceResourceType')
1817
1837
  ImageState = Shapes::StringShape.new(name: 'ImageState')
1818
1838
  ImageTypeValues = Shapes::StringShape.new(name: 'ImageTypeValues')
1839
+ ImageUsageReport = Shapes::StructureShape.new(name: 'ImageUsageReport')
1840
+ ImageUsageReportEntry = Shapes::StructureShape.new(name: 'ImageUsageReportEntry')
1841
+ ImageUsageReportEntryList = Shapes::ListShape.new(name: 'ImageUsageReportEntryList')
1842
+ ImageUsageReportId = Shapes::StringShape.new(name: 'ImageUsageReportId')
1843
+ ImageUsageReportIdStringList = Shapes::ListShape.new(name: 'ImageUsageReportIdStringList')
1844
+ ImageUsageReportList = Shapes::ListShape.new(name: 'ImageUsageReportList')
1845
+ ImageUsageReportState = Shapes::StringShape.new(name: 'ImageUsageReportState')
1846
+ ImageUsageReportStateReason = Shapes::StringShape.new(name: 'ImageUsageReportStateReason')
1847
+ ImageUsageReportUserIdStringList = Shapes::ListShape.new(name: 'ImageUsageReportUserIdStringList')
1848
+ ImageUsageResourceType = Shapes::StructureShape.new(name: 'ImageUsageResourceType')
1849
+ ImageUsageResourceTypeList = Shapes::ListShape.new(name: 'ImageUsageResourceTypeList')
1850
+ ImageUsageResourceTypeName = Shapes::StringShape.new(name: 'ImageUsageResourceTypeName')
1851
+ ImageUsageResourceTypeOption = Shapes::StructureShape.new(name: 'ImageUsageResourceTypeOption')
1852
+ ImageUsageResourceTypeOptionList = Shapes::ListShape.new(name: 'ImageUsageResourceTypeOptionList')
1853
+ ImageUsageResourceTypeOptionRequest = Shapes::StructureShape.new(name: 'ImageUsageResourceTypeOptionRequest')
1854
+ ImageUsageResourceTypeOptionRequestList = Shapes::ListShape.new(name: 'ImageUsageResourceTypeOptionRequestList')
1855
+ ImageUsageResourceTypeOptionValue = Shapes::StringShape.new(name: 'ImageUsageResourceTypeOptionValue')
1856
+ ImageUsageResourceTypeOptionValuesList = Shapes::ListShape.new(name: 'ImageUsageResourceTypeOptionValuesList')
1857
+ ImageUsageResourceTypeRequest = Shapes::StructureShape.new(name: 'ImageUsageResourceTypeRequest')
1858
+ ImageUsageResourceTypeRequestList = Shapes::ListShape.new(name: 'ImageUsageResourceTypeRequestList')
1819
1859
  ImdsSupportValues = Shapes::StringShape.new(name: 'ImdsSupportValues')
1820
1860
  ImportClientVpnClientCertificateRevocationListRequest = Shapes::StructureShape.new(name: 'ImportClientVpnClientCertificateRevocationListRequest')
1821
1861
  ImportClientVpnClientCertificateRevocationListResult = Shapes::StructureShape.new(name: 'ImportClientVpnClientCertificateRevocationListResult')
@@ -2889,6 +2929,12 @@ module Aws::EC2
2889
2929
  ResourceStatement = Shapes::StructureShape.new(name: 'ResourceStatement')
2890
2930
  ResourceStatementRequest = Shapes::StructureShape.new(name: 'ResourceStatementRequest')
2891
2931
  ResourceType = Shapes::StringShape.new(name: 'ResourceType')
2932
+ ResourceTypeOption = Shapes::StructureShape.new(name: 'ResourceTypeOption')
2933
+ ResourceTypeOptionList = Shapes::ListShape.new(name: 'ResourceTypeOptionList')
2934
+ ResourceTypeOptionValue = Shapes::StringShape.new(name: 'ResourceTypeOptionValue')
2935
+ ResourceTypeOptionValuesList = Shapes::ListShape.new(name: 'ResourceTypeOptionValuesList')
2936
+ ResourceTypeRequest = Shapes::StructureShape.new(name: 'ResourceTypeRequest')
2937
+ ResourceTypeRequestList = Shapes::ListShape.new(name: 'ResourceTypeRequestList')
2892
2938
  ResponseError = Shapes::StructureShape.new(name: 'ResponseError')
2893
2939
  ResponseHostIdList = Shapes::ListShape.new(name: 'ResponseHostIdList')
2894
2940
  ResponseHostIdSet = Shapes::ListShape.new(name: 'ResponseHostIdSet')
@@ -3227,6 +3273,7 @@ module Aws::EC2
3227
3273
  TotalNeuronMemory = Shapes::IntegerShape.new(name: 'TotalNeuronMemory')
3228
3274
  TpmSupportValues = Shapes::StringShape.new(name: 'TpmSupportValues')
3229
3275
  TrafficDirection = Shapes::StringShape.new(name: 'TrafficDirection')
3276
+ TrafficIpAddressType = Shapes::StringShape.new(name: 'TrafficIpAddressType')
3230
3277
  TrafficMirrorFilter = Shapes::StructureShape.new(name: 'TrafficMirrorFilter')
3231
3278
  TrafficMirrorFilterId = Shapes::StringShape.new(name: 'TrafficMirrorFilterId')
3232
3279
  TrafficMirrorFilterIdList = Shapes::ListShape.new(name: 'TrafficMirrorFilterIdList')
@@ -3393,6 +3440,7 @@ module Aws::EC2
3393
3440
  UserIdGroupPair = Shapes::StructureShape.new(name: 'UserIdGroupPair')
3394
3441
  UserIdGroupPairList = Shapes::ListShape.new(name: 'UserIdGroupPairList')
3395
3442
  UserIdGroupPairSet = Shapes::ListShape.new(name: 'UserIdGroupPairSet')
3443
+ UserIdList = Shapes::ListShape.new(name: 'UserIdList')
3396
3444
  UserIdStringList = Shapes::ListShape.new(name: 'UserIdStringList')
3397
3445
  UserTrustProviderType = Shapes::StringShape.new(name: 'UserTrustProviderType')
3398
3446
  VCpuCount = Shapes::IntegerShape.new(name: 'VCpuCount')
@@ -4874,6 +4922,7 @@ module Aws::EC2
4874
4922
  ClientVpnConnection.add_member(:ingress_packets, Shapes::ShapeRef.new(shape: String, location_name: "ingressPackets"))
4875
4923
  ClientVpnConnection.add_member(:egress_packets, Shapes::ShapeRef.new(shape: String, location_name: "egressPackets"))
4876
4924
  ClientVpnConnection.add_member(:client_ip, Shapes::ShapeRef.new(shape: String, location_name: "clientIp"))
4925
+ ClientVpnConnection.add_member(:client_ipv_6_address, Shapes::ShapeRef.new(shape: String, location_name: "clientIpv6Address"))
4877
4926
  ClientVpnConnection.add_member(:common_name, Shapes::ShapeRef.new(shape: String, location_name: "commonName"))
4878
4927
  ClientVpnConnection.add_member(:status, Shapes::ShapeRef.new(shape: ClientVpnConnectionStatus, location_name: "status"))
4879
4928
  ClientVpnConnection.add_member(:connection_end_time, Shapes::ShapeRef.new(shape: String, location_name: "connectionEndTime"))
@@ -4911,6 +4960,8 @@ module Aws::EC2
4911
4960
  ClientVpnEndpoint.add_member(:client_login_banner_options, Shapes::ShapeRef.new(shape: ClientLoginBannerResponseOptions, location_name: "clientLoginBannerOptions"))
4912
4961
  ClientVpnEndpoint.add_member(:client_route_enforcement_options, Shapes::ShapeRef.new(shape: ClientRouteEnforcementResponseOptions, location_name: "clientRouteEnforcementOptions"))
4913
4962
  ClientVpnEndpoint.add_member(:disconnect_on_session_timeout, Shapes::ShapeRef.new(shape: Boolean, location_name: "disconnectOnSessionTimeout"))
4963
+ ClientVpnEndpoint.add_member(:endpoint_ip_address_type, Shapes::ShapeRef.new(shape: EndpointIpAddressType, location_name: "endpointIpAddressType"))
4964
+ ClientVpnEndpoint.add_member(:traffic_ip_address_type, Shapes::ShapeRef.new(shape: TrafficIpAddressType, location_name: "trafficIpAddressType"))
4914
4965
  ClientVpnEndpoint.struct_class = Types::ClientVpnEndpoint
4915
4966
 
4916
4967
  ClientVpnEndpointAttributeStatus.add_member(:code, Shapes::ShapeRef.new(shape: ClientVpnEndpointAttributeStatusCode, location_name: "code"))
@@ -5172,7 +5223,7 @@ module Aws::EC2
5172
5223
  CreateCarrierGatewayResult.add_member(:carrier_gateway, Shapes::ShapeRef.new(shape: CarrierGateway, location_name: "carrierGateway"))
5173
5224
  CreateCarrierGatewayResult.struct_class = Types::CreateCarrierGatewayResult
5174
5225
 
5175
- CreateClientVpnEndpointRequest.add_member(:client_cidr_block, Shapes::ShapeRef.new(shape: String, required: true, location_name: "ClientCidrBlock"))
5226
+ CreateClientVpnEndpointRequest.add_member(:client_cidr_block, Shapes::ShapeRef.new(shape: String, location_name: "ClientCidrBlock"))
5176
5227
  CreateClientVpnEndpointRequest.add_member(:server_certificate_arn, Shapes::ShapeRef.new(shape: String, required: true, location_name: "ServerCertificateArn"))
5177
5228
  CreateClientVpnEndpointRequest.add_member(:authentication_options, Shapes::ShapeRef.new(shape: ClientVpnAuthenticationRequestList, required: true, location_name: "Authentication"))
5178
5229
  CreateClientVpnEndpointRequest.add_member(:connection_log_options, Shapes::ShapeRef.new(shape: ConnectionLogOptions, required: true, location_name: "ConnectionLogOptions"))
@@ -5192,6 +5243,8 @@ module Aws::EC2
5192
5243
  CreateClientVpnEndpointRequest.add_member(:client_login_banner_options, Shapes::ShapeRef.new(shape: ClientLoginBannerOptions, location_name: "ClientLoginBannerOptions"))
5193
5244
  CreateClientVpnEndpointRequest.add_member(:client_route_enforcement_options, Shapes::ShapeRef.new(shape: ClientRouteEnforcementOptions, location_name: "ClientRouteEnforcementOptions"))
5194
5245
  CreateClientVpnEndpointRequest.add_member(:disconnect_on_session_timeout, Shapes::ShapeRef.new(shape: Boolean, location_name: "DisconnectOnSessionTimeout"))
5246
+ CreateClientVpnEndpointRequest.add_member(:endpoint_ip_address_type, Shapes::ShapeRef.new(shape: EndpointIpAddressType, location_name: "EndpointIpAddressType"))
5247
+ CreateClientVpnEndpointRequest.add_member(:traffic_ip_address_type, Shapes::ShapeRef.new(shape: TrafficIpAddressType, location_name: "TrafficIpAddressType"))
5195
5248
  CreateClientVpnEndpointRequest.struct_class = Types::CreateClientVpnEndpointRequest
5196
5249
 
5197
5250
  CreateClientVpnEndpointResult.add_member(:client_vpn_endpoint_id, Shapes::ShapeRef.new(shape: String, location_name: "clientVpnEndpointId"))
@@ -5368,6 +5421,17 @@ module Aws::EC2
5368
5421
  CreateImageResult.add_member(:image_id, Shapes::ShapeRef.new(shape: String, location_name: "imageId"))
5369
5422
  CreateImageResult.struct_class = Types::CreateImageResult
5370
5423
 
5424
+ CreateImageUsageReportRequest.add_member(:image_id, Shapes::ShapeRef.new(shape: ImageId, required: true, location_name: "ImageId"))
5425
+ CreateImageUsageReportRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
5426
+ CreateImageUsageReportRequest.add_member(:resource_types, Shapes::ShapeRef.new(shape: ImageUsageResourceTypeRequestList, required: true, location_name: "ResourceType"))
5427
+ CreateImageUsageReportRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: ImageUsageReportUserIdStringList, location_name: "AccountId"))
5428
+ CreateImageUsageReportRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: String, location_name: "ClientToken", metadata: {"idempotencyToken" => true}))
5429
+ CreateImageUsageReportRequest.add_member(:tag_specifications, Shapes::ShapeRef.new(shape: TagSpecificationList, location_name: "TagSpecification"))
5430
+ CreateImageUsageReportRequest.struct_class = Types::CreateImageUsageReportRequest
5431
+
5432
+ CreateImageUsageReportResult.add_member(:report_id, Shapes::ShapeRef.new(shape: ImageUsageReportId, location_name: "reportId"))
5433
+ CreateImageUsageReportResult.struct_class = Types::CreateImageUsageReportResult
5434
+
5371
5435
  CreateInstanceConnectEndpointRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
5372
5436
  CreateInstanceConnectEndpointRequest.add_member(:subnet_id, Shapes::ShapeRef.new(shape: SubnetId, required: true, location_name: "SubnetId"))
5373
5437
  CreateInstanceConnectEndpointRequest.add_member(:security_group_ids, Shapes::ShapeRef.new(shape: SecurityGroupIdStringListRequest, location_name: "SecurityGroupId"))
@@ -6485,6 +6549,13 @@ module Aws::EC2
6485
6549
  DeleteFpgaImageResult.add_member(:return, Shapes::ShapeRef.new(shape: Boolean, location_name: "return"))
6486
6550
  DeleteFpgaImageResult.struct_class = Types::DeleteFpgaImageResult
6487
6551
 
6552
+ DeleteImageUsageReportRequest.add_member(:report_id, Shapes::ShapeRef.new(shape: ImageUsageReportId, required: true, location_name: "ReportId"))
6553
+ DeleteImageUsageReportRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
6554
+ DeleteImageUsageReportRequest.struct_class = Types::DeleteImageUsageReportRequest
6555
+
6556
+ DeleteImageUsageReportResult.add_member(:return, Shapes::ShapeRef.new(shape: Boolean, location_name: "return"))
6557
+ DeleteImageUsageReportResult.struct_class = Types::DeleteImageUsageReportResult
6558
+
6488
6559
  DeleteInstanceConnectEndpointRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
6489
6560
  DeleteInstanceConnectEndpointRequest.add_member(:instance_connect_endpoint_id, Shapes::ShapeRef.new(shape: InstanceConnectEndpointId, required: true, location_name: "InstanceConnectEndpointId"))
6490
6561
  DeleteInstanceConnectEndpointRequest.struct_class = Types::DeleteInstanceConnectEndpointRequest
@@ -7591,6 +7662,46 @@ module Aws::EC2
7591
7662
  DescribeImageAttributeRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
7592
7663
  DescribeImageAttributeRequest.struct_class = Types::DescribeImageAttributeRequest
7593
7664
 
7665
+ DescribeImageReferencesImageIdStringList.member = Shapes::ShapeRef.new(shape: ImageId)
7666
+
7667
+ DescribeImageReferencesRequest.add_member(:image_ids, Shapes::ShapeRef.new(shape: DescribeImageReferencesImageIdStringList, required: true, location_name: "ImageId"))
7668
+ DescribeImageReferencesRequest.add_member(:include_all_resource_types, Shapes::ShapeRef.new(shape: Boolean, location_name: "IncludeAllResourceTypes"))
7669
+ DescribeImageReferencesRequest.add_member(:resource_types, Shapes::ShapeRef.new(shape: ResourceTypeRequestList, location_name: "ResourceType"))
7670
+ DescribeImageReferencesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "NextToken"))
7671
+ DescribeImageReferencesRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
7672
+ DescribeImageReferencesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: DescribeImageReferencesMaxResults, location_name: "MaxResults"))
7673
+ DescribeImageReferencesRequest.struct_class = Types::DescribeImageReferencesRequest
7674
+
7675
+ DescribeImageReferencesResult.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
7676
+ DescribeImageReferencesResult.add_member(:image_references, Shapes::ShapeRef.new(shape: ImageReferenceList, location_name: "imageReferenceSet"))
7677
+ DescribeImageReferencesResult.struct_class = Types::DescribeImageReferencesResult
7678
+
7679
+ DescribeImageUsageReportEntriesRequest.add_member(:image_ids, Shapes::ShapeRef.new(shape: DescribeImageUsageReportsImageIdStringList, location_name: "ImageId"))
7680
+ DescribeImageUsageReportEntriesRequest.add_member(:report_ids, Shapes::ShapeRef.new(shape: ImageUsageReportIdStringList, location_name: "ReportId"))
7681
+ DescribeImageUsageReportEntriesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "NextToken"))
7682
+ DescribeImageUsageReportEntriesRequest.add_member(:filters, Shapes::ShapeRef.new(shape: FilterList, location_name: "Filter"))
7683
+ DescribeImageUsageReportEntriesRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
7684
+ DescribeImageUsageReportEntriesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: DescribeImageUsageReportEntriesMaxResults, location_name: "MaxResults"))
7685
+ DescribeImageUsageReportEntriesRequest.struct_class = Types::DescribeImageUsageReportEntriesRequest
7686
+
7687
+ DescribeImageUsageReportEntriesResult.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
7688
+ DescribeImageUsageReportEntriesResult.add_member(:image_usage_report_entries, Shapes::ShapeRef.new(shape: ImageUsageReportEntryList, location_name: "imageUsageReportEntrySet"))
7689
+ DescribeImageUsageReportEntriesResult.struct_class = Types::DescribeImageUsageReportEntriesResult
7690
+
7691
+ DescribeImageUsageReportsImageIdStringList.member = Shapes::ShapeRef.new(shape: ImageId)
7692
+
7693
+ DescribeImageUsageReportsRequest.add_member(:image_ids, Shapes::ShapeRef.new(shape: DescribeImageUsageReportsImageIdStringList, location_name: "ImageId"))
7694
+ DescribeImageUsageReportsRequest.add_member(:report_ids, Shapes::ShapeRef.new(shape: ImageUsageReportIdStringList, location_name: "ReportId"))
7695
+ DescribeImageUsageReportsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "NextToken"))
7696
+ DescribeImageUsageReportsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: FilterList, location_name: "Filter"))
7697
+ DescribeImageUsageReportsRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
7698
+ DescribeImageUsageReportsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: DescribeImageUsageReportsMaxResults, location_name: "MaxResults"))
7699
+ DescribeImageUsageReportsRequest.struct_class = Types::DescribeImageUsageReportsRequest
7700
+
7701
+ DescribeImageUsageReportsResult.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
7702
+ DescribeImageUsageReportsResult.add_member(:image_usage_reports, Shapes::ShapeRef.new(shape: ImageUsageReportList, location_name: "imageUsageReportSet"))
7703
+ DescribeImageUsageReportsResult.struct_class = Types::DescribeImageUsageReportsResult
7704
+
7594
7705
  DescribeImagesRequest.add_member(:executable_users, Shapes::ShapeRef.new(shape: ExecutableByStringList, location_name: "ExecutableBy"))
7595
7706
  DescribeImagesRequest.add_member(:image_ids, Shapes::ShapeRef.new(shape: ImageIdStringList, location_name: "ImageId"))
7596
7707
  DescribeImagesRequest.add_member(:owners, Shapes::ShapeRef.new(shape: OwnerStringList, location_name: "Owner"))
@@ -10977,6 +11088,66 @@ module Aws::EC2
10977
11088
 
10978
11089
  ImageRecycleBinInfoList.member = Shapes::ShapeRef.new(shape: ImageRecycleBinInfo, location_name: "item")
10979
11090
 
11091
+ ImageReference.add_member(:image_id, Shapes::ShapeRef.new(shape: ImageId, location_name: "imageId"))
11092
+ ImageReference.add_member(:resource_type, Shapes::ShapeRef.new(shape: ImageReferenceResourceType, location_name: "resourceType"))
11093
+ ImageReference.add_member(:arn, Shapes::ShapeRef.new(shape: String, location_name: "arn"))
11094
+ ImageReference.struct_class = Types::ImageReference
11095
+
11096
+ ImageReferenceList.member = Shapes::ShapeRef.new(shape: ImageReference, location_name: "item")
11097
+
11098
+ ImageUsageReport.add_member(:image_id, Shapes::ShapeRef.new(shape: ImageId, location_name: "imageId"))
11099
+ ImageUsageReport.add_member(:report_id, Shapes::ShapeRef.new(shape: ImageUsageReportId, location_name: "reportId"))
11100
+ ImageUsageReport.add_member(:resource_types, Shapes::ShapeRef.new(shape: ImageUsageResourceTypeList, location_name: "resourceTypeSet"))
11101
+ ImageUsageReport.add_member(:account_ids, Shapes::ShapeRef.new(shape: UserIdList, location_name: "accountIdSet"))
11102
+ ImageUsageReport.add_member(:state, Shapes::ShapeRef.new(shape: ImageUsageReportState, location_name: "state"))
11103
+ ImageUsageReport.add_member(:state_reason, Shapes::ShapeRef.new(shape: ImageUsageReportStateReason, location_name: "stateReason"))
11104
+ ImageUsageReport.add_member(:creation_time, Shapes::ShapeRef.new(shape: MillisecondDateTime, location_name: "creationTime"))
11105
+ ImageUsageReport.add_member(:expiration_time, Shapes::ShapeRef.new(shape: MillisecondDateTime, location_name: "expirationTime"))
11106
+ ImageUsageReport.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tagSet"))
11107
+ ImageUsageReport.struct_class = Types::ImageUsageReport
11108
+
11109
+ ImageUsageReportEntry.add_member(:resource_type, Shapes::ShapeRef.new(shape: ImageUsageResourceTypeName, location_name: "resourceType"))
11110
+ ImageUsageReportEntry.add_member(:report_id, Shapes::ShapeRef.new(shape: ImageUsageReportId, location_name: "reportId"))
11111
+ ImageUsageReportEntry.add_member(:usage_count, Shapes::ShapeRef.new(shape: Long, location_name: "usageCount"))
11112
+ ImageUsageReportEntry.add_member(:account_id, Shapes::ShapeRef.new(shape: String, location_name: "accountId"))
11113
+ ImageUsageReportEntry.add_member(:image_id, Shapes::ShapeRef.new(shape: ImageId, location_name: "imageId"))
11114
+ ImageUsageReportEntry.add_member(:report_creation_time, Shapes::ShapeRef.new(shape: MillisecondDateTime, location_name: "reportCreationTime"))
11115
+ ImageUsageReportEntry.struct_class = Types::ImageUsageReportEntry
11116
+
11117
+ ImageUsageReportEntryList.member = Shapes::ShapeRef.new(shape: ImageUsageReportEntry, location_name: "item")
11118
+
11119
+ ImageUsageReportIdStringList.member = Shapes::ShapeRef.new(shape: ImageUsageReportId)
11120
+
11121
+ ImageUsageReportList.member = Shapes::ShapeRef.new(shape: ImageUsageReport, location_name: "item")
11122
+
11123
+ ImageUsageReportUserIdStringList.member = Shapes::ShapeRef.new(shape: String, location_name: "UserId")
11124
+
11125
+ ImageUsageResourceType.add_member(:resource_type, Shapes::ShapeRef.new(shape: ImageUsageResourceTypeName, location_name: "resourceType"))
11126
+ ImageUsageResourceType.add_member(:resource_type_options, Shapes::ShapeRef.new(shape: ImageUsageResourceTypeOptionList, location_name: "resourceTypeOptionSet"))
11127
+ ImageUsageResourceType.struct_class = Types::ImageUsageResourceType
11128
+
11129
+ ImageUsageResourceTypeList.member = Shapes::ShapeRef.new(shape: ImageUsageResourceType, location_name: "item")
11130
+
11131
+ ImageUsageResourceTypeOption.add_member(:option_name, Shapes::ShapeRef.new(shape: String, location_name: "optionName"))
11132
+ ImageUsageResourceTypeOption.add_member(:option_values, Shapes::ShapeRef.new(shape: ImageUsageResourceTypeOptionValuesList, location_name: "optionValueSet"))
11133
+ ImageUsageResourceTypeOption.struct_class = Types::ImageUsageResourceTypeOption
11134
+
11135
+ ImageUsageResourceTypeOptionList.member = Shapes::ShapeRef.new(shape: ImageUsageResourceTypeOption, location_name: "item")
11136
+
11137
+ ImageUsageResourceTypeOptionRequest.add_member(:option_name, Shapes::ShapeRef.new(shape: String, location_name: "OptionName"))
11138
+ ImageUsageResourceTypeOptionRequest.add_member(:option_values, Shapes::ShapeRef.new(shape: ImageUsageResourceTypeOptionValuesList, location_name: "OptionValue"))
11139
+ ImageUsageResourceTypeOptionRequest.struct_class = Types::ImageUsageResourceTypeOptionRequest
11140
+
11141
+ ImageUsageResourceTypeOptionRequestList.member = Shapes::ShapeRef.new(shape: ImageUsageResourceTypeOptionRequest)
11142
+
11143
+ ImageUsageResourceTypeOptionValuesList.member = Shapes::ShapeRef.new(shape: ImageUsageResourceTypeOptionValue, location_name: "item")
11144
+
11145
+ ImageUsageResourceTypeRequest.add_member(:resource_type, Shapes::ShapeRef.new(shape: ImageUsageResourceTypeName, location_name: "ResourceType"))
11146
+ ImageUsageResourceTypeRequest.add_member(:resource_type_options, Shapes::ShapeRef.new(shape: ImageUsageResourceTypeOptionRequestList, location_name: "ResourceTypeOption"))
11147
+ ImageUsageResourceTypeRequest.struct_class = Types::ImageUsageResourceTypeRequest
11148
+
11149
+ ImageUsageResourceTypeRequestList.member = Shapes::ShapeRef.new(shape: ImageUsageResourceTypeRequest)
11150
+
10980
11151
  ImportClientVpnClientCertificateRevocationListRequest.add_member(:client_vpn_endpoint_id, Shapes::ShapeRef.new(shape: ClientVpnEndpointId, required: true, location_name: "ClientVpnEndpointId"))
10981
11152
  ImportClientVpnClientCertificateRevocationListRequest.add_member(:certificate_revocation_list, Shapes::ShapeRef.new(shape: String, required: true, location_name: "CertificateRevocationList"))
10982
11153
  ImportClientVpnClientCertificateRevocationListRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
@@ -15090,6 +15261,20 @@ module Aws::EC2
15090
15261
  ResourceStatementRequest.add_member(:resource_types, Shapes::ShapeRef.new(shape: ValueStringList, location_name: "ResourceType"))
15091
15262
  ResourceStatementRequest.struct_class = Types::ResourceStatementRequest
15092
15263
 
15264
+ ResourceTypeOption.add_member(:option_name, Shapes::ShapeRef.new(shape: ImageReferenceOptionName, location_name: "OptionName"))
15265
+ ResourceTypeOption.add_member(:option_values, Shapes::ShapeRef.new(shape: ResourceTypeOptionValuesList, location_name: "OptionValue"))
15266
+ ResourceTypeOption.struct_class = Types::ResourceTypeOption
15267
+
15268
+ ResourceTypeOptionList.member = Shapes::ShapeRef.new(shape: ResourceTypeOption)
15269
+
15270
+ ResourceTypeOptionValuesList.member = Shapes::ShapeRef.new(shape: ResourceTypeOptionValue)
15271
+
15272
+ ResourceTypeRequest.add_member(:resource_type, Shapes::ShapeRef.new(shape: ImageReferenceResourceType, location_name: "ResourceType"))
15273
+ ResourceTypeRequest.add_member(:resource_type_options, Shapes::ShapeRef.new(shape: ResourceTypeOptionList, location_name: "ResourceTypeOption"))
15274
+ ResourceTypeRequest.struct_class = Types::ResourceTypeRequest
15275
+
15276
+ ResourceTypeRequestList.member = Shapes::ShapeRef.new(shape: ResourceTypeRequest)
15277
+
15093
15278
  ResponseError.add_member(:code, Shapes::ShapeRef.new(shape: LaunchTemplateErrorCode, location_name: "code"))
15094
15279
  ResponseError.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
15095
15280
  ResponseError.struct_class = Types::ResponseError
@@ -16988,6 +17173,8 @@ module Aws::EC2
16988
17173
 
16989
17174
  UserIdGroupPairSet.member = Shapes::ShapeRef.new(shape: UserIdGroupPair, location_name: "item")
16990
17175
 
17176
+ UserIdList.member = Shapes::ShapeRef.new(shape: String, location_name: "item")
17177
+
16991
17178
  UserIdStringList.member = Shapes::ShapeRef.new(shape: String, location_name: "UserId")
16992
17179
 
16993
17180
  VCpuCountRange.add_member(:min, Shapes::ShapeRef.new(shape: Integer, location_name: "min"))
@@ -18322,6 +18509,14 @@ module Aws::EC2
18322
18509
  o.output = Shapes::ShapeRef.new(shape: CreateImageResult)
18323
18510
  end)
18324
18511
 
18512
+ api.add_operation(:create_image_usage_report, Seahorse::Model::Operation.new.tap do |o|
18513
+ o.name = "CreateImageUsageReport"
18514
+ o.http_method = "POST"
18515
+ o.http_request_uri = "/"
18516
+ o.input = Shapes::ShapeRef.new(shape: CreateImageUsageReportRequest)
18517
+ o.output = Shapes::ShapeRef.new(shape: CreateImageUsageReportResult)
18518
+ end)
18519
+
18325
18520
  api.add_operation(:create_instance_connect_endpoint, Seahorse::Model::Operation.new.tap do |o|
18326
18521
  o.name = "CreateInstanceConnectEndpoint"
18327
18522
  o.http_method = "POST"
@@ -19002,6 +19197,14 @@ module Aws::EC2
19002
19197
  o.output = Shapes::ShapeRef.new(shape: DeleteFpgaImageResult)
19003
19198
  end)
19004
19199
 
19200
+ api.add_operation(:delete_image_usage_report, Seahorse::Model::Operation.new.tap do |o|
19201
+ o.name = "DeleteImageUsageReport"
19202
+ o.http_method = "POST"
19203
+ o.http_request_uri = "/"
19204
+ o.input = Shapes::ShapeRef.new(shape: DeleteImageUsageReportRequest)
19205
+ o.output = Shapes::ShapeRef.new(shape: DeleteImageUsageReportResult)
19206
+ end)
19207
+
19005
19208
  api.add_operation(:delete_instance_connect_endpoint, Seahorse::Model::Operation.new.tap do |o|
19006
19209
  o.name = "DeleteInstanceConnectEndpoint"
19007
19210
  o.http_method = "POST"
@@ -20202,6 +20405,48 @@ module Aws::EC2
20202
20405
  o.output = Shapes::ShapeRef.new(shape: ImageAttribute)
20203
20406
  end)
20204
20407
 
20408
+ api.add_operation(:describe_image_references, Seahorse::Model::Operation.new.tap do |o|
20409
+ o.name = "DescribeImageReferences"
20410
+ o.http_method = "POST"
20411
+ o.http_request_uri = "/"
20412
+ o.input = Shapes::ShapeRef.new(shape: DescribeImageReferencesRequest)
20413
+ o.output = Shapes::ShapeRef.new(shape: DescribeImageReferencesResult)
20414
+ o[:pager] = Aws::Pager.new(
20415
+ limit_key: "max_results",
20416
+ tokens: {
20417
+ "next_token" => "next_token"
20418
+ }
20419
+ )
20420
+ end)
20421
+
20422
+ api.add_operation(:describe_image_usage_report_entries, Seahorse::Model::Operation.new.tap do |o|
20423
+ o.name = "DescribeImageUsageReportEntries"
20424
+ o.http_method = "POST"
20425
+ o.http_request_uri = "/"
20426
+ o.input = Shapes::ShapeRef.new(shape: DescribeImageUsageReportEntriesRequest)
20427
+ o.output = Shapes::ShapeRef.new(shape: DescribeImageUsageReportEntriesResult)
20428
+ o[:pager] = Aws::Pager.new(
20429
+ limit_key: "max_results",
20430
+ tokens: {
20431
+ "next_token" => "next_token"
20432
+ }
20433
+ )
20434
+ end)
20435
+
20436
+ api.add_operation(:describe_image_usage_reports, Seahorse::Model::Operation.new.tap do |o|
20437
+ o.name = "DescribeImageUsageReports"
20438
+ o.http_method = "POST"
20439
+ o.http_request_uri = "/"
20440
+ o.input = Shapes::ShapeRef.new(shape: DescribeImageUsageReportsRequest)
20441
+ o.output = Shapes::ShapeRef.new(shape: DescribeImageUsageReportsResult)
20442
+ o[:pager] = Aws::Pager.new(
20443
+ limit_key: "max_results",
20444
+ tokens: {
20445
+ "next_token" => "next_token"
20446
+ }
20447
+ )
20448
+ end)
20449
+
20205
20450
  api.add_operation(:describe_images, Seahorse::Model::Operation.new.tap do |o|
20206
20451
  o.name = "DescribeImages"
20207
20452
  o.http_method = "POST"
@@ -785,7 +785,7 @@ module Aws::EC2
785
785
  # image = instance.create_image({
786
786
  # tag_specifications: [
787
787
  # {
788
- # resource_type: "capacity-reservation", # accepts capacity-reservation, client-vpn-endpoint, customer-gateway, carrier-gateway, coip-pool, declarative-policies-report, dedicated-host, dhcp-options, egress-only-internet-gateway, elastic-ip, elastic-gpu, export-image-task, export-instance-task, fleet, fpga-image, host-reservation, image, import-image-task, import-snapshot-task, instance, instance-event-window, internet-gateway, ipam, ipam-pool, ipam-scope, ipv4pool-ec2, ipv6pool-ec2, key-pair, launch-template, local-gateway, local-gateway-route-table, local-gateway-virtual-interface, local-gateway-virtual-interface-group, local-gateway-route-table-vpc-association, local-gateway-route-table-virtual-interface-group-association, natgateway, network-acl, network-interface, network-insights-analysis, network-insights-path, network-insights-access-scope, network-insights-access-scope-analysis, outpost-lag, placement-group, prefix-list, replace-root-volume-task, reserved-instances, route-table, security-group, security-group-rule, service-link-virtual-interface, snapshot, spot-fleet-request, spot-instances-request, subnet, subnet-cidr-reservation, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-connect-peer, transit-gateway-multicast-domain, transit-gateway-policy-table, transit-gateway-route-table, transit-gateway-route-table-announcement, volume, vpc, vpc-endpoint, vpc-endpoint-connection, vpc-endpoint-service, vpc-endpoint-service-permission, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log, capacity-reservation-fleet, traffic-mirror-filter-rule, vpc-endpoint-connection-device-type, verified-access-instance, verified-access-group, verified-access-endpoint, verified-access-policy, verified-access-trust-provider, vpn-connection-device-type, vpc-block-public-access-exclusion, route-server, route-server-endpoint, route-server-peer, ipam-resource-discovery, ipam-resource-discovery-association, instance-connect-endpoint, verified-access-endpoint-target, ipam-external-resource-verification-token, capacity-block, mac-modification-task
788
+ # resource_type: "capacity-reservation", # accepts capacity-reservation, client-vpn-endpoint, customer-gateway, carrier-gateway, coip-pool, declarative-policies-report, dedicated-host, dhcp-options, egress-only-internet-gateway, elastic-ip, elastic-gpu, export-image-task, export-instance-task, fleet, fpga-image, host-reservation, image, image-usage-report, import-image-task, import-snapshot-task, instance, instance-event-window, internet-gateway, ipam, ipam-pool, ipam-scope, ipv4pool-ec2, ipv6pool-ec2, key-pair, launch-template, local-gateway, local-gateway-route-table, local-gateway-virtual-interface, local-gateway-virtual-interface-group, local-gateway-route-table-vpc-association, local-gateway-route-table-virtual-interface-group-association, natgateway, network-acl, network-interface, network-insights-analysis, network-insights-path, network-insights-access-scope, network-insights-access-scope-analysis, outpost-lag, placement-group, prefix-list, replace-root-volume-task, reserved-instances, route-table, security-group, security-group-rule, service-link-virtual-interface, snapshot, spot-fleet-request, spot-instances-request, subnet, subnet-cidr-reservation, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-connect-peer, transit-gateway-multicast-domain, transit-gateway-policy-table, transit-gateway-route-table, transit-gateway-route-table-announcement, volume, vpc, vpc-endpoint, vpc-endpoint-connection, vpc-endpoint-service, vpc-endpoint-service-permission, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log, capacity-reservation-fleet, traffic-mirror-filter-rule, vpc-endpoint-connection-device-type, verified-access-instance, verified-access-group, verified-access-endpoint, verified-access-policy, verified-access-trust-provider, vpn-connection-device-type, vpc-block-public-access-exclusion, route-server, route-server-endpoint, route-server-peer, ipam-resource-discovery, ipam-resource-discovery-association, instance-connect-endpoint, verified-access-endpoint-target, ipam-external-resource-verification-token, capacity-block, mac-modification-task
789
789
  # tags: [
790
790
  # {
791
791
  # key: "String",