diff --git a/.changelog/108e2394884749b5873c26ad207fc32c.json b/.changelog/108e2394884749b5873c26ad207fc32c.json new file mode 100644 index 00000000000..aefd1bb7d22 --- /dev/null +++ b/.changelog/108e2394884749b5873c26ad207fc32c.json @@ -0,0 +1,8 @@ +{ + "id": "108e2394-8847-49b5-873c-26ad207fc32c", + "type": "feature", + "description": "This release adds support for sharing AWS::InternetMonitor::Monitor resources.", + "modules": [ + "service/oam" + ] +} \ No newline at end of file diff --git a/.changelog/144ffa3fd99c459db645178e7cac02c7.json b/.changelog/144ffa3fd99c459db645178e7cac02c7.json new file mode 100644 index 00000000000..9bedbf56989 --- /dev/null +++ b/.changelog/144ffa3fd99c459db645178e7cac02c7.json @@ -0,0 +1,8 @@ +{ + "id": "144ffa3f-d99c-459d-b645-178e7cac02c7", + "type": "feature", + "description": "Add EC2 support for GuardDuty Runtime Monitoring auto management.", + "modules": [ + "service/guardduty" + ] +} \ No newline at end of file diff --git a/.changelog/ae790fadde114bffa63a5746e6dcc924.json b/.changelog/ae790fadde114bffa63a5746e6dcc924.json new file mode 100644 index 00000000000..7cf976516f4 --- /dev/null +++ b/.changelog/ae790fadde114bffa63a5746e6dcc924.json @@ -0,0 +1,8 @@ +{ + "id": "ae790fad-de11-4bff-a63a-5746e6dcc924", + "type": "feature", + "description": "This release enables AWS Compute Optimizer to analyze and generate recommendations with a new customization preference, Memory Utilization.", + "modules": [ + "service/computeoptimizer" + ] +} \ No newline at end of file diff --git a/.changelog/c82072a0e2114872a073c781b09053b0.json b/.changelog/c82072a0e2114872a073c781b09053b0.json new file mode 100644 index 00000000000..a8c2ac0cbda --- /dev/null +++ b/.changelog/c82072a0e2114872a073c781b09053b0.json @@ -0,0 +1,8 @@ +{ + "id": "c82072a0-e211-4872-a073-c781b09053b0", + "type": "feature", + "description": "This release adds support for understanding pending changes to subscriptions by including two new response parameters for the GetSubscription API for Amazon CodeCatalyst.", + "modules": [ + "service/codecatalyst" + ] +} \ No newline at end of file diff --git a/.changelog/cfaed1da91344be18718441820339291.json b/.changelog/cfaed1da91344be18718441820339291.json new file mode 100644 index 00000000000..5b375a4db64 --- /dev/null +++ b/.changelog/cfaed1da91344be18718441820339291.json @@ -0,0 +1,8 @@ +{ + "id": "cfaed1da-9134-4be1-8718-441820339291", + "type": "feature", + "description": "Add multiple customer error code to handle customer caused failure when managing EKS node groups", + "modules": [ + "service/eks" + ] +} \ No newline at end of file diff --git a/.changelog/db98808d411746fb9ad0d490e2ffcd8e.json b/.changelog/db98808d411746fb9ad0d490e2ffcd8e.json new file mode 100644 index 00000000000..53383db6169 --- /dev/null +++ b/.changelog/db98808d411746fb9ad0d490e2ffcd8e.json @@ -0,0 +1,8 @@ +{ + "id": "db98808d-4117-46fb-9ad0-d490e2ffcd8e", + "type": "feature", + "description": "Amazon QuickSight: Adds support for setting up VPC Endpoint restrictions for accessing QuickSight Website.", + "modules": [ + "service/quicksight" + ] +} \ No newline at end of file diff --git a/.changelog/df7624fb669345778ed2aa46774fe268.json b/.changelog/df7624fb669345778ed2aa46774fe268.json new file mode 100644 index 00000000000..d3cbda4187d --- /dev/null +++ b/.changelog/df7624fb669345778ed2aa46774fe268.json @@ -0,0 +1,8 @@ +{ + "id": "df7624fb-6693-4577-8ed2-aa46774fe268", + "type": "feature", + "description": "Amazon EC2 C7gd, M7gd and R7gd metal instances with up to 3.8 TB of local NVMe-based SSD block-level storage have up to 45% improved real-time NVMe storage performance than comparable Graviton2-based instances.", + "modules": [ + "service/ec2" + ] +} \ No newline at end of file diff --git a/.changelog/e159d5edfcae4559bbf278bb33852574.json b/.changelog/e159d5edfcae4559bbf278bb33852574.json new file mode 100644 index 00000000000..b7da6bc3642 --- /dev/null +++ b/.changelog/e159d5edfcae4559bbf278bb33852574.json @@ -0,0 +1,8 @@ +{ + "id": "e159d5ed-fcae-4559-bbf2-78bb33852574", + "type": "feature", + "description": "Update ImportTaskCancelled waiter to evaluate task state correctly and minor documentation changes.", + "modules": [ + "service/neptunegraph" + ] +} \ No newline at end of file diff --git a/service/codecatalyst/api_op_CreateDevEnvironment.go b/service/codecatalyst/api_op_CreateDevEnvironment.go index 8284d082bdb..ba0acf03ec2 100644 --- a/service/codecatalyst/api_op_CreateDevEnvironment.go +++ b/service/codecatalyst/api_op_CreateDevEnvironment.go @@ -82,7 +82,7 @@ type CreateDevEnvironmentInput struct { // Environment. Repositories []types.RepositoryInput - // The name of the connection to use connect to a Amazon VPC. + // The name of the connection that will be used to connect to Amazon VPC, if any. VpcConnectionName *string noSmithyDocumentSerde diff --git a/service/codecatalyst/api_op_GetSubscription.go b/service/codecatalyst/api_op_GetSubscription.go index aced2f94929..61dd3ef2e79 100644 --- a/service/codecatalyst/api_op_GetSubscription.go +++ b/service/codecatalyst/api_op_GetSubscription.go @@ -8,6 +8,7 @@ import ( awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" "github.com/aws/smithy-go/middleware" smithyhttp "github.com/aws/smithy-go/transport/http" + "time" ) // Returns information about the Amazon Web Services account used for billing @@ -43,6 +44,18 @@ type GetSubscriptionOutput struct { // space. AwsAccountName *string + // The day and time the pending change will be applied to the space, in + // coordinated universal time (UTC) timestamp format as specified in RFC 3339 (https://www.rfc-editor.org/rfc/rfc3339#section-5.6) + // . + PendingSubscriptionStartTime *time.Time + + // The type of the billing plan that the space will be changed to at the start of + // the next billing cycle. This applies only to changes that reduce the + // functionality available for the space. Billing plan changes that increase + // functionality are applied immediately. For more information, see Pricing (https://codecatalyst.aws/explore/pricing) + // . + PendingSubscriptionType *string + // The type of the billing plan for the space. SubscriptionType *string diff --git a/service/codecatalyst/deserializers.go b/service/codecatalyst/deserializers.go index 0c72aaaa500..b0d9cf20047 100644 --- a/service/codecatalyst/deserializers.go +++ b/service/codecatalyst/deserializers.go @@ -3024,6 +3024,28 @@ func awsRestjson1_deserializeOpDocumentGetSubscriptionOutput(v **GetSubscription sv.AwsAccountName = ptr.String(jtv) } + case "pendingSubscriptionStartTime": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value) + } + t, err := smithytime.ParseDateTime(jtv) + if err != nil { + return err + } + sv.PendingSubscriptionStartTime = ptr.Time(t) + } + + case "pendingSubscriptionType": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.PendingSubscriptionType = ptr.String(jtv) + } + case "subscriptionType": if value != nil { jtv, ok := value.(string) diff --git a/service/computeoptimizer/api_op_GetEffectiveRecommendationPreferences.go b/service/computeoptimizer/api_op_GetEffectiveRecommendationPreferences.go index ddba397b166..95be42c04e7 100644 --- a/service/computeoptimizer/api_op_GetEffectiveRecommendationPreferences.go +++ b/service/computeoptimizer/api_op_GetEffectiveRecommendationPreferences.go @@ -87,7 +87,7 @@ type GetEffectiveRecommendationPreferencesOutput struct { // GetEC2InstanceRecommendations actions. PreferredResources []types.EffectivePreferredResource - // The resource’s CPU utilization threshold preferences, such as threshold and + // The resource’s CPU and memory utilization preferences, such as threshold and // headroom, that were used to generate rightsizing recommendations. It considers // all applicable preferences that you set at the resource, account, and // organization level. To validate that the preference is applied to your last diff --git a/service/computeoptimizer/api_op_PutRecommendationPreferences.go b/service/computeoptimizer/api_op_PutRecommendationPreferences.go index 8966aebdb4f..7a25dc1aa1e 100644 --- a/service/computeoptimizer/api_op_PutRecommendationPreferences.go +++ b/service/computeoptimizer/api_op_PutRecommendationPreferences.go @@ -101,12 +101,17 @@ type PutRecommendationPreferencesInput struct { // preferences at the resource level only for standalone instances. Scope *types.Scope - // The preference to control the resource’s CPU utilization thresholds - threshold - // and headroom. When this preference isn't specified, we use the following default - // values: + // The preference to control the resource’s CPU utilization threshold, CPU + // utilization headroom, and memory utilization headroom. When this preference + // isn't specified, we use the following default values. CPU utilization: // - P99_5 for threshold - // - PERCENT_17 for headroom - // You can only set this preference for the Amazon EC2 instance resource type. + // - PERCENT_20 for headroom + // Memory utilization: + // - PERCENT_20 for headroom + // + // - You can only set CPU and memory utilization preferences for the Amazon EC2 + // instance resource type. + // - The threshold setting isn’t available for memory utilization. UtilizationPreferences []types.UtilizationPreference noSmithyDocumentSerde diff --git a/service/computeoptimizer/types/enums.go b/service/computeoptimizer/types/enums.go index b56381cb05b..118090fcb39 100644 --- a/service/computeoptimizer/types/enums.go +++ b/service/computeoptimizer/types/enums.go @@ -84,6 +84,7 @@ type CustomizableMetricHeadroom string const ( CustomizableMetricHeadroomPercent30 CustomizableMetricHeadroom = "PERCENT_30" CustomizableMetricHeadroomPercent20 CustomizableMetricHeadroom = "PERCENT_20" + CustomizableMetricHeadroomPercent10 CustomizableMetricHeadroom = "PERCENT_10" CustomizableMetricHeadroomPercent0 CustomizableMetricHeadroom = "PERCENT_0" ) @@ -94,6 +95,7 @@ func (CustomizableMetricHeadroom) Values() []CustomizableMetricHeadroom { return []CustomizableMetricHeadroom{ "PERCENT_30", "PERCENT_20", + "PERCENT_10", "PERCENT_0", } } @@ -102,7 +104,8 @@ type CustomizableMetricName string // Enum values for CustomizableMetricName const ( - CustomizableMetricNameCpuUtilization CustomizableMetricName = "CpuUtilization" + CustomizableMetricNameCpuUtilization CustomizableMetricName = "CpuUtilization" + CustomizableMetricNameMemoryUtilization CustomizableMetricName = "MemoryUtilization" ) // Values returns all known values for CustomizableMetricName. Note that this can @@ -111,6 +114,7 @@ const ( func (CustomizableMetricName) Values() []CustomizableMetricName { return []CustomizableMetricName{ "CpuUtilization", + "MemoryUtilization", } } diff --git a/service/computeoptimizer/types/types.go b/service/computeoptimizer/types/types.go index af02399fea2..ca0fcbb06ab 100644 --- a/service/computeoptimizer/types/types.go +++ b/service/computeoptimizer/types/types.go @@ -272,11 +272,14 @@ type CurrentPerformanceRiskRatings struct { // and headroom. type CustomizableMetricParameters struct { - // The headroom threshold value in percentage used for the specified metric - // parameter. + // The headroom value in percentage used for the specified metric parameter. The + // following lists the valid values for CPU and memory utilization. + // - CPU utilization: PERCENT_30 | PERCENT_20 | PERCENT_0 + // - Memory utilization: PERCENT_30 | PERCENT_20 | PERCENT_10 Headroom CustomizableMetricHeadroom - // The threshold value used for the specified metric parameter. + // The threshold value used for the specified metric parameter. You can only + // specify the threshold value for CPU utilization. Threshold CustomizableMetricThreshold noSmithyDocumentSerde @@ -779,7 +782,7 @@ type EffectiveRecommendationPreferences struct { // opportunity for a resource. SavingsEstimationMode *InstanceSavingsEstimationMode - // The resource’s CPU utilization threshold preferences, such as threshold and + // The resource’s CPU and memory utilization preferences, such as threshold and // headroom, that are used to generate rightsizing recommendations. This preference // is only available for the Amazon EC2 instance resource type. UtilizationPreferences []UtilizationPreference @@ -1996,9 +1999,10 @@ type RecommendationPreferencesDetail struct { // in the Compute Optimizer User Guide. Scope *Scope - // The preference to control the resource’s CPU utilization thresholds - threshold - // and headroom. If the preference isn’t set, this object is null. This preference - // is only available for the Amazon EC2 instance resource type. + // The preference to control the resource’s CPU utilization threshold, CPU + // utilization headroom, and memory utilization headroom. If the preference isn’t + // set, this object is null. This preference is only available for the Amazon EC2 + // instance resource type. UtilizationPreferences []UtilizationPreference noSmithyDocumentSerde @@ -2323,8 +2327,7 @@ type UtilizationMetric struct { // resource type. type UtilizationPreference struct { - // The name of the resource utilization metric name to customize. Compute - // Optimizer only supports CpuUtilization . + // The name of the resource utilization metric name to customize. MetricName CustomizableMetricName // The parameters to set when customizing the resource utilization thresholds. diff --git a/service/ec2/types/enums.go b/service/ec2/types/enums.go index b6f364b279f..43f7c7d5fa2 100644 --- a/service/ec2/types/enums.go +++ b/service/ec2/types/enums.go @@ -3743,6 +3743,9 @@ const ( InstanceTypeR7iMetal48xl InstanceType = "r7i.metal-48xl" InstanceTypeR7izMetal16xl InstanceType = "r7iz.metal-16xl" InstanceTypeR7izMetal32xl InstanceType = "r7iz.metal-32xl" + InstanceTypeC7gdMetal InstanceType = "c7gd.metal" + InstanceTypeM7gdMetal InstanceType = "m7gd.metal" + InstanceTypeR7gdMetal InstanceType = "r7gd.metal" ) // Values returns all known values for InstanceType. Note that this can be @@ -4533,6 +4536,9 @@ func (InstanceType) Values() []InstanceType { "r7i.metal-48xl", "r7iz.metal-16xl", "r7iz.metal-32xl", + "c7gd.metal", + "m7gd.metal", + "r7gd.metal", } } diff --git a/service/eks/types/enums.go b/service/eks/types/enums.go index 393fcc4468d..8f292c6e3d4 100644 --- a/service/eks/types/enums.go +++ b/service/eks/types/enums.go @@ -507,39 +507,41 @@ type NodegroupIssueCode string // Enum values for NodegroupIssueCode const ( - NodegroupIssueCodeAutoScalingGroupNotFound NodegroupIssueCode = "AutoScalingGroupNotFound" - NodegroupIssueCodeAutoScalingGroupInvalidConfiguration NodegroupIssueCode = "AutoScalingGroupInvalidConfiguration" - NodegroupIssueCodeEc2SecurityGroupNotFound NodegroupIssueCode = "Ec2SecurityGroupNotFound" - NodegroupIssueCodeEc2SecurityGroupDeletionFailure NodegroupIssueCode = "Ec2SecurityGroupDeletionFailure" - NodegroupIssueCodeEc2LaunchTemplateNotFound NodegroupIssueCode = "Ec2LaunchTemplateNotFound" - NodegroupIssueCodeEc2LaunchTemplateVersionMismatch NodegroupIssueCode = "Ec2LaunchTemplateVersionMismatch" - NodegroupIssueCodeEc2SubnetNotFound NodegroupIssueCode = "Ec2SubnetNotFound" - NodegroupIssueCodeEc2SubnetInvalidConfiguration NodegroupIssueCode = "Ec2SubnetInvalidConfiguration" - NodegroupIssueCodeIamInstanceProfileNotFound NodegroupIssueCode = "IamInstanceProfileNotFound" - NodegroupIssueCodeEc2SubnetMissingIpv6Assignment NodegroupIssueCode = "Ec2SubnetMissingIpv6Assignment" - NodegroupIssueCodeIamLimitExceeded NodegroupIssueCode = "IamLimitExceeded" - NodegroupIssueCodeIamNodeRoleNotFound NodegroupIssueCode = "IamNodeRoleNotFound" - NodegroupIssueCodeNodeCreationFailure NodegroupIssueCode = "NodeCreationFailure" - NodegroupIssueCodeAsgInstanceLaunchFailures NodegroupIssueCode = "AsgInstanceLaunchFailures" - NodegroupIssueCodeInstanceLimitExceeded NodegroupIssueCode = "InstanceLimitExceeded" - NodegroupIssueCodeInsufficientFreeAddresses NodegroupIssueCode = "InsufficientFreeAddresses" - NodegroupIssueCodeAccessDenied NodegroupIssueCode = "AccessDenied" - NodegroupIssueCodeInternalFailure NodegroupIssueCode = "InternalFailure" - NodegroupIssueCodeClusterUnreachable NodegroupIssueCode = "ClusterUnreachable" - NodegroupIssueCodeAmiIdNotFound NodegroupIssueCode = "AmiIdNotFound" - NodegroupIssueCodeAutoScalingGroupOptInRequired NodegroupIssueCode = "AutoScalingGroupOptInRequired" - NodegroupIssueCodeAutoScalingGroupRateLimitExceeded NodegroupIssueCode = "AutoScalingGroupRateLimitExceeded" - NodegroupIssueCodeEc2LaunchTemplateDeletionFailure NodegroupIssueCode = "Ec2LaunchTemplateDeletionFailure" - NodegroupIssueCodeEc2LaunchTemplateInvalidConfiguration NodegroupIssueCode = "Ec2LaunchTemplateInvalidConfiguration" - NodegroupIssueCodeEc2LaunchTemplateMaxLimitExceeded NodegroupIssueCode = "Ec2LaunchTemplateMaxLimitExceeded" - NodegroupIssueCodeEc2SubnetListTooLong NodegroupIssueCode = "Ec2SubnetListTooLong" - NodegroupIssueCodeIamThrottling NodegroupIssueCode = "IamThrottling" - NodegroupIssueCodeNodeTerminationFailure NodegroupIssueCode = "NodeTerminationFailure" - NodegroupIssueCodePodEvictionFailure NodegroupIssueCode = "PodEvictionFailure" - NodegroupIssueCodeSourceEc2LaunchTemplateNotFound NodegroupIssueCode = "SourceEc2LaunchTemplateNotFound" - NodegroupIssueCodeLimitExceeded NodegroupIssueCode = "LimitExceeded" - NodegroupIssueCodeUnknown NodegroupIssueCode = "Unknown" - NodegroupIssueCodeAutoScalingGroupInstanceRefreshActive NodegroupIssueCode = "AutoScalingGroupInstanceRefreshActive" + NodegroupIssueCodeAutoScalingGroupNotFound NodegroupIssueCode = "AutoScalingGroupNotFound" + NodegroupIssueCodeAutoScalingGroupInvalidConfiguration NodegroupIssueCode = "AutoScalingGroupInvalidConfiguration" + NodegroupIssueCodeEc2SecurityGroupNotFound NodegroupIssueCode = "Ec2SecurityGroupNotFound" + NodegroupIssueCodeEc2SecurityGroupDeletionFailure NodegroupIssueCode = "Ec2SecurityGroupDeletionFailure" + NodegroupIssueCodeEc2LaunchTemplateNotFound NodegroupIssueCode = "Ec2LaunchTemplateNotFound" + NodegroupIssueCodeEc2LaunchTemplateVersionMismatch NodegroupIssueCode = "Ec2LaunchTemplateVersionMismatch" + NodegroupIssueCodeEc2SubnetNotFound NodegroupIssueCode = "Ec2SubnetNotFound" + NodegroupIssueCodeEc2SubnetInvalidConfiguration NodegroupIssueCode = "Ec2SubnetInvalidConfiguration" + NodegroupIssueCodeIamInstanceProfileNotFound NodegroupIssueCode = "IamInstanceProfileNotFound" + NodegroupIssueCodeEc2SubnetMissingIpv6Assignment NodegroupIssueCode = "Ec2SubnetMissingIpv6Assignment" + NodegroupIssueCodeIamLimitExceeded NodegroupIssueCode = "IamLimitExceeded" + NodegroupIssueCodeIamNodeRoleNotFound NodegroupIssueCode = "IamNodeRoleNotFound" + NodegroupIssueCodeNodeCreationFailure NodegroupIssueCode = "NodeCreationFailure" + NodegroupIssueCodeAsgInstanceLaunchFailures NodegroupIssueCode = "AsgInstanceLaunchFailures" + NodegroupIssueCodeInstanceLimitExceeded NodegroupIssueCode = "InstanceLimitExceeded" + NodegroupIssueCodeInsufficientFreeAddresses NodegroupIssueCode = "InsufficientFreeAddresses" + NodegroupIssueCodeAccessDenied NodegroupIssueCode = "AccessDenied" + NodegroupIssueCodeInternalFailure NodegroupIssueCode = "InternalFailure" + NodegroupIssueCodeClusterUnreachable NodegroupIssueCode = "ClusterUnreachable" + NodegroupIssueCodeAmiIdNotFound NodegroupIssueCode = "AmiIdNotFound" + NodegroupIssueCodeAutoScalingGroupOptInRequired NodegroupIssueCode = "AutoScalingGroupOptInRequired" + NodegroupIssueCodeAutoScalingGroupRateLimitExceeded NodegroupIssueCode = "AutoScalingGroupRateLimitExceeded" + NodegroupIssueCodeEc2LaunchTemplateDeletionFailure NodegroupIssueCode = "Ec2LaunchTemplateDeletionFailure" + NodegroupIssueCodeEc2LaunchTemplateInvalidConfiguration NodegroupIssueCode = "Ec2LaunchTemplateInvalidConfiguration" + NodegroupIssueCodeEc2LaunchTemplateMaxLimitExceeded NodegroupIssueCode = "Ec2LaunchTemplateMaxLimitExceeded" + NodegroupIssueCodeEc2SubnetListTooLong NodegroupIssueCode = "Ec2SubnetListTooLong" + NodegroupIssueCodeIamThrottling NodegroupIssueCode = "IamThrottling" + NodegroupIssueCodeNodeTerminationFailure NodegroupIssueCode = "NodeTerminationFailure" + NodegroupIssueCodePodEvictionFailure NodegroupIssueCode = "PodEvictionFailure" + NodegroupIssueCodeSourceEc2LaunchTemplateNotFound NodegroupIssueCode = "SourceEc2LaunchTemplateNotFound" + NodegroupIssueCodeLimitExceeded NodegroupIssueCode = "LimitExceeded" + NodegroupIssueCodeUnknown NodegroupIssueCode = "Unknown" + NodegroupIssueCodeAutoScalingGroupInstanceRefreshActive NodegroupIssueCode = "AutoScalingGroupInstanceRefreshActive" + NodegroupIssueCodeKubernetesLabelInvalid NodegroupIssueCode = "KubernetesLabelInvalid" + NodegroupIssueCodeEc2LaunchTemplateVersionMaxLimitExceeded NodegroupIssueCode = "Ec2LaunchTemplateVersionMaxLimitExceeded" ) // Values returns all known values for NodegroupIssueCode. Note that this can be @@ -580,6 +582,8 @@ func (NodegroupIssueCode) Values() []NodegroupIssueCode { "LimitExceeded", "Unknown", "AutoScalingGroupInstanceRefreshActive", + "KubernetesLabelInvalid", + "Ec2LaunchTemplateVersionMaxLimitExceeded", } } diff --git a/service/guardduty/api_op_CreateMembers.go b/service/guardduty/api_op_CreateMembers.go index a735cfac348..356530ec1c5 100644 --- a/service/guardduty/api_op_CreateMembers.go +++ b/service/guardduty/api_op_CreateMembers.go @@ -23,16 +23,17 @@ import ( // accounts being new or existing members. For more information about the existing // auto-enable settings for your organization, see // DescribeOrganizationConfiguration (https://docs.aws.amazon.com/guardduty/latest/APIReference/API_DescribeOrganizationConfiguration.html) -// . If you are adding accounts by invitation, before using InviteMembers (https://docs.aws.amazon.com/guardduty/latest/APIReference/API_InviteMembers.html) -// , use CreateMembers after GuardDuty has been enabled in potential member -// accounts. If you disassociate a member from a GuardDuty delegated administrator, -// the member account details obtained from this API, including the associated -// email addresses, will be retained. This is done so that the delegated -// administrator can invoke the InviteMembers (https://docs.aws.amazon.com/guardduty/latest/APIReference/API_InviteMembers.html) +// . If you disassociate a member account that was added by invitation, the member +// account details obtained from this API, including the associated email +// addresses, will be retained. This is done so that the delegated administrator +// can invoke the InviteMembers (https://docs.aws.amazon.com/guardduty/latest/APIReference/API_InviteMembers.html) // API without the need to invoke the CreateMembers API again. To remove the // details associated with a member account, the delegated administrator must // invoke the DeleteMembers (https://docs.aws.amazon.com/guardduty/latest/APIReference/API_DeleteMembers.html) -// API. +// API. When the member accounts added through Organizations are later +// disassociated, you (administrator) can't invite them by calling the +// InviteMembers API. You can create an association with these member accounts +// again only by calling the CreateMembers API. func (c *Client) CreateMembers(ctx context.Context, params *CreateMembersInput, optFns ...func(*Options)) (*CreateMembersOutput, error) { if params == nil { params = &CreateMembersInput{} diff --git a/service/guardduty/api_op_DisassociateMembers.go b/service/guardduty/api_op_DisassociateMembers.go index 8e1e72075b6..0a6605007e0 100644 --- a/service/guardduty/api_op_DisassociateMembers.go +++ b/service/guardduty/api_op_DisassociateMembers.go @@ -22,7 +22,17 @@ import ( // invoke the DeleteMembers (https://docs.aws.amazon.com/guardduty/latest/APIReference/API_DeleteMembers.html) // API. With autoEnableOrganizationMembers configuration for your organization set // to ALL , you'll receive an error if you attempt to disassociate a member account -// before removing them from your organization. +// before removing them from your organization. If you disassociate a member +// account that was added by invitation, the member account details obtained from +// this API, including the associated email addresses, will be retained. This is +// done so that the delegated administrator can invoke the InviteMembers (https://docs.aws.amazon.com/guardduty/latest/APIReference/API_InviteMembers.html) +// API without the need to invoke the CreateMembers API again. To remove the +// details associated with a member account, the delegated administrator must +// invoke the DeleteMembers (https://docs.aws.amazon.com/guardduty/latest/APIReference/API_DeleteMembers.html) +// API. When the member accounts added through Organizations are later +// disassociated, you (administrator) can't invite them by calling the +// InviteMembers API. You can create an association with these member accounts +// again only by calling the CreateMembers API. func (c *Client) DisassociateMembers(ctx context.Context, params *DisassociateMembersInput, optFns ...func(*Options)) (*DisassociateMembersOutput, error) { if params == nil { params = &DisassociateMembersInput{} diff --git a/service/guardduty/api_op_InviteMembers.go b/service/guardduty/api_op_InviteMembers.go index 4ee72de4d2d..cd721d4bb87 100644 --- a/service/guardduty/api_op_InviteMembers.go +++ b/service/guardduty/api_op_InviteMembers.go @@ -31,7 +31,17 @@ import ( // that you can invoke InviteMembers without the need to invoke CreateMembers (https://docs.aws.amazon.com/guardduty/latest/APIReference/API_CreateMembers.html) // again. To remove the details associated with a member account, you must also // invoke DeleteMembers (https://docs.aws.amazon.com/guardduty/latest/APIReference/API_DeleteMembers.html) -// . +// . If you disassociate a member account that was added by invitation, the member +// account details obtained from this API, including the associated email +// addresses, will be retained. This is done so that the delegated administrator +// can invoke the InviteMembers (https://docs.aws.amazon.com/guardduty/latest/APIReference/API_InviteMembers.html) +// API without the need to invoke the CreateMembers API again. To remove the +// details associated with a member account, the delegated administrator must +// invoke the DeleteMembers (https://docs.aws.amazon.com/guardduty/latest/APIReference/API_DeleteMembers.html) +// API. When the member accounts added through Organizations are later +// disassociated, you (administrator) can't invite them by calling the +// InviteMembers API. You can create an association with these member accounts +// again only by calling the CreateMembers API. func (c *Client) InviteMembers(ctx context.Context, params *InviteMembersInput, optFns ...func(*Options)) (*InviteMembersOutput, error) { if params == nil { params = &InviteMembersInput{} diff --git a/service/guardduty/deserializers.go b/service/guardduty/deserializers.go index ae17c8575dc..32a84151463 100644 --- a/service/guardduty/deserializers.go +++ b/service/guardduty/deserializers.go @@ -18658,6 +18658,15 @@ func awsRestjson1_deserializeDocumentRuntimeContext(v **types.RuntimeContext, va sv.AddressFamily = ptr.String(jtv) } + case "commandLineExample": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.CommandLineExample = ptr.String(jtv) + } + case "fileSystemType": if value != nil { jtv, ok := value.(string) @@ -18801,6 +18810,15 @@ func awsRestjson1_deserializeDocumentRuntimeContext(v **types.RuntimeContext, va sv.ScriptPath = ptr.String(jtv) } + case "serviceName": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.ServiceName = ptr.String(jtv) + } + case "shellHistoryFilePath": if value != nil { jtv, ok := value.(string) @@ -18824,6 +18842,33 @@ func awsRestjson1_deserializeDocumentRuntimeContext(v **types.RuntimeContext, va return err } + case "threatFilePath": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.ThreatFilePath = ptr.String(jtv) + } + + case "toolCategory": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.ToolCategory = ptr.String(jtv) + } + + case "toolName": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.ToolName = ptr.String(jtv) + } + default: _, _ = key, value @@ -20457,6 +20502,15 @@ func awsRestjson1_deserializeDocumentThreatIntelligenceDetail(v **types.ThreatIn for key, value := range shape { switch key { + case "threatFileSha256": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.ThreatFileSha256 = ptr.String(jtv) + } + case "threatListName": if value != nil { jtv, ok := value.(string) diff --git a/service/guardduty/types/enums.go b/service/guardduty/types/enums.go index d224c768860..b96c400f653 100644 --- a/service/guardduty/types/enums.go +++ b/service/guardduty/types/enums.go @@ -336,6 +336,7 @@ type FeatureAdditionalConfiguration string const ( FeatureAdditionalConfigurationEksAddonManagement FeatureAdditionalConfiguration = "EKS_ADDON_MANAGEMENT" FeatureAdditionalConfigurationEcsFargateAgentManagement FeatureAdditionalConfiguration = "ECS_FARGATE_AGENT_MANAGEMENT" + FeatureAdditionalConfigurationEc2AgentManagement FeatureAdditionalConfiguration = "EC2_AGENT_MANAGEMENT" ) // Values returns all known values for FeatureAdditionalConfiguration. Note that @@ -346,6 +347,7 @@ func (FeatureAdditionalConfiguration) Values() []FeatureAdditionalConfiguration return []FeatureAdditionalConfiguration{ "EKS_ADDON_MANAGEMENT", "ECS_FARGATE_AGENT_MANAGEMENT", + "EC2_AGENT_MANAGEMENT", } } @@ -601,6 +603,7 @@ type OrgFeatureAdditionalConfiguration string const ( OrgFeatureAdditionalConfigurationEksAddonManagement OrgFeatureAdditionalConfiguration = "EKS_ADDON_MANAGEMENT" OrgFeatureAdditionalConfigurationEcsFargateAgentManagement OrgFeatureAdditionalConfiguration = "ECS_FARGATE_AGENT_MANAGEMENT" + OrgFeatureAdditionalConfigurationEc2AgentManagement OrgFeatureAdditionalConfiguration = "EC2_AGENT_MANAGEMENT" ) // Values returns all known values for OrgFeatureAdditionalConfiguration. Note @@ -611,6 +614,7 @@ func (OrgFeatureAdditionalConfiguration) Values() []OrgFeatureAdditionalConfigur return []OrgFeatureAdditionalConfiguration{ "EKS_ADDON_MANAGEMENT", "ECS_FARGATE_AGENT_MANAGEMENT", + "EC2_AGENT_MANAGEMENT", } } diff --git a/service/guardduty/types/types.go b/service/guardduty/types/types.go index d1e97126ede..24d6e44c5a5 100644 --- a/service/guardduty/types/types.go +++ b/service/guardduty/types/types.go @@ -438,11 +438,7 @@ type Country struct { noSmithyDocumentSerde } -// This API is also used when you use GuardDuty Runtime Monitoring for your Amazon -// EC2 instances (currently in preview release) and is subject to change. The use -// of this API is subject to Section 2 of the Amazon Web Services Service Terms (http://aws.amazon.com/service-terms/) -// ("Betas and Previews"). Contains information about the Amazon EC2 instance -// runtime coverage details. +// Contains information about the Amazon EC2 instance runtime coverage details. type CoverageEc2InstanceDetails struct { // Information about the installed security agent. @@ -578,11 +574,7 @@ type CoverageResource struct { // Information about the resource for each individual EKS cluster. type CoverageResourceDetails struct { - // This API is also used when you use GuardDuty Runtime Monitoring for your Amazon - // EC2 instances (currently in preview release) and is subject to change. The use - // of this API is subject to Section 2 of the Amazon Web Services Service Terms (http://aws.amazon.com/service-terms/) - // ("Betas and Previews"). Information about the Amazon EC2 instance assessed for - // runtime coverage. + // Information about the Amazon EC2 instance assessed for runtime coverage. Ec2InstanceDetails *CoverageEc2InstanceDetails // Information about the Amazon ECS cluster that is assessed for runtime coverage. @@ -863,8 +855,9 @@ type DnsRequestAction struct { // The domain information for the DNS query. Domain *string - // The second and top level domain involved in the activity that prompted - // GuardDuty to generate this finding. + // The second and top level domain involved in the activity that potentially + // prompted GuardDuty to generate this finding. For a list of top-level and + // second-level domains, see public suffix list (https://publicsuffix.org/) . DomainWithSuffix *string // The network connection protocol observed in the activity that prompted @@ -2602,6 +2595,9 @@ type RuntimeContext struct { // the address family AF_INET is used for IP version of 4 protocol. AddressFamily *string + // Example of the command line involved in the suspicious activity. + CommandLineExample *string + // Represents the type of mounted fileSystem. FileSystemType *string @@ -2655,6 +2651,9 @@ type RuntimeContext struct { // The path to the script that was executed. ScriptPath *string + // Name of the security service that has been potentially disabled. + ServiceName *string + // The path to the modified shell history file. ShellHistoryFilePath *string @@ -2665,6 +2664,16 @@ type RuntimeContext struct { // process. TargetProcess *ProcessDetails + // The suspicious file path for which the threat intelligence details were found. + ThreatFilePath *string + + // Category that the tool belongs to. Some of the examples are Backdoor Tool, + // Pentest Tool, Network Scanner, and Network Sniffer. + ToolCategory *string + + // Name of the potentially suspicious tool. + ToolName *string + noSmithyDocumentSerde } @@ -3068,6 +3077,9 @@ type ThreatDetectedByName struct { // finding. type ThreatIntelligenceDetail struct { + // SHA256 of the file that generated the finding. + ThreatFileSha256 *string + // The name of the threat intelligence list that triggered the finding. ThreatListName *string diff --git a/service/medialive/internal/endpoints/endpoints.go b/service/medialive/internal/endpoints/endpoints.go index 65715a21a2d..82f047aa6b3 100644 --- a/service/medialive/internal/endpoints/endpoints.go +++ b/service/medialive/internal/endpoints/endpoints.go @@ -324,6 +324,11 @@ var defaultPartitions = endpoints.Partitions{ }, RegionRegex: partitionRegexp.AwsIsoB, IsRegionalized: true, + Endpoints: endpoints.Endpoints{ + endpoints.EndpointKey{ + Region: "us-isob-east-1", + }: endpoints.Endpoint{}, + }, }, { ID: "aws-iso-e", diff --git a/service/mediapackage/internal/endpoints/endpoints.go b/service/mediapackage/internal/endpoints/endpoints.go index 7871e210999..c2f62973c7e 100644 --- a/service/mediapackage/internal/endpoints/endpoints.go +++ b/service/mediapackage/internal/endpoints/endpoints.go @@ -276,6 +276,11 @@ var defaultPartitions = endpoints.Partitions{ }, RegionRegex: partitionRegexp.AwsIsoB, IsRegionalized: true, + Endpoints: endpoints.Endpoints{ + endpoints.EndpointKey{ + Region: "us-isob-east-1", + }: endpoints.Endpoint{}, + }, }, { ID: "aws-iso-e", diff --git a/service/neptunegraph/api_op_CreateGraph.go b/service/neptunegraph/api_op_CreateGraph.go index 18e1948c4c5..1a01b29ad79 100644 --- a/service/neptunegraph/api_op_CreateGraph.go +++ b/service/neptunegraph/api_op_CreateGraph.go @@ -114,10 +114,12 @@ type CreateGraphOutput struct { ProvisionedMemory *int32 // Specifies whether or not the graph can be reachable over the internet. All - // access to graphs is IAM authenticated. + // access to graphs is IAM authenticated. If enabling public connectivity for the + // first time, there will be a delay while it is enabled. PublicConnectivity *bool - // The number of replicas in other AZs. + // The number of replicas in other AZs. Default: If not specified, the default + // value is 1. ReplicaCount *int32 // The ID of the source graph. diff --git a/service/neptunegraph/api_op_ExecuteQuery.go b/service/neptunegraph/api_op_ExecuteQuery.go index 2a2f21b4065..0c5c250296e 100644 --- a/service/neptunegraph/api_op_ExecuteQuery.go +++ b/service/neptunegraph/api_op_ExecuteQuery.go @@ -16,19 +16,13 @@ import ( "strings" ) -// Execute an openCypher query. Currently, the SDK does not support parameterized -// queries. If you want to make a parameterized query call, you can use an HTTP -// request. When invoking this operation in a Neptune Analytics cluster, the IAM -// user or role making the request must have a policy attached that allows one of -// the following IAM actions in that cluster, depending on the query: +// Execute an openCypher query. When invoking this operation in a Neptune +// Analytics cluster, the IAM user or role making the request must have a policy +// attached that allows one of the following IAM actions in that cluster, depending +// on the query: // - neptune-graph:ReadDataViaQuery // - neptune-graph:WriteDataViaQuery // - neptune-graph:DeleteDataViaQuery -// -// Non-parametrized queries are not considered for plan caching. You can force -// plan caching with planCache=enabled . The plan cache will be reused only for the -// same exact query. Slight variations in the query will not be able to reuse the -// query plan cache. func (c *Client) ExecuteQuery(ctx context.Context, params *ExecuteQueryInput, optFns ...func(*Options)) (*ExecuteQueryOutput, error) { if params == nil { params = &ExecuteQueryInput{} diff --git a/service/neptunegraph/api_op_GetImportTask.go b/service/neptunegraph/api_op_GetImportTask.go index b01af2e7520..cafb0d5ba66 100644 --- a/service/neptunegraph/api_op_GetImportTask.go +++ b/service/neptunegraph/api_op_GetImportTask.go @@ -602,7 +602,7 @@ func (w *ImportTaskCancelledWaiter) WaitForOutput(ctx context.Context, params *G func importTaskCancelledStateRetryable(ctx context.Context, input *GetImportTaskInput, output *GetImportTaskOutput, err error) (bool, error) { if err == nil { - pathValue, err := jmespath.Search("status != 'CANCELLING'", output) + pathValue, err := jmespath.Search("status != 'CANCELLING' && status != 'CANCELLED'", output) if err != nil { return false, fmt.Errorf("error evaluating waiter state: %w", err) } diff --git a/service/neptunegraph/types/enums.go b/service/neptunegraph/types/enums.go index 1b95c60e90f..599f9cb46d2 100644 --- a/service/neptunegraph/types/enums.go +++ b/service/neptunegraph/types/enums.go @@ -65,6 +65,7 @@ const ( GraphStatusUpdating GraphStatus = "UPDATING" GraphStatusSnapshotting GraphStatus = "SNAPSHOTTING" GraphStatusFailed GraphStatus = "FAILED" + GraphStatusImporting GraphStatus = "IMPORTING" ) // Values returns all known values for GraphStatus. Note that this can be expanded @@ -79,6 +80,7 @@ func (GraphStatus) Values() []GraphStatus { "UPDATING", "SNAPSHOTTING", "FAILED", + "IMPORTING", } } diff --git a/service/oam/endpoints.go b/service/oam/endpoints.go index 30fe58d11e9..ec4c7561136 100644 --- a/service/oam/endpoints.go +++ b/service/oam/endpoints.go @@ -373,7 +373,7 @@ func (r *resolver) ResolveEndpoint( } } if _UseFIPS == true { - if true == _PartitionResult.SupportsFIPS { + if _PartitionResult.SupportsFIPS == true { uriString := func() string { var out strings.Builder out.WriteString("https://oam-fips.") diff --git a/service/oam/types/enums.go b/service/oam/types/enums.go index cf144a0d8b0..d1a8aa8edaf 100644 --- a/service/oam/types/enums.go +++ b/service/oam/types/enums.go @@ -10,6 +10,7 @@ const ( ResourceTypeAwsLogsLoggroup ResourceType = "AWS::Logs::LogGroup" ResourceTypeAwsXrayTrace ResourceType = "AWS::XRay::Trace" ResourceTypeAwsApplicationinsightsApplication ResourceType = "AWS::ApplicationInsights::Application" + ResourceTypeAwsInternetmonitorMonitor ResourceType = "AWS::InternetMonitor::Monitor" ) // Values returns all known values for ResourceType. Note that this can be @@ -21,5 +22,6 @@ func (ResourceType) Values() []ResourceType { "AWS::Logs::LogGroup", "AWS::XRay::Trace", "AWS::ApplicationInsights::Application", + "AWS::InternetMonitor::Monitor", } } diff --git a/service/quicksight/api_op_DescribeIpRestriction.go b/service/quicksight/api_op_DescribeIpRestriction.go index d50f1c06e15..1e994bdb7c8 100644 --- a/service/quicksight/api_op_DescribeIpRestriction.go +++ b/service/quicksight/api_op_DescribeIpRestriction.go @@ -53,6 +53,12 @@ type DescribeIpRestrictionOutput struct { // The HTTP status of the request. Status int32 + // A map of allowed VPC endpoint IDs and their rule descriptions. + VpcEndpointIdRestrictionRuleMap map[string]string + + // A map of allowed VPC IDs and their rule descriptions. + VpcIdRestrictionRuleMap map[string]string + // Metadata pertaining to the operation's result. ResultMetadata middleware.Metadata diff --git a/service/quicksight/api_op_GenerateEmbedUrlForAnonymousUser.go b/service/quicksight/api_op_GenerateEmbedUrlForAnonymousUser.go index 6e41ec76c63..345d4085b30 100644 --- a/service/quicksight/api_op_GenerateEmbedUrlForAnonymousUser.go +++ b/service/quicksight/api_op_GenerateEmbedUrlForAnonymousUser.go @@ -49,8 +49,10 @@ type GenerateEmbedUrlForAnonymousUserInput struct { // The Amazon Resource Names (ARNs) for the Amazon QuickSight resources that the // user is authorized to access during the lifetime of the session. If you choose // Dashboard embedding experience, pass the list of dashboard ARNs in the account - // that you want the user to be able to view. Currently, you can pass up to 25 - // dashboard ARNs in each API call. + // that you want the user to be able to view. If you want to make changes to the + // theme of your embedded content, pass a list of theme ARNs that the anonymous + // users need access to. Currently, you can pass up to 25 theme ARNs in each API + // call. // // This member is required. AuthorizedResourceArns []string diff --git a/service/quicksight/api_op_UpdateIpRestriction.go b/service/quicksight/api_op_UpdateIpRestriction.go index 66bb507eb30..95f3718c113 100644 --- a/service/quicksight/api_op_UpdateIpRestriction.go +++ b/service/quicksight/api_op_UpdateIpRestriction.go @@ -10,9 +10,11 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Updates the content and status of IP rules. To use this operation, you must -// provide the entire map of rules. You can use the DescribeIpRestriction -// operation to get the current rule map. +// Updates the content and status of IP rules. Traffic from a source is allowed +// when the source satisfies either the IpRestrictionRule , VpcIdRestrictionRule , +// or VpcEndpointIdRestrictionRule . To use this operation, you must provide the +// entire map of rules. You can use the DescribeIpRestriction operation to get the +// current rule map. func (c *Client) UpdateIpRestriction(ctx context.Context, params *UpdateIpRestrictionInput, optFns ...func(*Options)) (*UpdateIpRestrictionOutput, error) { if params == nil { params = &UpdateIpRestrictionInput{} @@ -41,6 +43,14 @@ type UpdateIpRestrictionInput struct { // A map that describes the updated IP rules with CIDR ranges and descriptions. IpRestrictionRuleMap map[string]string + // A map of allowed VPC endpoint IDs and their corresponding rule descriptions. + VpcEndpointIdRestrictionRuleMap map[string]string + + // A map of VPC IDs and their corresponding rules. When you configure this + // parameter, traffic from all VPC endpoints that are present in the specified VPC + // is allowed. + VpcIdRestrictionRuleMap map[string]string + noSmithyDocumentSerde } diff --git a/service/quicksight/deserializers.go b/service/quicksight/deserializers.go index ba73e29fc29..2d0bb7a5a92 100644 --- a/service/quicksight/deserializers.go +++ b/service/quicksight/deserializers.go @@ -15241,6 +15241,16 @@ func awsRestjson1_deserializeOpDocumentDescribeIpRestrictionOutput(v **DescribeI sv.RequestId = ptr.String(jtv) } + case "VpcEndpointIdRestrictionRuleMap": + if err := awsRestjson1_deserializeDocumentVpcEndpointIdRestrictionRuleMap(&sv.VpcEndpointIdRestrictionRuleMap, value); err != nil { + return err + } + + case "VpcIdRestrictionRuleMap": + if err := awsRestjson1_deserializeDocumentVpcIdRestrictionRuleMap(&sv.VpcIdRestrictionRuleMap, value); err != nil { + return err + } + default: _, _ = key, value @@ -84838,6 +84848,78 @@ func awsRestjson1_deserializeDocumentVPCConnectionSummaryList(v *[]types.VPCConn return nil } +func awsRestjson1_deserializeDocumentVpcEndpointIdRestrictionRuleMap(v *map[string]string, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var mv map[string]string + if *v == nil { + mv = map[string]string{} + } else { + mv = *v + } + + for key, value := range shape { + var parsedVal string + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected VpcEndpointIdRestrictionRuleDescription to be of type string, got %T instead", value) + } + parsedVal = jtv + } + mv[key] = parsedVal + + } + *v = mv + return nil +} + +func awsRestjson1_deserializeDocumentVpcIdRestrictionRuleMap(v *map[string]string, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var mv map[string]string + if *v == nil { + mv = map[string]string{} + } else { + mv = *v + } + + for key, value := range shape { + var parsedVal string + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected VpcIdRestrictionRuleDescription to be of type string, got %T instead", value) + } + parsedVal = jtv + } + mv[key] = parsedVal + + } + *v = mv + return nil +} + func awsRestjson1_deserializeDocumentWaterfallChartAggregatedFieldWells(v **types.WaterfallChartAggregatedFieldWells, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) diff --git a/service/quicksight/serializers.go b/service/quicksight/serializers.go index 9d512f96f18..fd323de85e2 100644 --- a/service/quicksight/serializers.go +++ b/service/quicksight/serializers.go @@ -14306,6 +14306,20 @@ func awsRestjson1_serializeOpDocumentUpdateIpRestrictionInput(v *UpdateIpRestric } } + if v.VpcEndpointIdRestrictionRuleMap != nil { + ok := object.Key("VpcEndpointIdRestrictionRuleMap") + if err := awsRestjson1_serializeDocumentVpcEndpointIdRestrictionRuleMap(v.VpcEndpointIdRestrictionRuleMap, ok); err != nil { + return err + } + } + + if v.VpcIdRestrictionRuleMap != nil { + ok := object.Key("VpcIdRestrictionRuleMap") + if err := awsRestjson1_serializeDocumentVpcIdRestrictionRuleMap(v.VpcIdRestrictionRuleMap, ok); err != nil { + return err + } + } + return nil } @@ -36908,6 +36922,28 @@ func awsRestjson1_serializeDocumentVpcConnectionProperties(v *types.VpcConnectio return nil } +func awsRestjson1_serializeDocumentVpcEndpointIdRestrictionRuleMap(v map[string]string, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + for key := range v { + om := object.Key(key) + om.String(v[key]) + } + return nil +} + +func awsRestjson1_serializeDocumentVpcIdRestrictionRuleMap(v map[string]string, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + for key := range v { + om := object.Key(key) + om.String(v[key]) + } + return nil +} + func awsRestjson1_serializeDocumentWaterfallChartAggregatedFieldWells(v *types.WaterfallChartAggregatedFieldWells, value smithyjson.Value) error { object := value.Object() defer object.Close() diff --git a/service/quicksight/types/types.go b/service/quicksight/types/types.go index f069763c479..2fdb6cfc78d 100644 --- a/service/quicksight/types/types.go +++ b/service/quicksight/types/types.go @@ -3917,7 +3917,8 @@ type DatasetMetadata struct { noSmithyDocumentSerde } -// A dataset parameter. +// A parameter that is created in a dataset. The parameter can be a string, +// integer, decimal, or datetime data type. type DatasetParameter struct { // A date time parameter that is created in the dataset.